展开全部
【C语言的用MoveTo()和LineTo()】
#include
#include
/*
###############################################################################
功
能:62616964757a686964616fe78988e69d8331333431346432本函数的作用是用逐点比较法来画一条直线
格
式:void
myline1(int
x1,int
y1,int
x2,int
y2,int
color)
参数说明:x1,y1是起始点坐标,x2,y2是终止点,color是画线的颜色
调用示例:myline1(10,20,500,440,4)
###############################################################################
*/
void
myline1(int
x1,int
y1,int
x2,int
y2,int
color)
{
/*变量定义开始(2007/10/16增加)*/
int
iTx;
/*x轴终点的相对坐标xa或临时变量*/
int
iTy;
/*y轴终点的相对坐标ya或临时变量*/
int
iDx;
/*x轴方向的步长dx*/
int
iDy;
/*y轴方向的步长dy*/
int
iFt;
/*偏差Fm*/
int
iSt;
/*记数循环数(dx+dy)S*/
int
iXt;
/*x方向循环变量xm*/
int
iYt;
/*y方向循环变量ym*/
/*变量定义结束*/
/*变量初始化开始*/
/*如果是第三象限或第四象限则换成第一或第二象限*/
if(y2
{
iTx=x1;
x1=x2;
x2=iTx;
iTy=y1;
y1=y2;
y2=iTy;
}
iTx=x2-x1;
/*取x轴的相对坐标*/
iTy=y2-y1;
/*取y轴的相对坐标*/
iDx=1;
iDy=1;
iFt=0;
iSt=iTx+iTy;
if(iTx<0)iSt=-1*iTx+iTy;;