CN106127685A - 线条快速擦除方法及其*** - Google Patents
线条快速擦除方法及其*** Download PDFInfo
- Publication number
- CN106127685A CN106127685A CN201610494561.0A CN201610494561A CN106127685A CN 106127685 A CN106127685 A CN 106127685A CN 201610494561 A CN201610494561 A CN 201610494561A CN 106127685 A CN106127685 A CN 106127685A
- Authority
- CN
- China
- Prior art keywords
- erasing
- lines
- tracing point
- colour
- point
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 77
- 238000004088 simulation Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 description 10
- 239000003973 paint Substances 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 3
- 238000010422 painting Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000010621 bar drawing Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供线条快速擦除方法及其***,方法包括:获取绘图轨迹点;依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;获取初始绘图界面的背景色;获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;若判断结果为不一致,则结束遍历;获取包含色值改变的所述擦除轨迹点的绘图线条,移除所获取的绘图线条。
Description
技术领域
本发明涉及数据分析处理领域,具体说的是线条快速擦除方法及其***。
背景技术
现有线条擦除是通过设置画笔为背景色,通过覆盖原始线条来达到清除已绘线条的目的,这样的话,如果用户需要擦除整条线条,并且数目较多时,操作上会显得非常麻烦,用户体验差。
授权公告号为CN 1109291 C的中国专利申请,公开了一种数据处理装置及其方法,具体公开了通过笔触及触屏表面来输入绘图,在绘图模式中,在绘图输入期间,绘制的每一条线都被输入并以不同的颜色显示。然后,在擦除模式中,在为将擦除的线条指定颜色后,用笔处理将被擦除的线。该方案将被擦除的线被显示的与不被擦除的线相重叠,也能只擦除将被擦除的线。但是其主要实体通过在绘制每条线段的时候就选定特定的颜色,而在擦除过程中选定待擦除线段的颜色后,实现对对指定颜色的擦除。因此,其绘制过程以及擦除过程都较为复杂,并不能实现线段的快速、准确擦除。
发明内容
本发明所要解决的技术问题是:提供一种能够实现快速、准确地擦除与擦除线条存在交集的绘图线条的方法及***。
为了解决上述技术问题,本发明采用的技术方案为:
线条快速擦除方法,包括:
获取绘图轨迹点;依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;
获取初始绘图界面的背景色;
获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;
获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;
依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;
若判断结果为不一致,则结束遍历;
获取包含色值改变的所述擦除轨迹点的绘图线条,移除所获取的绘图线条。
本发明提供的另一个技术方案为:
线条快速擦除***,包括:
第一获取模块,用于获取绘图轨迹点;
第二获取模块,用于依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;
第三获取模块,用于获取初始绘图界面的背景色;
第四获取模块,用于获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;
第五获取模块,用于获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;
判断模块,用于依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;
结束模块,用于若判断结果为不一致,则结束遍历;
移除模块,用于获取包含色值改变的所述擦除轨迹点的绘图线条,移除所获取的绘图线条。
本发明的有益效果在于:区别于现有技术的绘图线条擦除方法存在擦除操作麻烦、擦除不精细、用户体验差的不足,本发明提供一种线条快速擦除的方法,通过判断擦除轨迹点对应初始绘图界面背景色的色值是否改变,从而确定擦除轨迹点是否落入绘图线条,即擦除线条与绘图线条是否存在交集,通过移除该绘图线条,实现快速、准确的擦除绘图线条;不再需要对绘图轨迹点集合与擦除轨迹点集合进行大量位置点的比较,从而显著提高擦除效率,提升用户体验。
附图说明
图1为本发明一种线条快速擦除方法的流程示意图;
图2为本发明实施例二和实施例三的流程示意图;
图3为本发明实施例三中细化擦除轨迹点过程的示意图;
图4为本发明一种线条快速擦除***的结构示意图;
图5为本发明实施例四的结构示意图;
图6为本发明实施例四中第五获取模块的结构示意图;
图7为本发明实施例四中第一获取模块的结构示意图。
标号说明:
1、第一获取模块;2、第二获取模块;3、第三获取模块;
4、第四获取模块;5、第五获取模块;6、判断模块;7、结束模块;
8、移除模块;9、计算模块;10、添加模块;
11、预设单元;12、获取单元;51、色值获取单元;52、关联单元。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
本发明最关键的构思在于:通过判断擦除轨迹点对应初始绘图界面背景色的色值是否发生改变,确定擦除轨迹点是否与绘图线条存在交集,移除与之交集的整条绘图线条。
请参照图1,本发明提供线条快速擦除方法,包括:
获取绘图轨迹点;依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;
获取初始绘图界面的背景色;
获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;
获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;
依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;
若判断结果为不一致,则结束遍历;
获取包含色值改变的所述擦除轨迹点的绘图线条,移除所获取的绘图线条。
从上述描述可知,本发明的有益效果在于:通过上述方案,可以快速、准确的擦除整个绘图线条,不需要使用擦除笔定位并精细的点击到具体的绘图线条,才能对擦除笔点击覆盖到的绘图轨迹点进行清除。本方案只需擦除笔生成的擦除轨迹点和绘图线条有交集,便能擦除该绘图线条。本方案提供的线条擦除方法直接在线条绘制过程中巧妙的进行逻辑处理,不需要进行萧条集合和擦除轨迹大量位置点的比较,不仅操作简单、易用性高;而且能够显著提高擦除效率;进一步的,还能提升用户体验。
请参阅图3,进一步的,所述获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组,之后,进一步包括:
对擦除轨迹点数组中相邻的每两个擦除轨迹点,依据直线公式模拟计算出遗漏的擦除轨迹点;
添加遗漏的擦除轨迹点至所述擦除轨迹点数组相应的位置。
由上述描述可知,通过监听鼠标事件生成的擦除轨迹点,而当鼠标滑动过快时,***并不会记录每个鼠标滑动的位置点;因此,我们通过对获取的擦除轨迹进行细化重构,填补漏掉的位置点,确保构成擦除线条的擦除轨迹点的完整性,从而提高线条擦除的准确度。
进一步的,所述获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值,具体为:
获取所述擦除轨迹点数组内各个擦除轨迹点对应的初始绘图界面背景色的色值;
在所述擦除轨迹点数组中建立擦除轨迹点和对应初始绘图界面背景色的色值的关联关系。
由上述描述可知,通过建立各个擦除轨迹点关于坐标和对应初始绘图界面背景色的色值的一一对应关联关系,能够在色值变化判断过程以及对应绘图线条获取过程实现判断值的快速调用,从而提高擦除效率。
进一步的,所述关联关系以哈希表形式存储。
由上述描述可知,擦除轨迹点的相关信息以哈希表形式存储,能够在调用时根据关键码值实现快速、准确的调用,进一步的提高擦除效率。
进一步的,所述获取绘图轨迹点;依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组,具体为:
预设绘图过程的数据更新周期;
依据所述数据更新周期,获取最新绘制的绘图轨迹点;
依据所述最新绘制的绘图轨迹点和先前依据所述数据更新周期获取的历史绘图轨迹点,获取绘图线条及其对应的绘图轨迹点数组。
由上述描述可知,***内部,在绘图过程,依据数据更新周期不断刷新获取最新绘制的绘图轨迹点,当下一个数据更新周期到来,之前获取到的绘图轨迹点将作为历史绘图轨迹点,并在下一个数据更新周期之后,将最新获取到的绘图轨迹点与历史绘图轨迹点合并,获取对应至少一条绘图线条的绘图轨迹点数组。
进一步的,所述移除所获取的绘图线条,具体为:
在下一个数据更新周期,移除所述绘图线条对应的绘图轨迹点数组。
由上述描述可知,***同时监听轨迹点绘制事件和鼠标事件;当依据监听的事件获取到擦除线条,并确定出与之交集的绘图线条后;由于绘图线条将在每一个数据更新周期重新绘制显示,因此,可以通过直接移除所确定出的绘图线条对应的绘图轨迹点数组,便可实现在当前绘图界面上删除对应绘图线条。
请参阅图4,本发明提供的另一个技术方案为:
线条快速擦除***,包括:
第一获取模块,用于获取绘图轨迹点;
第二获取模块,用于依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;
第三获取模块,用于获取初始绘图界面的背景色;
第四获取模块,用于获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;
第五获取模块,用于获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;
判断模块,用于依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;
结束模块,用于若判断结果为不一致,则结束遍历;
移除模块,用于获取包含色值改变的所述擦除轨迹点的绘图线条,移除所获取的绘图线条。
进一步的,还包括:
计算模块,用于对擦除轨迹点数组中相邻的每两个擦除轨迹点,依据直线公式模拟计算出遗漏的擦除轨迹点;
添加模块,用于添加遗漏的擦除轨迹点至所述擦除轨迹点数组相应的位置。
进一步的,所述第一获取模块包括:
预设单元,用于预设绘图过程的数据更新周期;
第三获取单元,用于依据所述数据更新周期,获取最新绘制的绘图轨迹点;
第二获取模块具体用于依据所述最新绘制的绘图轨迹点和先前依据所述数据更新周期获取的历史绘图轨迹点,获取绘图线条及其对应的绘图轨迹点数组。
进一步的,所述移除模块,具体用于依据所述擦除轨迹点的坐标,获取包含所述擦除轨迹点的绘图线条,在下一个数据更新周期,移除所述绘图线条对应的绘图轨迹点数组。
实施例一
本实施例提供一种线条快速擦除方法,可以包括以下内容:
获取绘图轨迹点;依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;
具体的,绘图轨迹点的获取方式可以包括:预设绘图过程的数据更新周期;依据所述数据更新周期,获取最新绘制的绘图轨迹点;依据所述最新绘制的绘图轨迹点和先前依据所述数据更新周期获取的历史绘图轨迹点,获取绘图线条及其对应的绘图轨迹点数组。
获取初始绘图界面的背景色;
获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;
获取所述擦除轨迹点数组内各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;在所述擦除轨迹点数组中建立擦除轨迹点和对应初始绘图界面背景色的色值的关联关系;优选的,所述关联关系以哈希表形式存储。
具体的,还包括细化擦除轨迹点数组内轨迹点的过程:
获取擦除过程中擦除线条对应的擦除轨迹点数组;
对擦除轨迹点数组中相邻的每两个擦除轨迹点,依据直线公式模拟计算出遗漏的擦除轨迹点;
添加遗漏的擦除轨迹点至所述擦除轨迹点数组相应的位置;
获取添加后的擦除轨迹点数组内各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值。
然后,依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;
若判断结果为不一致,则结束遍历;
获取包含色值发生变化的所述擦除轨迹点的绘图线条,在下一个数据更新周期,移除所述绘图线条对应的绘图轨迹点数组,实现移除整条绘图线条。
实施例二
请参阅图2,本实施例提供一种线条快速擦除方法,可以基于window***或者移动端(android、ios等)实现,具体可以包括以下:
创建一个用于绘制的窗口(以下简称Panel),注册窗口过程,同时监听绘制事件和鼠标事件。对于操作者,通过鼠标操作来实现绘图线条的绘制以及擦除线条的绘制;对于***内部,通过监听鼠标事件来确定所绘制的线条的位置,通过监听绘制事件,依据鼠标事件获取对应的轨迹点,并绘制显示出来。
一、具体的,鼠标事件的监听过程如下:
根据Panel接收到的不同的鼠标消息进行逻辑处理(由于都是用到鼠标事件获取相关数据,Panel可以通过用户输入操作判断是擦除还是绘制线条);
1)绘图过程中绘图线条数据的收集
A、当监听到鼠标事件为左键按下时,触发WM_LBUTTONDOWN消息(相当于笔放到纸上,开始本次线条绘画);新建绘图线条L1,将鼠标在屏幕上的位置(x1,y1),即绘图轨迹点的坐标,存储到绘图线条L1中。
B、当监听到鼠标事件为鼠标移动时,触发WM_MOUSEMOVE消息(相当于笔移动),将鼠标移动过程中获取到的鼠标位置(x2,y2),(x3,y3)...(xn,yn),按先后顺序依次存储到绘图线条L1中,获取对应绘图线条L1的绘图轨迹点数组,发送绘制消息WM_PAINT给Panel,在消息处理函数里处理绘图功能。
C、当监听到鼠标事件为左键抬起时,触发WM_LBUTTONUP消息(相当于笔抬起,结束本次线条绘画),将包含对应的绘图轨迹点组数的绘图线条L1存储到绘图线条数组LC(L1,L2,…Ln);
2)擦除过程中擦除轨迹数据的收集
A、当监听到鼠标事件为左键按下时,触发WM_LBUTTONDOWN消息,新建擦除轨迹点数组EL,存放鼠标在屏幕上的位置(x1,y1),即擦除轨迹点的坐标;
B、当监听到鼠标事件为鼠标移动时,触发WM_MOUSEMOVE消息,将鼠标移动过程获取的鼠标位置(x2,y2),(x3,y3)...(xn,yn),按先后顺序依次存储到擦除轨迹点数组EL。
C、当监听到鼠标事件为左键抬起时,触发WM_LBUTTONUP鼠标消息,发送绘制消息WM_PAINT给Panel,在消息处理函数里处理擦除功能。
二、具体的,绘制事件的监听过程如下:
通过在消息处理函数里处理绘制消息WM_PAIN,包括进行绘图线条的绘制过程以及擦除轨迹点数组的处理过程,以及依据擦除轨迹数组EL的线条快速擦除过程。绘图线条的绘制为现有技术,在此不细述,重点说明擦除轨迹点数组的处理过程以及依据擦除轨迹数组EL的线条快速擦除过程。
绘制事件和鼠标事件是同步进行,同时监听的过程。在***内部,收到WM_PAINT消息后,就会调用到相关联的绘制过程,这样线条绘制过程在WM_MOUSEMOVE的时候就可以不断的刷新来获取依据鼠标事件最新生成的轨迹点,并依据最新获取到的轨迹点更新对应线条的绘制;因此,本方案线条绘制过程中包括了判断是否发生线条擦除事件,以及移除擦除线条对应绘图线条的过程。
具体的,1)擦除轨迹数组EL的处理过程包括:
在绘制绘图线条之前,赋值重绘变量BF为假,判断擦除轨迹数组EL内是否有数据,若有,遍历擦除轨迹数组EL;若否,则执行2)绘图线条的绘制过程;
所述遍历擦除轨迹数组EL,执行下述步骤:
A、依次从擦除轨迹数组EL取擦除轨迹点(xn,yn),获取该擦除轨迹点在Panel中,绘图线条绘制前的颜色值cn,即该擦除轨迹点对应Panel初始绘图界面背景色的颜色值cn,Panel初始绘图界面的背景色可能是纯色,也可能是两种颜色以上构成的彩色背景;
B、建立(xn,yn)和cn对应关系,优选的,将((xn,yn),cn)存储到哈希表ECM中;
C、重复A-B步骤,遍历擦除轨迹数组EL内所有的擦除轨迹点,得到关联关系表ECM{((x1,y1),c1),((x2,y2),c1)...((xn,yn),cn)}。
2)遍历绘图线条数组LC,进行绘图线条的绘制过程,并在线条绘制过程中实现对指定绘图线条的移除,具体过程可以包括:
A、从绘图线条数组LC取出绘图线条Ln,通过现有技术对该线条进行绘制,如调用DrawLine绘制线条;
B、判断关联关系表ECM内是否有数据;若有,则遍历ECM哈希表,执行当前子步骤C;否则转到当前子步骤D;
C、依次选取ECM哈希表中的擦除轨迹点(xn,yn);获取该擦除轨迹点对应当前绘图界面的色值cn2,即该擦除轨迹点在Panel中此时的颜色值;
比较色值cn2和ECM哈希表中记录的色值cn是否相同,若不等,则结束ECM的遍历,赋值重绘变量BF为真,且从绘图线条数组LC中移除掉当前绘图线条Ln;若相等,则绘制该条绘图线条Ln;
D、重复A-C步骤,直到绘图线条全部绘制完成。
3)绘图线条绘制完成后,清空擦除轨迹点数组EL,判断重绘变量BF是否为真,若为真,调用Invalidate(现有技术,即发送WM_PAINT的消息处理请求)(因为已经清空了EL,等到下次的WM_PAINT消息处理,会直接跳过擦除逻辑);
若为假,则结束本次绘制过程中的擦除逻辑处理。
实施例三
请参照图2和3,本实施例为实施例二基础上的进一步延伸,相同之处不再累述,区别点在于,增加了细化擦除轨迹点数组EL内擦除轨迹点的过程。在鼠标事件监听过程,当鼠标滑动较快时,***并不会记录每个鼠标滑过的位置点,因此无法准确获取所有的擦除轨迹点,如图3中,空心轨迹点为原始鼠标滑过的位置点,原始轨迹点构成的轨迹不完整,所以我们需要对该轨迹进行细化重构,填补漏掉的擦除轨迹点,图3中实心的轨迹点。具体过程可以包括以下步骤:
A、在消息处理函数中处理WM_PAINT消息时,首先判断擦除轨迹点数组EL的数组长度length是否为0;若是,则直接跳转至“遍历绘图线条数组LC,进行绘图线条的绘制过程”;若否,则执行本步骤的子步骤B:细化擦除轨迹点数组EL的过程;
B、遍历擦除轨迹点数组EL,依次获取数组内相邻的两个擦除轨迹点(xn-1,yn-1)和(xn,yn),图3中空心的轨迹点;根据直线公式y=kx+b算出k=(yn–yn1)/(xn–xn1),b=yn–(yn–yn-1)/(xn–xn-1)–xn;
C、判断xn和xn-1的大小,取小值赋值给p,取大值赋值给q;
D、p每次自增d(d值优选为线条宽度,效率较高);当x等于(p1=p1+d,p2=p1+d,p3=p2+d,…pn)限定x<=q;
通过y=kx+b计算出x对应的y值,即rn,将(p1,r1)(p2,r2)…(pn,rn),即实心的轨迹点存储到细化后的擦除轨迹点数组ELF中,其中模拟直线头尾两点(xn,yn)和(xn-1,yn-1)也要存储到数组ELF中,此时数组ELF中包含了点(xn,yn)和点(xn-1,yn-1)以及它们所扩展出来的模拟擦除轨迹点,即{(xn-1,yn-1),(p1,r1),(p2,r2),…(pn,rn),(xn,yn)};
E、重复步骤B,直到xn-1等于xn,即遍历完整个EL数组。
通过上述步骤,所获取到的细化后的擦除轨迹数组ELF更加完整,能够在绘图线条的擦除过程中更加准确的判断出与擦除线条存在交集的绘图线条,从而实现绘图线条的准确、快速移除,进而提高线条擦除的效率。
需要注意的是,本实施例中,由于对擦除轨迹数组EL进行了细化,生成了更加完整的擦除轨迹数组ELF,因此,后续过程中针对擦除轨迹数组EL的步骤,指的都是细化后的擦除轨迹数组ELF。
实施例四
请参阅图4-图7,本实施例基于实施例一到三,提供一种线条快速擦除***,可以包括以下功能模块:
第一获取模块1,用于获取绘图轨迹点;
第二获取模块2,用于依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;
第三获取模块3,用于获取初始绘图界面的背景色;
第四获取模块4,用于获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;
第五获取模块5,用于获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;
判断模块6,用于依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;
结束模块7,用于若判断结果为不一致,则结束遍历;
移除模块8,用于获取包含色值改变的所述擦除轨迹点的绘图线条,移除所获取的绘图线条;
进一步的,请参阅图5,该***还包括:
计算模块9,用于对擦除轨迹点数组中相邻的每两个擦除轨迹点,依据直线公式模拟计算出遗漏的擦除轨迹点;
添加模块10,用于添加遗漏的擦除轨迹点至所述擦除轨迹点数组相应的位置。
具体的,请参阅图7,所述第一获取模块1包括:
预设单元11,用于预设绘图过程的数据更新周期;
获取单元12,用于依据所述数据更新周期,获取最新绘制的绘图轨迹点;
第二获取模块2,具体用于依据所述最新绘制的绘图轨迹点和先前依据所述数据更新周期获取的历史绘图轨迹点,获取绘图线条及其对应的绘图轨迹点数组。
具体的,所述移除模块8,具体用于依据所述擦除轨迹点的坐标,获取包含所述擦除轨迹点的绘图线条,在下一个数据更新周期,移除所述绘图线条对应的绘图轨迹点数组。
具体的,请参阅图6,所述第五获取模块5中,还包括:
色值获取单元51,用于获取所述擦除轨迹点数组内各个擦除轨迹点对应的初始绘图界面背景色的色值;
关联单元52,用于在所述擦除轨迹点数组中建立擦除轨迹点和对应初始绘图界面背景色的色值的关联关系;优选的,所述关联关系以哈希表形式存储。
综上所述,本发明提供的一种线条快速擦除方法及其***,克服了现有技术的线条擦除方法操作麻烦,用户体验差,精确度低的问题;具有易用性高、操作简便,同时又能对特定线段进行快速、准确删除的特点;能够显著提高线条擦除效率,优化用户体验。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.线条快速擦除方法,其特征在于,包括:
获取绘图轨迹点;依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;
获取初始绘图界面的背景色;
获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;
获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;
依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;
若判断结果为不一致,则结束遍历;
获取包含色值改变的所述擦除轨迹点的绘图线条,移除所获取的绘图线条。
2.如权利要求1所述的线条快速擦除方法,其特征在于,所述获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组,之后,进一步包括:
对擦除轨迹点数组中相邻的每两个擦除轨迹点,依据直线公式模拟计算出遗漏的擦除轨迹点;
添加遗漏的擦除轨迹点至所述擦除轨迹点数组相应的位置。
3.如权利要求1所述的线条快速擦除方法,其特征在于,所述获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值,具体为:
获取所述擦除轨迹点数组内各个擦除轨迹点对应的初始绘图界面背景色的色值;
在所述擦除轨迹点数组中建立擦除轨迹点和对应初始绘图界面背景色的色值的关联关系。
4.如权利要求3所述的线条快速擦除方法,其特征在于,所述关联关系以哈希表形式存储。
5.如权利要求1所述的线条快速擦除方法,其特征在于,所述获取绘图轨迹点;依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组,具体为:
预设绘图过程的数据更新周期;
依据所述数据更新周期,获取最新绘制的绘图轨迹点;
依据所述最新绘制的绘图轨迹点和先前依据所述数据更新周期获取的历史绘图轨迹点,获取绘图线条及其对应的绘图轨迹点数组。
6.如权利要求5所述的线条快速擦除方法,其特征在于,所述移除所获取的绘图线条,具体为:
在下一个数据更新周期,移除所述绘图线条对应的绘图轨迹点数组。
7.线条快速擦除***,其特征在于,包括:
第一获取模块,用于获取绘图轨迹点;
第二获取模块,用于依据所述绘图轨迹点获取对应各绘图线条的绘图轨迹点数组;
第三获取模块,用于获取初始绘图界面的背景色;
第四获取模块,用于获取擦除过程中绘制的擦除线条对应的擦除轨迹点数组;
第五获取模块,用于获取擦除轨迹点数组中各个擦除轨迹点对应初始绘图界面背景色的色值以及对应当前绘图界面的色值;
判断模块,用于依据获取顺序遍历擦除轨迹点数组中的擦除轨迹点,判断所述擦除轨迹点对应绘图界面背景色的色值以及对应当前绘图界面的色值是否一致,得到判断结果;
结束模块,用于若判断结果为不一致,则结束遍历;
移除模块,用于获取包含色值改变的所述擦除轨迹点的绘图线条,移除所获取的绘图线条。
8.如权利要求7所述的线条快速擦除***,其特征在于,进一步的,还包括:
计算模块,用于对擦除轨迹点数组中相邻的每两个擦除轨迹点,依据直线公式模拟计算出遗漏的擦除轨迹点;
添加模块,用于添加遗漏的擦除轨迹点至所述擦除轨迹点数组相应的位置。
9.如权利要求7所述的线条快速擦除***,其特征在于,所述第一获取模块包括:
预设单元,用于预设绘图过程的数据更新周期;
获取单元,用于依据所述数据更新周期,获取最新绘制的绘图轨迹点;
第二获取模块具体用于依据所述最新绘制的绘图轨迹点和先前依据所述数据更新周期获取的历史绘图轨迹点,获取绘图线条及其对应的绘图轨迹点数组。
10.如权利要求9所述的线条快速擦除***,其特征在于,所述移除模块,具体用于依据所述擦除轨迹点的坐标,获取包含所述擦除轨迹点的绘图线条,在下一个数据更新周期,移除所述绘图线条对应的绘图轨迹点数组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610494561.0A CN106127685B (zh) | 2016-06-29 | 2016-06-29 | 线条快速擦除方法及其*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610494561.0A CN106127685B (zh) | 2016-06-29 | 2016-06-29 | 线条快速擦除方法及其*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106127685A true CN106127685A (zh) | 2016-11-16 |
CN106127685B CN106127685B (zh) | 2020-02-14 |
Family
ID=57284640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610494561.0A Active CN106127685B (zh) | 2016-06-29 | 2016-06-29 | 线条快速擦除方法及其*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106127685B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193424A (zh) * | 2017-06-27 | 2017-09-22 | 北京北纬天辰科技有限公司 | 一种智能电子式擦除方法及装置 |
CN111429541A (zh) * | 2019-12-31 | 2020-07-17 | 杭州海康威视数字技术股份有限公司 | 一种图形擦除方法及装置 |
CN112181246A (zh) * | 2020-09-18 | 2021-01-05 | 深圳创维数字技术有限公司 | 电子白板擦除方法、装置、设备、计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003196671A (ja) * | 2001-12-28 | 2003-07-11 | Ricoh Co Ltd | 描画像消去方法、その方法によったプログラム、およびそのプログラムを記憶した記憶媒体 |
CN101477694A (zh) * | 2008-12-02 | 2009-07-08 | 广东威创视讯科技股份有限公司 | 笔迹擦除的方法及装置 |
CN102855132A (zh) * | 2011-06-30 | 2013-01-02 | 深圳市大族激光科技股份有限公司 | 一种图形对象的选取方法及*** |
CN103578553A (zh) * | 2013-10-14 | 2014-02-12 | 江苏敏行信息技术有限公司 | 一种矢量线型快速擦除方法 |
CN104992460A (zh) * | 2015-05-28 | 2015-10-21 | 深圳市创易联合科技有限公司 | 擦除矢量笔迹的方法 |
-
2016
- 2016-06-29 CN CN201610494561.0A patent/CN106127685B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003196671A (ja) * | 2001-12-28 | 2003-07-11 | Ricoh Co Ltd | 描画像消去方法、その方法によったプログラム、およびそのプログラムを記憶した記憶媒体 |
CN101477694A (zh) * | 2008-12-02 | 2009-07-08 | 广东威创视讯科技股份有限公司 | 笔迹擦除的方法及装置 |
CN102855132A (zh) * | 2011-06-30 | 2013-01-02 | 深圳市大族激光科技股份有限公司 | 一种图形对象的选取方法及*** |
CN103578553A (zh) * | 2013-10-14 | 2014-02-12 | 江苏敏行信息技术有限公司 | 一种矢量线型快速擦除方法 |
CN104992460A (zh) * | 2015-05-28 | 2015-10-21 | 深圳市创易联合科技有限公司 | 擦除矢量笔迹的方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193424A (zh) * | 2017-06-27 | 2017-09-22 | 北京北纬天辰科技有限公司 | 一种智能电子式擦除方法及装置 |
CN111429541A (zh) * | 2019-12-31 | 2020-07-17 | 杭州海康威视数字技术股份有限公司 | 一种图形擦除方法及装置 |
CN111429541B (zh) * | 2019-12-31 | 2024-03-08 | 杭州海康威视数字技术股份有限公司 | 一种图形擦除方法及装置 |
CN112181246A (zh) * | 2020-09-18 | 2021-01-05 | 深圳创维数字技术有限公司 | 电子白板擦除方法、装置、设备、计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106127685B (zh) | 2020-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106127685A (zh) | 线条快速擦除方法及其*** | |
CN102637118B (zh) | ***或删除电子表格中单元格或行列的方法及其装置 | |
CN107450833B (zh) | 基于双***的笔迹书写设置方法和***、存储介质及设备 | |
CN102566862B (zh) | 交互式电子白板中几何图形的擦除方法和装置 | |
CN103577322B (zh) | 一种点击测试方法和装置 | |
CN103578553B (zh) | 一种矢量线型快速擦除方法 | |
CN106502667B (zh) | 一种渲染方法及装置 | |
CN103365529A (zh) | 一种图标管理方法及移动终端 | |
CN106910232A (zh) | 画线擦除方法及装置 | |
CN107679276A (zh) | 电力***潮流接线图的生成方法、装置及电子设备 | |
CN108089813A (zh) | 触摸屏划线操作的处理方法、装置、电子设备和存储介质 | |
CN105701450A (zh) | K线形态识别方法及装置 | |
CN102855132A (zh) | 一种图形对象的选取方法及*** | |
CN108520347A (zh) | 全景可视化电网电压质量展示方法、***和计算机设备 | |
CN109960543B (zh) | 书写操作的处理方法和装置 | |
CN106097414A (zh) | 曲线擦除方法及*** | |
CN105138311A (zh) | 一种提高图形绘制效率的方法及装置 | |
CN112035035B (zh) | 一种可擦除顶层局部区域笔画的橡皮擦实现方法及*** | |
CN106023280A (zh) | 一种数据趋势曲线图的绘制方法 | |
CN103345565B (zh) | 一种用于数据展示基于Flash技术的仪表盘构建方法 | |
CN106598292B (zh) | 智能书写方法、书写笔、节点配置装置、平板及*** | |
CN102707893A (zh) | 移动终端的虚拟键盘的显示***及方法 | |
CN102542589B (zh) | 一种波形编辑方法及装置 | |
CN107632760A (zh) | 书写笔迹圈选方法及装置、触摸设备、可读存储介质 | |
CN106681631A (zh) | 笔迹书写优化方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |