[发明专利]一种触摸屏触摸区域定位方法有效
申请号: | 201410236907.8 | 申请日: | 2014-05-30 |
公开(公告)号: | CN103984449B | 公开(公告)日: | 2019-01-18 |
发明(设计)人: | 王迪;李金鹏;齐洋 | 申请(专利权)人: | 湖州佳格电子科技股份有限公司 |
主分类号: | G06F3/042 | 分类号: | G06F3/042 |
代理公司: | 湖州金卫知识产权代理事务所(普通合伙) 33232 | 代理人: | 裴金华 |
地址: | 313000 浙江省*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 触摸屏 触摸 区域 定位 方法 | ||
1.一种触摸屏触摸区域定位方法,其特征在于,包括以下步骤:
(1)检测所有光路,得出所有被挡住的光路,
(2)将被挡住的光路转化为多边形数据,即确定每个红外发射元件及红外接收元件的座标,从而确定被挡住光路的顶点的坐标,
(3)假定同角度光路的集合为一层光路层;将一层光路层中的多边形与另一层光路层中的多边形相交,得到一组新的多边形,再将该组新多边形与再另一层光路层中的多边形相交,以再次得到新的多边形;如此重复至完成所有光路层的多边形相交,从而得到最后一组多边形,该最后组多边形至少包括一个多边形单体,并记录该组多边形数据,该组多边形数据由所有多边形单体数据组成;
其中,所述步骤(1)与步骤(2)之间还具有如下步骤:以一个红外发射元件至一个红外接收元件所形成的光路为单元光路,步骤(1)所得到光路,即是所有被挡住的单元光路,将所有被挡住的单元光路进行检测,若在同一层光路层存在相邻的单元光路,则将这些相邻单元光路进行合并,从而形成一组光路组,所述步骤(2)具体为:将被挡住的单元光路和/或光路组转化为多边形数据,即确定每个红外发射元件及红外接收元件的座标,从而确定被挡住光路的顶点的坐标,所述步骤(3)之后还包括筛选真触摸区域的步骤,该步骤包括:a、对经步骤(3)得到的最后组多边形中的所有多边形单体进行检测,判定由最多层光路层相交得到的多边形单体为真触摸发生区域;若多边形单体由小于m层的光路层相交得到,则判定该多边形单体为假触摸发生区域;m小于光路层总层数;b、若最后组多边形中的多边形单体由大于等于m层且小于总光路层层数的光路层相交得到,则检测经过该多边形单体的所有被挡住的光路,若存在经过该多边形单体但不经过已判定为真触摸发生区域的多边形单体的光路,则判定该多边形单体为真触摸发生区域,若不存在,则判定为假触摸发生区域,每个红外发射元件所确定的光路起点的光宽应相等于每个红外接收元件所确定的光路终点的光宽,假定每个红外发射元件所确定的光路起点的光宽为单位光宽;依据触摸屏分辨率,确定单位光宽为n;从而建立一个坐标XY系,使每个红外发射元件及红外接收元件都由两个坐标限定,所述两个任意多边形相交得到一个新的多边形的逻辑算法是基于直线相交得到交点的逻辑算法,所述直线相交得到交点的逻辑算法为:
设直线 A(x1,y1)(x2,y2) 直线B(x3,y3)(x4,y4)
int nDx1=x2-x1;
int nDy1=y2-y1;
int nDx2=x4-x3;
int nDy2=y4-y3;
int nB1=nDy1*x1-nDx1*y1;
int nB2=nDy2*x3-nDx2*y3;
int nD=nDx1*nDy2-nDx2*nDy1;
float fBD1=(float)nB1/nD;
float fBD2=(float)nB2/nD;
nB1=(int)(fBD2*nDx1);
nB2=(int)(fBD1*nDx2);
x=(_signed_short)(nB1-nB2);
nB1=(int)(fBD2*nDy1);
nB2=(int)(fBD1*nDy2);
y=(_signed_short)(nB1-nB2);
直线A与直线B的交点为(x,y),其中,所述多边形数据仅包括多边形顶点数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖州佳格电子科技股份有限公司,未经湖州佳格电子科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410236907.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种大型水轮机调速器主接反馈传感器检校工具
- 下一篇:高精度深海深度探测装置