CN112698773B - 一种基于显示屏幕的轨迹生成方法及其相关组件 - Google Patents
一种基于显示屏幕的轨迹生成方法及其相关组件 Download PDFInfo
- Publication number
- CN112698773B CN112698773B CN202011590258.3A CN202011590258A CN112698773B CN 112698773 B CN112698773 B CN 112698773B CN 202011590258 A CN202011590258 A CN 202011590258A CN 112698773 B CN112698773 B CN 112698773B
- Authority
- CN
- China
- Prior art keywords
- points
- array set
- track
- point
- rectangle
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于显示屏幕的轨迹生成方法及其相关组件,其中,该方法包括:获取在显示屏幕中输入的所有初始点的坐标,在相邻初始点之间插入补点,将所有点按坐标顺序保存至第一数组集合中后依次连接所有点,以生成轨迹;将第一数组集合中的初始点映射为矩形,保存至第二数组集合中;循环遍历第一数组集合以及第二数组集合,获取擦除点坐标,将擦除点坐标加上预设数值,获取擦除点的新坐标并代替第一数组集合中对应的原坐标;利用第一数组集合中的点生成新的轨迹,显示于显示屏幕中。本发明在插入补点生成轨迹后,再对轨迹中的擦除点进行擦除,然后再进行重绘生成新的轨迹,重绘的轨迹相较原来的轨迹更加平滑自然,且更加接近原对象。
Description
技术领域
本发明涉及图像绘制技术领域,尤其涉及一种基于显示屏幕的轨迹生成方法及其相关组件。
背景技术
在现有轨迹绘制方法中,一般是通过收集用户输入的所有点,然后再相邻点之间插入补点,再按照点的坐标顺序进行连接,生成轨迹。这种方法无法对轨迹上多余的点进行擦除,只能将所有点进行连接,导致生成的轨迹不够平滑自然,这种绘制轨迹的方法相对简单、不够灵活。
发明内容
本发明实施例提供了一种基于显示屏幕的轨迹生成方法及其相关组件,旨在解决现有技术中生成轨迹后因未删除多余点而导致轨迹不够平滑自然的问题。
第一方面,本发明实施例提供了一种基于显示屏幕的轨迹生成方法,其包括:
获取在显示屏幕中输入的所有初始点的坐标,基于平滑插点算法在相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,并依次连接所述第一数组集合中的所有点,以生成轨迹;
通过预设的映射方式,将所述第一数组集合中的初始点映射为矩形,并保存至第二数组集合中;
循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标,并将所述擦除点坐标加上预设数值,获取所述擦除点的新坐标,并将所述擦除点的新坐标代替所述第一数组集合中对应的原坐标;
利用所述第一数组集合中的点生成新的轨迹,并显示于所述显示屏幕中。
第二方面,本发明实施例提供了一种基于显示屏幕的轨迹生成系统,其包括:
初始轨迹生成单元,用于获取在显示屏幕中输入的所有初始点的坐标,基于平滑插点算法在相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,并依次连接所述第一数组集合中的所有点,以生成轨迹;
矩形映射单元,用于通过预设的映射方式,将所述第一数组集合中的初始点映射为矩形,并保存至第二数组集合中;
擦除单元,用于循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标,并将所述擦除点坐标加上预设数值,获取所述擦除点的新坐标,并将所述擦除点的新坐标代替所述第一数组集合中对应的原坐标;
轨迹显示单元,用于利用所述第一数组集合中的点生成新的轨迹,并显示于所述显示屏幕中。
第三方面,本发明实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的基于显示屏幕的轨迹生成方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的基于显示屏幕的轨迹生成方法。
本发明实施例提供了一种基于显示屏幕的轨迹生成方法及其相关组件。该方法包括获取在显示屏幕中输入的所有初始点的坐标,基于平滑插点算法在相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,并依次连接所述第一数组集合中的所有点,以生成轨迹;通过预设的映射方式,将所述第一数组集合中的初始点映射为矩形,并保存至第二数组集合中;循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标,并将所述擦除点坐标加上预设数值,获取所述擦除点的新坐标,并将所述擦除点的新坐标代替所述第一数组集合中对应的原坐标;利用所述第一数组集合中的点生成新的轨迹,并显示于所述显示屏幕中。本发明实施例在插入补点生成轨迹后,再对轨迹中的擦除点进行擦除,然后再进行重绘生成新的轨迹,重绘的轨迹相较原来的轨迹更加平滑自然,且更加接近原对象,提高了用户的体验感。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于显示屏幕的轨迹生成方法的流程示意图;
图2为本发明实施例提供的基于显示屏幕的轨迹生成系统的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1为本发明实施例提供的一种基于显示屏幕的轨迹生成方法的流程示意图,该方法包括步骤S101~S104。
S101、获取在显示屏幕中输入的所有初始点的坐标,基于平滑插点算法在相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,并依次连接所述第一数组集合中的所有点,以生成轨迹;
在本步骤中,首先获取显示屏幕中输入的所有初始点坐标,然后在所述初始点之间插入对应数量的补点,将所述初始点和补点按顺序保存至第一数组集合后,按顺序进行点与点之间的连接,生成一条轨迹,也即滑动轨迹或书写轨迹。所述轨迹可以是曲线轨迹,也可以是折线轨迹。所述显示屏幕可以是触摸显示屏或白板一体机,当用户在所述显示屏幕上输入初始点后,获取触摸显示屏上所有的初始点,并对初始点之间插入补点。
在一实施例中,所述步骤S101包括:
获取显示屏幕中输入的所有初始点的坐标,并通过轨迹算法获取相邻初始点的轨迹距离;
基于平滑插点算法在所述轨迹距离大于预设阈值的相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中;
提取所述第一数组集合中位于第一位的点作为起点,依次连接所述第一数组集合中的所有点,以生成轨迹。
在本实施例中,在插入补点之前,先通过轨迹算法计算相邻初始点之间的轨迹距离,若所述轨迹距离大于预设阈值,则说明需要插入补点,通过平滑插点算法在所述相邻初始点之间插入补点,然后再将所有的初始点和补点按顺序保存至第一数组集合,依次连接所述第一数组集合内的点,生成轨迹。
在相邻初始点中,设第一个点为起点,第二个点为终点,所述起点坐标为(x0,y0),所述终点坐标为(x2,y2),所述起点与终点之间的中点坐标为(x1,y1),其中,x1=(x0+x2)/2,y1=(y0+y2)/2。通过sqrt函数计算所述起点与终点之间的轨迹距离S,计算公式为S=((2*Sqrt[A]*(2*A*t*Sqrt[C+t*(B+A*t)]+B*(-Sqrt[C]+Sqrt[C+t*(B+A*t)]))+(B^2-4*A*C)(Log[B+2*Sqrt[A]*Sqrt[C]]-Log[B+2*A*t+2Sqrt[A]*Sqrt[C+t*(B+A*t)]]))/(8*A^(3/2)))。其中,A=4*(ax*ax+ay*ay),B=4*(ax*bx+ay*by),C=bx*bx+by*by;ax=x0-2*x1+x2,ay=y0-2*y1+y2,bx=2*(x1-x0),by=2*(y1-y0);t是百分比长度,即两点的轨迹总长的百分比,这里为两点的长度,所以t=1。将A、B、C三个变量代入计算公式中,即可获得所述相邻点(即所述起点和终点)之间的轨迹距离。
在一具体实施例,所述基于平滑插点算法在所述轨迹距离大于预设阈值的相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中包括:
获取所述阈值与所述轨迹距离的比值,判断所述比值是否大于1;
若所述比值小于1,则基于贝塞尔轨迹算法在所述相邻初始点之间插入补点,并将所述初始点以及补点按坐标位置保存至第一数组集合中;
若所述比值大于1,则直接将所述初始点按坐标位置保存至第一数组集合中。
在本实施例中,在插入补点时,需要先获取所述阈值与所述轨迹距离的比值,若比值小于1,则需要插入补点,若比值大于1,则说明不需要插入补点。例如,如step=basedistance/distance,basedistance是预先设置好的大小(即阈值),这个数值可根据需求进行设定,这里将其设置为3,distance是相邻的两个初始点的轨迹距离,若basedistance小于distance,算出来step就是小于1,则基于贝塞尔轨迹算法每隔一个step添加一个补点。由于用户在显示屏幕中输入点的速度过快,点在显示屏幕中过于稀疏,因此轨迹不够圆滑,容易出现折角。通过所述平滑插点算法计算两相邻初始点之间的轨迹距离,若轨迹距离大于阈值,即表明需要插入补点,基于贝塞尔平滑算法进行插入,使整个轨迹更加平滑自然。
S102、通过预设的映射方式,将所述第一数组集合中的初始点映射为矩形,并保存至第二数组集合中;
在本步骤中,每个初始点都对应映射有一矩形,所有映射出的矩形都被保存至第二数组集合内。通过预设的映射方式,每个初始点都会映射为一个固定大小的矩形,具体的映射方法是通过当前的点的点坐标通过预设的矩形的宽和高获取矩形在显示屏幕中的位置,并计算出矩形的左、右、上、下的大小,以生成矩形。
在一实施例中,所述步骤S102包括:
获取预先设置的矩形的宽和高;
将所述第一数组集合中的初始点的坐标作为矩形中心点坐标,并结合矩形的宽和高计算矩形的上边框与显示屏幕上边框的距离、矩形的下边框与显示屏幕下边框的距离、矩形的左边框与显示屏幕左边框的距离、矩形的右边框与显示屏幕右边框的距离,以生成初始点对应的矩形,并保存至第二数组集合中。
在本实施例中,预先获取矩形的宽和高,以当前的点为矩形的中心点,根据矩形的宽和高,计算矩形的各边框与显示屏幕对应边的距离,以获得矩形在显示屏幕中的位置。
S103、循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标,并将所述擦除点坐标加上预设数值,获取所述擦除点的新坐标,并将所述擦除点的新坐标代替所述第一数组集合中对应的原坐标;
在本步骤中,通过循环遍历所述第一数组集合以及第二数组集合获得擦除点坐标,然后将擦除点坐标加上预设数值,获得擦除点的新坐标,并将新坐标代替所述擦除点在所述第一数组集合中的原坐标。所述预设数值大于所述显示屏幕的像素最大值,将所述擦除点的X轴坐标添加所述预设数值,即获得该点的新坐标。
所述擦除点的获取方法为:首先获取显示屏幕的尺寸,然后根据显示屏幕的像素点总数量,计算出单个像素点在屏幕的面积大小,以此将像素点转换为像素点多边形,然后通过滤波获取所述像素点多边形的边框,对所述像素点多边形的边框进行模糊处理,模糊处理的目的是让每个像素点的边缘屏更加平滑过度,让像素点更加的拟合圆滑。这里需要注意,位于轨迹边缘的像素点外边缘区域不需要进行模糊处理,只对轨迹内部的像素点边缘区域进行模糊处理。将第一数组集合中的坐标点按照上面的规则把坐标点转换成为坐标点多边形,并获取第二数组集合中的矩形与所述坐标点多边形的重叠面积。当所述矩形与所述坐标点多边形的重叠面积达到预设值(一般设置为25%)时,则对所述坐标点多边形对应的坐标点进行标记,该坐标点即为擦除点,并将擦除点坐标加上预设数值。所述擦除点的获取方法可以灵活的找出需要进行擦除的坐标点,让擦除更加的准确,增加了擦除操作的灵敏度。
在一实施例中,所述循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标包括:
根据所述第二数组集合中矩形的排列顺序,依次比对所述第一数组集合中的点是否位于非映射的矩形范围内;
若所述第一数组集合中的点位于非映射的矩形范围内,则将对应的点作为擦除点。
在本实施例中,根据比对所述第一数组集合中的点是否位于非映射的矩形矩形范围,判断该点是否为擦除点。遍历的过程是:首先获取所述第二数组集合中的第一个映射矩形,依次对比所述第一数组集合中的点,判断除了映射点之外,是否具有其他点位于该矩形范围内,若有其他点,则将该点作为擦除点,并剔除该点对应的矩形,并按照顺序提取下一个矩形进行筛选。
S104、利用所述第一数组集合中的点生成新的轨迹,并显示于所述显示屏幕中。
在本步骤中,在进行点坐标替换后,将替换后的所述第一数组集合中点依次连接,生成新的轨迹,并显示于所述显示屏幕中。这里所说的第一数组集合的点可以是初始点,也可以是初始点和补点相结合。
在一实施例中,所述步骤S104包括:
将所述轨迹的擦除点擦除,生成多条轨迹线段;
计算所述轨迹线段中的起点和终点在所述第一数组集合中的位置,并根据所述轨迹线段的起点和终点在所述第一数组集合中的位置,获取所述轨迹线段中点的数量,并判断所述数量是否小于2个;
若所述轨迹线段中点的数量小于2个,则判定无法生成轨迹,删除所述轨迹线段,并对应删除所述轨迹线段在所述所述第一数组集合中的所有点。
在本实施例中,先对所述轨迹中的擦除点进行擦除,生成多条轨迹线段,再计算所述轨迹线段中起点和终点的位置,以此获取所述轨迹线段中点的数量,若所述轨迹线段中点的数量小于2个,则判定无法生成轨迹,将该轨迹线段删除,并在所述第一数组集合中删除对应的点。例如:一条轨迹被擦除成几条轨迹线段,如果擦除的不是这条轨迹的起点,则第一条轨迹线段的起点就是原先坐标数组当中的第一个点,然后终点是所述第一数组集合中第一个擦除点的坐标的上一个点的坐标,知道了第一条轨迹线段的起点位置跟终点位置,就知道第一条轨迹线段的坐标点数,就可以从原坐标数组中取出第一条轨迹线段的所有坐标点了。第二条轨迹线段的起点是所述第一数组集合中第一个擦除点的坐标的下一个点的坐标,最后一个点是下一个擦除点的坐标的上一个坐标点,以此类推就可以分割出多条轨迹线段;如果分割出来的轨迹线段坐标点点数小于2,则不构成生成轨迹的条件,直接清除掉,不生成轨迹。通过本实施例所述方法对点进行擦除后,可对剩余轨迹进行其他操作,如:圈选、缩放、移动、删除、复制、撤销等,相比传统擦除方式,本实施例所采用的对点的檫除方法,可扩展性更强。
在一具体实施例中,所述若所述轨迹线段中点的数量小于2个,则判定无法生成轨迹,删除所述轨迹线段,并对应删除所述轨迹线段在所述所述第一数组集合中的所有点之后,包括:
按照所述第一数组集合中的点的排列顺序,将各所述轨迹线段连线,以生成新的轨迹,并显示于所述显示屏幕中。
在本实施例中,在将不满足生成轨迹的轨迹线段删除后,将剩余轨迹线段按照所述第一数组集合中的点的排列顺序,连接成新的轨迹。在将不满足生成轨迹的轨迹线段对应的点进行删除后,所述第一数组集合中除了剩余轨迹线段的点之外,还有具有新坐标的擦除点,将所述第一数组集合中剩余的点依次连接,即可获得新的轨迹。
请参阅图2,图2为本发明实施例提供的一种基于显示屏幕的轨迹生成系统的示意性框图,该基于显示屏幕的轨迹生成系统200包括:
初始轨迹生成单元201,用于获取在显示屏幕中输入的所有初始点的坐标,基于平滑插点算法在相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,并依次连接所述第一数组集合中的所有点,以生成轨迹;
矩形映射单元202,用于通过预设的映射方式,将所述第一数组集合中的初始点映射为矩形,并保存至第二数组集合中;
擦除单元203,用于循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标,并将所述擦除点坐标加上预设数值,获取所述擦除点的新坐标,并将所述擦除点的新坐标代替所述第一数组集合中对应的原坐标;
轨迹显示单元204,用于利用所述第一数组集合中的点生成新的轨迹,并显示于所述显示屏幕中。
在一实施例中,所述初始轨迹生成单元201包括:
初始轨迹距离获取单元,用于获取显示屏幕中输入的所有初始点的坐标,并通过轨迹算法获取相邻初始点的轨迹距离;
补点插入单元,用于基于平滑插点算法在所述轨迹距离大于预设阈值的相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中;
点连接单元,用于提取所述第一数组集合中位于第一位的点作为起点,依次连接所述第一数组集合中的所有点,以生成轨迹。
在一实施例中,所述补点插入单元包括:
比值判断单元,用于获取所述阈值与所述轨迹距离的比值,判断所述比值是否大于1;
初始点及补点坐标保存单元,用于若所述比值小于1,则基于贝塞尔轨迹算法在所述相邻初始点之间插入补点,并将所述初始点以及补点按坐标位置保存至第一数组集合中;
初始点坐标保存单元,用于若所述比值大于1,则直接将所述初始点按坐标位置保存至第一数组集合中。
在一实施例中,所述矩形映射单元202包括:
矩形高宽获取单元,用于获取预先设置的矩形的宽和高;
矩形生成单元,用于将所述第一数组集合中的初始点的坐标作为矩形中心点坐标,并结合矩形的宽和高计算矩形的上边框与显示屏幕上边框的距离、矩形的下边框与显示屏幕下边框的距离、矩形的左边框与显示屏幕左边框的距离、矩形的右边框与显示屏幕右边框的距离,以生成初始点对应的矩形,并保存至第二数组集合中。
在一实施例中,所述擦除单元203单元包括:
矩形范围比对单元,用于根据所述第二数组集合中矩形的排列顺序,依次比对所述第一数组集合中的点是否位于非映射的矩形范围内;
擦除点确认单元,用于若所述第一数组集合中的点位于非映射的矩形范围内,则将对应的点作为擦除点。
在一实施例中,所述轨迹显示单元204包括:
轨迹线段生成单元,用于将所述轨迹的擦除点擦除,生成多条轨迹线段;
轨迹线段点数量计算单元,用于计算所述轨迹线段中的起点和终点在所述第一数组集合中的位置,并根据所述轨迹线段的起点和终点在所述第一数组集合中的位置,获取所述轨迹线段中点的数量,并判断所述数量是否小于2个;
轨迹线段删除单元,用于若所述轨迹线段中点的数量小于2个,则判定无法生成轨迹,删除所述轨迹线段,并对应删除所述轨迹线段在所述所述第一数组集合中的所有点。
在一实施例中,所述轨迹显示单元204还包括:
轨迹线段连接单元,用于按照所述第一数组集合中的点的排列顺序,将各所述轨迹线段连线,以生成新的轨迹,并显示于所述显示屏幕中。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述的基于显示屏幕的轨迹生成方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的基于显示屏幕的轨迹生成方法。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (8)
1.一种基于显示屏幕的轨迹生成方法,其特征在于,包括:
获取在显示屏幕中输入的所有初始点的坐标,基于平滑插点算法在相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,并依次连接所述第一数组集合中的所有点,以生成轨迹;
通过预设的映射方式,将所述第一数组集合中的初始点映射为矩形,并保存至第二数组集合中;
循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标,并将所述擦除点坐标加上预设数值,获取所述擦除点的新坐标,并将所述擦除点的新坐标代替所述第一数组集合中对应的原坐标;
利用所述第一数组集合中的点生成新的轨迹,并显示于所述显示屏幕中;
所述通过预设的映射方式,将所述第一数组集合中的初始点映射为矩形,并保存至第二数组集合中,包括:
获取预先设置的矩形的宽和高;
将所述第一数组集合中的初始点的坐标作为矩形中心点坐标,并结合矩形的宽和高计算矩形的上边框与显示屏幕上边框的距离、矩形的下边框与显示屏幕下边框的距离、矩形的左边框与显示屏幕左边框的距离、矩形的右边框与显示屏幕右边框的距离,以生成初始点对应的矩形,并保存至第二数组集合中;
所述循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标,包括:
根据所述第二数组集合中矩形的排列顺序,依次比对所述第一数组集合中的点是否位于非映射的矩形范围内;
若所述第一数组集合中的点位于非映射的矩形范围内,则将对应的点作为擦除点。
2.根据权利要求1所述的基于显示屏幕的轨迹生成方法,其特征在于,所述获取在显示屏幕中输入的所有初始点的坐标,基于平滑插点算法在相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,并依次连接所述第一数组集合中的所有点,以生成轨迹,包括:
获取显示屏幕中输入的所有初始点的坐标,并通过轨迹算法获取相邻初始点的轨迹距离;
基于平滑插点算法在所述轨迹距离大于预设阈值的相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中;
提取所述第一数组集合中位于第一位的点作为起点,依次连接所述第一数组集合中的所有点,以生成轨迹。
3.根据权利要求2所述的基于显示屏幕的轨迹生成方法,其特征在于,所述基于平滑插点算法在所述轨迹距离大于预设阈值的相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,包括:
获取所述阈值与所述轨迹距离的比值,判断所述比值是否大于1;
若所述比值小于1,则基于贝塞尔轨迹算法在所述相邻初始点之间插入补点,并将所述初始点以及补点按坐标位置保存至第一数组集合中;
若所述比值大于1,则直接将所述初始点按坐标位置保存至第一数组集合中。
4.根据权利要求1所述的基于显示屏幕的轨迹生成方法,其特征在于,所述利用所述第一数组集合中的点生成新的轨迹,并显示于所述显示屏幕中,包括:
将所述轨迹的擦除点擦除,生成多条轨迹线段;
计算所述轨迹线段中的起点和终点在所述第一数组集合中的位置,并根据所述轨迹线段的起点和终点在所述第一数组集合中的位置,获取所述轨迹线段中点的数量,并判断所述数量是否小于2个;
若所述轨迹线段中点的数量小于2个,则判定无法生成轨迹,删除所述轨迹线段,并对应删除所述轨迹线段在所述所述第一数组集合中的所有点。
5.根据权利要求4所述的基于显示屏幕的轨迹生成方法,其特征在于,所述若所述轨迹线段中点的数量小于2个,则判定无法生成轨迹,删除所述轨迹线段,并对应删除所述轨迹线段在所述所述第一数组集合中的所有点之后,包括:
按照所述第一数组集合中的点的排列顺序,将各所述轨迹线段连线,以生成新的轨迹,并显示于所述显示屏幕中。
6.一种基于显示屏幕的轨迹生成系统,其特征在于,包括:
初始轨迹生成单元,用于获取在显示屏幕中输入的所有初始点的坐标,基于平滑插点算法在相邻初始点之间插入补点,并将所述初始点以及补点按坐标顺序保存至第一数组集合中,并依次连接所述第一数组集合中的所有点,以生成轨迹;
矩形映射单元,用于通过预设的映射方式,将所述第一数组集合中的初始点映射为矩形,并保存至第二数组集合中;
擦除单元,用于循环遍历所述第一数组集合以及第二数组集合,获取被所述第二数组集合中的矩形擦除的擦除点坐标,并将所述擦除点坐标加上预设数值,获取所述擦除点的新坐标,并将所述擦除点的新坐标代替所述第一数组集合中对应的原坐标;
轨迹显示单元,用于利用所述第一数组集合中的点生成新的轨迹,并显示于所述显示屏幕中;
所述矩形映射单元包括:
矩形高宽获取单元,用于获取预先设置的矩形的宽和高;
矩形生成单元,用于将所述第一数组集合中的初始点的坐标作为矩形中心点坐标,并结合矩形的宽和高计算矩形的上边框与显示屏幕上边框的距离、矩形的下边框与显示屏幕下边框的距离、矩形的左边框与显示屏幕左边框的距离、矩形的右边框与显示屏幕右边框的距离,以生成初始点对应的矩形,并保存至第二数组集合中;
所述擦除单元包括:
矩形范围比对单元,用于根据所述第二数组集合中矩形的排列顺序,依次比对所述第一数组集合中的点是否位于非映射的矩形范围内;
擦除点确认单元,用于若所述第一数组集合中的点位于非映射的矩形范围内,则将对应的点作为擦除点。
7.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的基于显示屏幕的轨迹生成方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1至5任一项所述的基于显示屏幕的轨迹生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011590258.3A CN112698773B (zh) | 2020-12-29 | 2020-12-29 | 一种基于显示屏幕的轨迹生成方法及其相关组件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011590258.3A CN112698773B (zh) | 2020-12-29 | 2020-12-29 | 一种基于显示屏幕的轨迹生成方法及其相关组件 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112698773A CN112698773A (zh) | 2021-04-23 |
CN112698773B true CN112698773B (zh) | 2022-05-06 |
Family
ID=75511439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011590258.3A Active CN112698773B (zh) | 2020-12-29 | 2020-12-29 | 一种基于显示屏幕的轨迹生成方法及其相关组件 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112698773B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106029A (zh) * | 2013-01-18 | 2013-05-15 | 程抒一 | 触摸屏擦除手势识别系统 |
CN106569692A (zh) * | 2016-10-26 | 2017-04-19 | 青岛海信电器股份有限公司 | 手势擦除方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521858B (zh) * | 2011-11-28 | 2014-04-02 | 北京盛世宣合信息科技有限公司 | 电子毛笔书写笔迹生成方法 |
CN105718122B (zh) * | 2014-12-01 | 2018-08-21 | 鸿合科技股份有限公司 | 一种用于电容白板的轨迹平滑方法及其装置 |
CN106648391B (zh) * | 2016-12-20 | 2019-12-10 | 广州视源电子科技股份有限公司 | 笔迹同步的方法、装置及系统 |
CN107219941B (zh) * | 2017-05-23 | 2020-02-07 | 中国科学院自动化研究所 | 软笔实时轨迹生成方法、存储介质、处理设备 |
-
2020
- 2020-12-29 CN CN202011590258.3A patent/CN112698773B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106029A (zh) * | 2013-01-18 | 2013-05-15 | 程抒一 | 触摸屏擦除手势识别系统 |
CN106569692A (zh) * | 2016-10-26 | 2017-04-19 | 青岛海信电器股份有限公司 | 手势擦除方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112698773A (zh) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100585631C (zh) | 图形绘制设备 | |
US9207858B2 (en) | Method and apparatus for drawing and erasing calligraphic ink objects on a display surface | |
US6437799B1 (en) | Method and apparatus for logical zooming of a directed graph | |
CN106919333B (zh) | 电子书写板上书写内容的记录方法和装置 | |
CN105511792A (zh) | 一种表单在位手写输入方法及系统 | |
JP2019512118A (ja) | 2つのタイプのインクベクトルデータを生成して選択的に出力する方法及びシステム | |
JP3574202B2 (ja) | 図形入出力装置 | |
CN113094770B (zh) | 图纸生成方法、装置、计算机设备和存储介质 | |
CN110390260A (zh) | 图片扫描件处理方法、装置、计算机设备及存储介质 | |
US20070195095A1 (en) | Applying effects to a merged text path | |
CN109086336A (zh) | 试卷数据存储方法、装置及电子设备 | |
CN112329548A (zh) | 一种文档章节分割方法、装置及存储介质 | |
CN112698773B (zh) | 一种基于显示屏幕的轨迹生成方法及其相关组件 | |
CN112035035B (zh) | 一种可擦除顶层局部区域笔画的橡皮擦实现方法及系统 | |
US6806878B2 (en) | Graphic editing apparatus for adding or deleting curve to/from graphics by interactive processing | |
CN105741287A (zh) | 牙齿三维网格数据的分割方法及装置 | |
CN112241411B (zh) | 基于cad基础元素的电子表格结构化识别与提取方法 | |
JP2009193308A (ja) | 情報表示装置及びプログラム | |
CN114860108A (zh) | 基于云桌面的书写轨迹的处理方法、装置及电子设备 | |
EP2715492A2 (en) | Identifying contacts and contact attributes in touch sensor data using spatial and temporal features | |
CN117908752A (zh) | 笔迹绘制方法、装置、电子设备及存储介质 | |
KR102677200B1 (ko) | 터치-기반 사용자 인터페이스 입력에서의 제스처 스트로크 인식 | |
CN116092095B (zh) | 原笔迹手写笔锋的生成方法 | |
JP2002196878A (ja) | 記録媒体、画像処理装置および方法 | |
JPH09258716A (ja) | ストローク情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |