/******************************************************
* 函数名:Palette_draw_point
* 描述 :在LCD指定位置画一个大点(包含四个小点)
* 输入 : Xpos --X方向位置
Ypos --Y方向位置
* 输出 :无
* 举例 :Palette_draw_point(100,100);
* 注意 :该函数是 "触摸画板应用实例" 专用函数
*********************************************************/
void Palette_draw_point(uint16_t Xpos,uint16_t Ypos)
{
static u16 Pen_color=0;
u16 Tmp_xpos = 240-Xpos;
if(Ypos<40)
{
if(Tmp_xpos>30)
Pen_color =(Tmp_xpos<60)?GREENTmp_xpos<90)?BLUETmp_xpos<120)?BREDTmp_xpos<150)?GREDTmp_xpos<180)?GBLUETmp_xpos<210)?BLACKTmp_xpos<240)?RED:BLUE;
else
{
LCD_Rectangle(40,0,280,240,WHITE);
return;
}
}
else
{
LCD_ColorPoint(Ypos,240-Xpos,Pen_color);
LCD_ColorPoint(Ypos+1,240-Xpos,Pen_color);
LCD_ColorPoint(Ypos,(240-Xpos)+1,Pen_color);
LCD_ColorPoint(Ypos+1,(240-Xpos)+1,Pen_color);
}
}
该函数是画板程序触摸后在获取的坐标上画点。
请问:xpos和ypos不就是通过触摸函数获得的坐标吗?为什么还需要240-Xpos ,这是什么意思 。分辨率不是应该320(x)*240(y)么?有点搞混了
我自己写了个检测触摸按键的程序,就是直接判断xpos跟ypos作用范围没有按上述 240-xpos 结果跟预想的完全不一样
真心求助大神 |
|