本技术属于计算机,尤其涉及一种操作记录处理方法、装置、计算机设备及存储介质。
背景技术:
1、目前大多数制图工具软件都具有绘图操作的撤回功能,制图工具软件会记录用户的历史绘图操作指令,用户如果在使用制图工具软件绘图过程中出现绘图失误操作,而用户想要让当前制图的结果a返回到之前的某个绘图操作阶段的制图结果b,用户可使用撤回指令,依次对上一个操作指令进行撤销,就能使得当前制图由结果a的返回到结果b;
2、然而,由于用户每产生一个绘图操作指令,制图工具软件就会产生一条操作记录,会造成制图工具软件存在大量冗余操作记录;也就是说,由绘图结果a撤回到绘图结果b之间可能会存在大量的用户操作记录,不利于用户操作体验。
技术实现思路
1、本技术实施例提供了一种操作记录处理方法、装置、计算机设备及存储介质,可以解决目前用户使用的图形软件工具的历史操作记录存在大量数据冗余的技术问题。
2、第一方面,本技术实施例提供了一种操作记录处理方法,可应用于图形软件工具,所述方法包括:
3、对可视化界面中展示的第一数据执行第一操作,得到第二数据;
4、获取所述第一数据与所述第二数据之间的第一差异,将所述第一差异存入操作记录表作为第一记录节点;
5、对第二数据执行第二操作,得到第三数据,并获取所述第三数据与所述第二数据之间的第二差异;
6、若所述第二差异为所述第一差异的相似操作数据,则将所述第二差异和所述第一差异进行合并,得到目标差异;并将所述目标差异存入所述操作记录表,以替换所述第一差异作为新的所述第一记录节点;
7、或
8、若所述第二差异不为所述第一差异的相似操作数据,则将所述第二差异存入所述操作记录表作为第二记录节点。
9、在一示例中,所述方法还包括:
10、记录执行所述第二操作得到所述第三数据所需的第二时长;
11、所述若所述第二差异为所述第一差异的相似操作数据,则将所述第二差异和所述第一差异进行合并,包括:
12、若所述第二时长满足预设时间条件且所述第二差异为所述第一差异的相似操作数据,则将所述第二差异和所述第一差异进行合并。
13、在一示例中,所述若所述第二时长满足预设时间条件且所述第二差异为所述第一差异的相似操作数据,则将所述第二差异和所述第一差异进行合并,具体包括:
14、将所述第二时长与预设时间阈值进行比较;
15、若所述第二时长小于所述预设时间阈值,则判断所述第二差异是否为第一差异的相似操作数据;若所述第二差异为所述第一差异的相似操作数据,则将所述第二差异和所述第一差异进行合并;
16、或
17、若所述第二时长不小于所述预设时间阈值,则将所述第二差异存入所述操作记录表作为第二记录节点。
18、在一示例中,所述若所述第二时长满足预设时间条件且所述第二差异为所述第一差异的相似操作数据,则将所述第二差异和所述第一差异进行合并,包括:
19、判断所述第二差异是否为第一差异的相似操作数据;
20、若所述第二差异为所述第一差异的相似操作数据,则将所述第二时长与预设时间阈值进行比较;若所述第二时长小于所述预设时间阈值,则将所述第二差异和所述第一差异进行合并;
21、或
22、若所述第二时长不小于所述预设时间阈值,则将所述第二差异存入所述操作记录表作为第二记录节点。
23、在一示例中,所述判断所述第二差异是否为所述第一差异的相似操作数据的方式包括:
24、判断所述第一数据、所述第二数据和所述第三数据之间的绘图组件以及绘图组件的路径是否相同;
25、在所述绘图组件以及绘图组件的路径均相同时,若所述第二差异与所述第一差异之间的差异为位置变化差异,则判定所述第二差异为所述第一差异的相似操作数据,其中,所述位置变化差异为所述绘图组件在所述可视化界面中的尺寸和/或位置坐标的变化差异。
26、在一示例中,所述操作记录处理方法包括:
27、响应用户的撤销指令,获取所述可视化界面中的当前操作内容;
28、在所述当前操作内容为所述第三数据时,对所述操作记录表遍历:
29、若所述操作记录表中包括所述第二记录节点,则根据所述第二记录节点对应的第二差异将所述当前操作内容由所述第三数据回退至所述第二数据;
30、或
31、若所述操作记录表中仅包括所述第一记录节点,则根据所述第一记录节点对应的目标差异将所述当前操作内容由所述第三数据回退至所述第一数据。
32、在一示例中,所述操作记录处理方法还包括:
33、响应用户的重做指令,获取所述可视化界面中的当前操作内容;
34、在所述当前操作内容为所述第一数据时,对所述操作记录表遍历:
35、若所述操作记录表中包括所述第一记录节点和所述第二记录节点,则根据所述第一记录节点对应的第一差异将所述当前操作内容由所述第一数据恢复为所述第二数据;
36、或
37、若所述操作记录表中仅包括所述第一记录节点,则根据所述第一记录节点对应的目标差异将所述当前操作内容由所述第一数据恢复为所述第三数据。
38、本技术的操作记录处理方法的有益效果在于:通过对前后两次用户的操作产生的差异数据进行判断,如果两次差异数据属于相似操作数据,将前一次差异数据和后一次差异数据进行合并,并将合并后的差异数据作为该操作记录节点,且如果两次差异数据不属于相似操作数据则不合并,这样如果用户想对最近的绘图操作进行撤销操作(或重做操作),只需要根据操作记录节点的后一次差异数据来对之前的绘图结果进行还原,相对于常规技术每产生一个绘图操作指令会产生一条操作记录来说,本实施例仅存储合并相似操作数据后的目标差异,避免制图工具软件操作记录表存在大量无意义的记录冗余数据,可以大大节约存储空间,减少内存的消耗。
39、第二方面,本技术还提出一种操作记录处理装置,包括:
40、第一获取模块,用于对可视化界面中展示的第一数据执行第一操作,得到第二数据;
41、第一记录模块,用于获取所述第一数据与所述第二数据之间的第一差异,将所述第一差异存入操作记录表作为第一记录节点;
42、第二获取模块,用于对第二数据执行第二操作,得到第三数据,并获取所述第三数据与所述第二数据之间的第二差异;
43、数据处理模块,用于若所述第二差异为所述第一差异的相似操作数据,则将所述第二差异和所述第一差异进行合并,得到目标差异;并将所述目标差异存入所述操作记录表,以替换所述第一差异作为新的所述第一记录节点;或,若所述第二差异不为所述第一差异的相似操作数据,则将所述第二差异存入所述操作记录表作为第二记录节点。
44、第三方面,本技术还提出一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述方法的步骤。
45、第四方面,本技术还提出一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面或上述第二方面所述的方法。
46、可以理解的是,上述第二方面至第四方面的有益效果可以参见上述第一方面的相关描述,在此不再赘述。