下面是已经调试通过的触摸屏坐标变换算法(触摸屏校准)。
这个算法逻辑简单,容易理解。运算也简单。
大道至简,简单好。
/*
Touch(X,Y) ==> LCD(X,Y)
第一步:
A、B、C、D是在LCD上绘制的4个点
+A B+
+C D+
A、B、C、D在LCD上的坐标:
LCD: W*H
A:(W/4, 3H/4)
B:(3W/4, 3H/4)
C:(W/4, H/4)
D:(3W/4, H/4)
第二步:
取得A、B、C、D四个点的触摸屏坐标(XA,YA).....后计算
触摸屏中心点坐标(x0,y0):
Touch center(x0,y0);
X0=(XA+XB+XC+XD)/4
Y0=(YA+YB+YC+YD)/4
第三步:
最后将任意触摸屏坐标Xt,Yt变换为LCD坐标:
Xlcd=(XT-X0)*W/(XB-XA+XD-XC)+W/2
Ylcd=(YT-Y0)*H/(YA-YC+YB-YD)+H/2
*/