一种笔画擦除方法、装置、可读存储介质及电子设备制造方法及图纸

技术编号:30706870 阅读:19 留言:0更新日期:2021-11-06 09:54
本发明专利技术公开了一种笔画擦除方法、装置、可读存储介质及电子设备,其中方法包括以下步骤:获取笔画轨迹和擦除轨迹,根据笔画轨迹确定的笔画区域和擦除轨迹确定的擦除区域确定待擦除笔画;利用映射表将待擦除笔画分成若干个待擦除笔画集合,映射表的键为待擦除笔画轨迹点的哈希值,映射表的值为与键对应的待擦除笔画集合;依次遍历映射表的键,判断擦除轨迹与当前键对应的待擦除笔画集合是否相交,若相交,将当前键对应的待擦除笔画集合中的所有笔画标记为相交笔画;移除所有的相交笔画。本发明专利技术在待擦除笔画叠加较多的情况下,能极大地减少计算量,显著提升笔画擦除速度,能避免卡顿与无响应现象,优化了用户体验。优化了用户体验。优化了用户体验。

【技术实现步骤摘要】
一种笔画擦除方法、装置、可读存储介质及电子设备


[0001]本专利技术涉及计算机绘制
,尤其是涉及一种笔画擦除方法、装置、可读存储介质及电子设备。

技术介绍

[0002]随着计算机技术的快速发展,人们在工作和生活中已广泛使用电子白板等各种智能书写设备,人们可以方便地在智能书写设备上书写各种笔画,以及对笔画进行擦除。
[0003]对智能书写设备进行笔画擦除时,需要判断笔画轨迹与擦除轨迹是否相交。由于钢笔、毛笔、圆珠笔、铅笔、马克笔包含的点比较多,现有方案在擦除利用钢笔、毛笔、圆珠笔、铅笔、马克笔绘制的笔画时,通常是将每一个笔画轨迹的所有点与擦除轨迹的所有点进行比对,从而判断笔画轨迹与擦除轨迹是否相交,笔画擦除耗费的时间较长。
[0004]尤其在笔画叠加较多的情况下,现有技术仍然要将每个笔画轨迹的所有点与擦除轨迹的所有点进行对比,存在大量重复计算和对比,笔画擦除耗费时间较长,擦除过程中卡顿现象明显,用户体验不佳。

技术实现思路

