OpenGL绘制直线和圆(中点法)

  • Post author:
  • Post category:其他


#include <gl/glut.h>
#include <math.h>

static  int i=1;

void Initial(void)
{
		glClearColor(1.0f, 1.0f, 1.0f, 1.0f);      //设置窗口背景颜色为白色
		glMatrixMode(GL_PROJECTION);    //指定设置投影参数
		gluOrtho2D(-200.0,200.0,-200.0,200.0); //设置投影参数  //指的是视图范围,如果(0,200,0,200)的话就只能在第一象限显示,就1/4圆,第1,3的参数是左下角坐标,第2,4的参数是右上角坐标
}
/*void Display(void)
{
		glClear(GL_COLOR_BUFFER_BIT);   //用当前背景色填充窗口
		glColor3f(1.0f, 0.0f, 0.0f);            //设置当前的绘图颜色为红色
		glRectf(50.0f, 100.0f, 150.0f, 50.0f);    //绘制一个矩形
             glFlush();                         //处理所有的OpenGL程序
}
*/

void DDALine(int x0,int y0,int x1,int y1)
{
	//glVertex2f(10,10);
	int dx,dy,epsl,k;
	float x,y,xIncre,yIncre;
	dx = x1 - x0;
	dy = y1 - y0;
	x = x0;
	y = y0;

	if(abs(dx)>abs(dy))
		epsl=abs(dx);
	else
		epsl=abs(dy);

	xIncre=(float)dx/(float)epsl;
	yIncre=(float)dy/(float)epsl;
	glPointSize(2);
	glBegin(GL_POINTS



版权声明:本文为cjx798280904原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。