Bresenham 算法 画直线(VC++)

void DrawLine(int x0,int y0,int x1,int y1,int color)
			{
                int x,y,yStep,t;
				double d,k;
				bool step;
				step=fabs(y1-y0)-fabs(x1-x0)?true:false;
				if(step)
				{
					t=x0;x0=y0;y0=t;
					t=x1;x1=y1;y1=t;
				}
				if(x0>x1)
				{
					t=x0;x0=x1;x1=t;
					t=y0;y0=y1;y1=t;
				}
				if(y0SetPixel(y,x,color);
					else
					pDC->SetPixel(x,y,color);
		 		 	if(d<0)
		  			{
			  			y+=yStep;
			  			d+=1;
		  			}
				}
			}

你可能感兴趣的:(计算机图形学)