[0005]本专利技术的目的是提供一种笔画擦除方法、装置、可读存储介质及及电子设备,以解决现有技术中笔画擦除耗费时间较长、卡顿现象明显的技术问题。
[0006]本专利技术的目的,可以通过如下技术方案实现:一种笔画擦除方法,包括以下步骤:获取笔画轨迹和擦除轨迹,根据所述笔画轨迹确定的笔画区域和所述擦除轨迹确定的擦除区域确定待擦除笔画;利用映射表将所述待擦除笔画分成若干个待擦除笔画集合,所述映射表的键为待擦除笔画轨迹点的哈希值,所述映射表的值为与键对应的待擦除笔画集合;依次遍历所述映射表的键,判断所述擦除轨迹与当前键对应的待擦除笔画集合是否相交,若相交,将当前键对应的待擦除笔画集合中的所有笔画标记为相交笔画;移除所有的所述相交笔画。
[0007]可选地,判断所述擦除轨迹与当前键对应的待擦除笔画集合是否相交包括:获取擦除轨迹上的点并计算擦除轨迹点的哈希值,当所述擦除轨迹点的哈希值等于当前键或者所述擦除轨迹点与当前键对应矩形块中点的距离不大于预设阈值时,则所述擦除轨迹与当前键对应的待擦除笔画集合相交;否则,重复执行获取擦除轨迹上的点并计算擦除轨迹点的哈希值的步骤直至最后一个擦除轨迹点,若最后一个擦除轨迹点的哈希值不等于当前键而且最后一个擦除轨迹点与当前键对应矩形块中点的距离大于预设阈值,则所述擦除轨迹与当前键对应的待擦除笔画集合不相交。
[0008]可选地,所述待擦除笔画轨迹点的哈希值为:
hash=floor(floor(x/blockSize1) * maxXY + y/blockSize2);其中,hash为待擦除笔画轨迹点的哈希值,floor为向下取整函数,x、y分别为待擦除笔画轨迹点的横坐标和纵坐标,blockSize1、blockSize2分别为每块矩形画布的宽和高,maxXY为画布宽高的最大值。
[0009]可选地,所述当前键对应矩形块中点为:x7=x5 + floor(blockSize1/2),y7=y5 + floor(blockSize2/2);其中,x7、y7分别为当前键对应块中点的横坐标和纵坐标, x5、y5分别为当前键对应矩形块的左上点的横坐标和纵坐标,x5=(floor(hashCode/maxXY))*blockSize1,y5=(hashCode mod maxXY)*blockSize2,blockSize1、blockSize2分别为每块矩形画布的宽和高,hashCode为当前键,floor为向下取整函数,mod为取余数,maxXY为画布宽高的最大值。
[0010]本专利技术还提供了一种笔画擦除装置,包括:待擦除笔画确定模块,用于根据所述笔画轨迹确定的笔画区域和所述擦除轨迹确定的擦除区域确定待擦除笔画;待擦除笔画分组模块,用于利用映射表将所述待擦除笔画分成若干个待擦除笔画集合,所述映射表的键为待擦除笔画轨迹点的哈希值,所述映射表的值为与键对应的待擦除笔画集合;相交笔画确定模块,用于依次遍历所述映射表的键,判断所述擦除轨迹与当前键对应的待擦除笔画集合是否相交,若相交,将当前键对应的待擦除笔画集合中的所有笔画标记为相交笔画;相交笔画移除模块,用于移除所有的所述相交笔画。
[0011]可选地,所述相交笔画确定模块判断所述擦除轨迹与当前键对应的待擦除笔画集合是否相交的过程,包括:获取擦除轨迹上的点并计算擦除轨迹点的哈希值,当所述擦除轨迹点的哈希值等于当前键或者所述擦除轨迹点与当前键对应矩形块中点的距离不大于预设阈值时,则所述擦除轨迹与当前键对应的待擦除笔画集合相交;否则,重复执行获取擦除轨迹上的点并计算擦除轨迹点的哈希值的步骤直至最后一个擦除轨迹点,若最后一个擦除轨迹点的哈希值不等于当前键而且最后一个擦除轨迹点与当前键对应矩形块中点的距离大于预设阈值,则所述擦除轨迹与当前键对应的待擦除笔画集合不相交。
[0012]可选地,所述待擦除笔画轨迹点的哈希值为:hash=floor(floor(x/blockSize1) * maxXY + y/blockSize2);其中,hash为待擦除笔画轨迹点的哈希值,floor为向下取整函数,x、y分别为待擦除笔画轨迹点的横坐标和纵坐标,blockSize1、blockSize2分别为每块矩形画布的宽和高,maxXY为画布宽高的最大值。
[0013]可选地,所述当前键对应矩形块中点为:x7=x5 + floor(blockSize1/2),y7=y5 + floor(blockSize2/2);
其中,x7、y7分别为当前键对应块中点的横坐标和纵坐标, x5、y5分别为当前键对应矩形块的左上点的横坐标和纵坐标,x5=(floor(hashCode/maxXY))*blockSize1,y5=(hashCode mod maxXY)*blockSize2,blockSize1、blockSize2分别为每块矩形画布的宽和高,hashCode为当前键,floor为向下取整函数,mod为取余数,maxXY为画布宽高的最大值。
[0014]本专利技术还提供了一种可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现所述的笔画擦除方法。
[0015]本专利技术还提供了一种电子设备,包括处理器及存储器;所述存储器用于存储计算机程序;所述处理器用于执行所述计算机程序实现所述的笔画擦除方法。
[0016]本专利技术提供了一种笔画擦除方法、装置、可读存储介质及电子设备,其中方法包括以下步骤:获取笔画轨迹和擦除轨迹,根据所述笔画轨迹确定的笔画区域和所述擦除轨迹确定的擦除区域确定待擦除笔画;利用映射表将所述待擦除笔画分成若干个待擦除笔画集合,所述映射表的键为待擦除笔画轨迹点的哈希值,所述映射表的值为与键对应的待擦除笔画集合;依次遍历所述映射表的键,判断所述擦除轨迹与当前键对应的待擦除笔画集合是否相交,若相交,将当前键对应的待擦除笔画集合中的所有笔画标记为相交笔画;移除所有的所述相交笔画。
[0017]基于上述方案,本专利技术带来的有益效果是:本专利技术根据笔画区域和擦除区域本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种笔画擦除方法,其特征在于,包括以下步骤:获取笔画轨迹和擦除轨迹,根据所述笔画轨迹确定的笔画区域和所述擦除轨迹确定的擦除区域确定待擦除笔画;利用映射表将所述待擦除笔画分成若干个待擦除笔画集合,所述映射表的键为待擦除笔画轨迹点的哈希值,所述映射表的值为与键对应的待擦除笔画集合;依次遍历所述映射表的键,判断所述擦除轨迹与当前键对应的待擦除笔画集合是否相交,若相交,将当前键对应的待擦除笔画集合中的所有笔画标记为相交笔画;移除所有的所述相交笔画。2.根据权利要求1所述的笔画擦除方法,其特征在于,判断所述擦除轨迹与当前键对应的待擦除笔画集合是否相交包括:获取擦除轨迹上的点并计算擦除轨迹点的哈希值,当所述擦除轨迹点的哈希值等于当前键或者所述擦除轨迹点与当前键对应矩形块中点的距离不大于预设阈值时,则所述擦除轨迹与当前键对应的待擦除笔画集合相交;否则,重复执行获取擦除轨迹上的点并计算擦除轨迹点的哈希值的步骤直至最后一个擦除轨迹点,若最后一个擦除轨迹点的哈希值不等于当前键而且最后一个擦除轨迹点与当前键对应矩形块中点的距离大于预设阈值,则所述擦除轨迹与当前键对应的待擦除笔画集合不相交。3.根据权利要求1或2所述的笔画擦除方法,其特征在于,所述待擦除笔画轨迹点的哈希值为:hash=floor(floor(x/blockSize1) * maxXY + y/blockSize2);其中,hash为待擦除笔画轨迹点的哈希值,floor为向下取整函数,x、y分别为待擦除笔画轨迹点的横坐标和纵坐标,blockSize1、blockSize2分别为每块矩形画布的宽和高,maxXY为画布宽高的最大值。4.根据权利要求2所述的笔画擦除方法,其特征在于,所述当前键对应矩形块中点为:x7=x5 + floor(blockSize1/2),y7=y5 + floor(blockSize2/2);其中,x7、y7分别为当前键对应块中点的横坐标和纵坐标, x5、y5分别为当前键对应矩形块的左上点的横坐标和纵坐标,x5=(floor(hashCode/maxXY))*blockSize1,y5=(hashCode mod maxXY)*blockSize2,blockSize1、blockSize2分别为每块矩形画布的宽和高,hashCode为当前键,floor为向下取整函数,mod为取余数,maxXY为画布宽高的最大值。5.一种笔画擦除装置,其特征在于,包括:待擦除笔画确定模块,用于获取笔画轨迹和擦除轨迹,根据所述笔画轨迹确定的笔画区域和所述擦除轨迹确定的擦除区域确定待擦除笔画;待擦除笔画分组模块,用于利用映射表将所述待擦除笔画分成若干个待擦除笔画集合,所述...

【专利技术属性】
技术研发人员:廖林涛朱增
申请(专利权)人:广州文石信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1