新手入门
- 积分
- 11
- 金钱
- 11
- 注册时间
- 2021-2-18
- 在线时间
- 2 小时
|
2金钱
由于需要显示两条不同颜色的曲线或线段,我改了一下原子哥的代码, LCD_DrawLine(); //画线
本来里面是有个画点函数LCD_DrawPoint()的,我替换成了这个(为了显示颜色)LCD_Fast_DrawPoint()
void LCD_DrawLine(u16 x1, u16 y1, u16 x2, u16 y2)
{
u16 t;
******u16 color;********!!!!!!!这个没有给它赋值
int xerr=0,yerr=0,delta_x,delta_y,distance;
int incx,incy,uRow,uCol;
delta_x=x2-x1; //计算坐标增量
delta_y=y2-y1;
uRow=x1;
uCol=y1;
if(delta_x>0)incx=1; //设置单步方向
else if(delta_x==0)incx=0;//垂直线
else {incx=-1;delta_x=-delta_x;}
if(delta_y>0)incy=1;
else if(delta_y==0)incy=0;//水平线
else{incy=-1;delta_y=-delta_y;}
if( delta_x>delta_y)distance=delta_x; //选取基本增量坐标轴
else distance=delta_y;
for(t=0;t<=distance+1;t++ )//画线输出
{
***************** LCD_Fast_DrawPoint(uRow,uCol,color); //快速画点 颜色//***********!!!!!这里
xerr+=delta_x ;
yerr+=delta_y ;
if(xerr>distance)
{
xerr-=distance;
uRow+=incx;
}
if(yerr>distance)
{
yerr-=distance;
uCol+=incy;
}
}
}
然后居然显示了不同颜色的曲线,直接给我整懵了,显示出这样(我已经把图片传上去了)求各位大哥带带弟弟,大一的娃快要被老师逼疯了。
|
-
就是这两种颜色的
|