CN103593532B - 用于制图的数据处理方法和装置 - Google Patents
用于制图的数据处理方法和装置 Download PDFInfo
- Publication number
- CN103593532B CN103593532B CN201310594131.2A CN201310594131A CN103593532B CN 103593532 B CN103593532 B CN 103593532B CN 201310594131 A CN201310594131 A CN 201310594131A CN 103593532 B CN103593532 B CN 103593532B
- Authority
- CN
- China
- Prior art keywords
- edition
- version
- historical operation
- operation record
- record
- 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
Landscapes
- Processing Or Creating Images (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种用于制图的数据处理方法和装置。该用于制图的数据处理方法包括:获取图形文件中第一版本制图的历史操作记录;获取图形文件中第二版本制图的历史操作记录,其中,第一版本制图为图形文件中在第一时期的制图,第二版本制图为图形文件中在第二时期的制图;判断第一版本制图的历史操作记录和第二版本制图的历史操作记录是否存在差异;如果确定第一版本制图的历史操作记录和第二版本制图的历史操作记录存在差异,则对第一版本制图和/或第二版本制图进行差异处理。通过本发明,解决了相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及一种用于制图的数据处理方法和装置。
背景技术
制图人员在绘制图纸的过程中往往需要对绘制的图纸进行反复的修改,这样会产生不同历史版本的制图,进而会产生获取图形文件中各历史版本的制图之间差异的要求。
目前,市场上已有的比较各历史版本的制图的工具可以得出不同历史版本的制图之间的差异,但这种比较工具要么基于制图中图元的几何特征和图元的属性进行差异比较,要么基于制图中图元的句柄或者身份标识号(Identity,简称ID)进行差异比较,这种比较工具虽然可以得出不同历史版本的制图之间的几何差异,但是不能得出不同历史版本的制图之间产生差异的原因(即差异是由哪些步骤造成的)。另外,在相关技术中,制图比较工具也不能对不同历史版本的制图进行差异修订和差异同步等,只能通过制图软件重新执行相应的操作来达到差异修订和差异同步。
针对相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种用于制图的数据处理方法和装置,以解决相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种用于制图的数据处理方法。该方法包括:获取图形文件中第一版本制图的历史操作记录;获取图形文件中第二版本制图的历史操作记录,其中,第一版本制图为图形文件中在第一时期的制图,第二版本制图为所述图形文件中在第二时期的制图;判断第一版本制图的历史操作记录和第二版本制图的历史操作记录是否存在差异;以及如果确定第一版本制图的历史操作记录和第二版本制图的历史操作记录存在差异,则对第一版本制图和/或第二版本制图进行差异处理。
进一步地,在获取图形文件中第二版本制图的历史操作记录之前,数据处理方法还包括:执行制图软件中的操作指令,操作指令用于绘制第二版本制图;判断操作指令是否为预设操作指令或自定义操作指令,其中,预设操作指令或自定义操作指令用于改变第二版本制图中图元;以及如果确定操作指令为预设操作指令或自定义操作指令,则将操作指令加入第二版本制图的历史操作记录中。
进一步地,将操作指令加入第二版本制图的历史操作记录中包括:创建操作指令的原子操作指令,其中,原子操作指令为用于描述操作的最小单元的指令;以及将操作指令的原子操作指令加入第二版本制图的历史操作记录中。
进一步地,对第一版本制图和/或第二版本制图进行差异处理包括:获取第一版本制图的历史操作记录和第二版本制图的历史操作记录中存在差异的历史操作记录;在制图软件中执行存在差异的历史操作记录;以及在制图软件中显示第一版本制图和第二版本制图中存在的差异。
进一步地,在在制图软件中执行存在差异的历史操作记录之后,数据处理方法还包括:根据第一版本制图与第二版本制图中存在的差异在制图软件中对第一版本制图进行差异同步;和/或根据第一版本制图与第二版本制图中存在的差异在制图软件中对第二版本制图进行差异修订。
为了实现上述目的,根据本发明的另一方面,提供了一种用于制图的数据处理装置。该装置包括:第一获取单元,用于获取图形文件中第一版本制图的历史操作记录;第二获取单元,用于获取图形文件中第二版本制图的历史操作记录,其中,第一版本制图为图形文件中在第一时期的制图,第二版本制图为所述图形文件中在第二时期的制图;第一判断单元,用于判断第一版本制图的历史操作记录和第二版本制图的历史操作记录是否存在差异;以及差异处理单元,用于如果确定第一版本制图的历史操作记录和第二版本制图的历史操作记录存在差异,则对第一版本制图和/或第二版本制图进行差异处理。
进一步地,该装置还包括:执行单元,用于在获取图形文件中第二版本制图的历史操作记录之前,执行制图软件中的操作指令,操作指令用于绘制第二版本制图;第二判断单元,用于判断操作指令是否为预设操作指令或自定义操作指令,其中,预设操作指令或自定义操作指令用于改变第二版本制图中图元;以及添加单元,用于如果确定操作指令为预设操作指令或自定义操作指令,则将操作指令加入第二版本制图的历史操作记录中。
进一步地,添加单元包括:创建模块,用于创建操作指令的原子操作指令,其中,原子操作指令为用于描述操作的最小单元的指令;以及添加模块,用于将操作指令的原子操作指令加入第二版本制图的历史操作记录中。
进一步地,差异处理单元包括:获取模块,用于获取第一版本制图的历史操作记录和第二版本制图的历史操作记录中存在差异的历史操作记录;执行模块,用于在制图软件中执行存在差异的历史操作记录;以及第一显示模块,用于在制图软件中显示第一版本制图和第二版本制图中存在的差异。
进一步地,差异处理单元还包括:第二显示模块,用于在在制图软件中执行存在差异的历史操作记录之后,根据第一版本制图与第二版本制图中存在的差异在制图软件中对第一版本制图进行差异同步;和/或第三显示模块,用于根据第一版本制图与第二版本制图中存在的差异在制图软件中对第二版本制图进行差异修订。
通过本发明,采用获取图形文件中第一版本制图的历史操作记录;获取图形文件中第二版本制图的历史操作记录,其中,第一版本制图为图形文件中在第一时期的制图,第二版本制图为图形文件中在第二时期的制图,并且第二版本制图为在第一版本制图基础上的制图;判断第一版本制图的历史操作记录和第二版本制图的历史操作记录是否存在差异;以及如果确定第一版本制图的历史操作记录和第二版本制图的历史操作记录存在差异,则对第一版本制图和/或第二版本制图进行差异处理,解决了相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题,进而达到了根据造成差异的原因对各历史版本的制图进行修改的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明第一实施例的用于制图的数据处理方法的流程图;
图2是根据本发明第二实施例的用于制图的数据处理方法的流程图;
图3是根据本发明第三实施例的用于制图的数据处理方法的流程图;
图4是根据本发明第一实施例的用于制图的数据处理装置的示意图;
图5是根据本发明第二实施例的用于制图的数据处理装置的示意图;以及
图6是根据本发明第三实施例的用于制图的数据处理装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本领域的技术人员更好的理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,在本领域普通技术人员没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明的保护范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
根据本发明的实施例,提供了一种用于制图的数据处理方法,该用于制图的数据处理方法用于根据在绘制图纸时产生的历史操作记录比较各历史版本制图之间是否存在差异。该用于制图的数据处理方法可以运行在计算机处理设备上。
图1是根据本发明第一实施例的用于制图的数据处理方法的流程图。
如图1所示,该用于制图的数据处理方法包括如下的步骤S101至步骤S104:
步骤S101,获取图形文件中第一版本制图的历史操作记录。
在本发明实施例中,图形文件可以为计算机辅助设计(Computer Aided Design,简称CAD)图形文件。第一版本制图是指某一个实体或者某几个实体(如桌子、或者桌子和椅子)在第一历史时期通过制图软件的绘制而生成的制图。需要说明的是,在本发明实施例中,实体为一切可以通过CAD绘图进行展示的设计图样,例如,CAD绘图可以是工程制图、机械制图等。历史操作记录是指用于描述历史操作的计算机语言,其中,该计算机语言包括文本和二进制代码等,通过执行历史操作记录可以创建该历史操作记录对应的图元(或者图素)。图元(或者图素)可以包括直线、射线、线段和圆等。例如,通过执行一条描述线段的历史操作记录可以创建一条具有一定长度、起点和终点的线段。需要说明的是,获取图形文件中第一版本制图的历史操作记录可以包括获取图形文件中第一版本制图的历史操作记录的所有条目,其中,每条条目对应一个图元(或者图素)的改变,例如,每条条目可以对应一个图元(或者图素)的创建、删除和修改等。获取图形文件中第一版本制图的历史操作记录可以是从存储历史操作记录的容器中获取。在获取到图形文件中第一版本制图的历史操作记录之后可以执行该历史操作记录,执行该历史操作记录可以在制图软件中显示该历史操作记录对应的图元(或者图素)。第一版本制图的历史操作记录的条目在容器中可以按照时间的先后顺存储。
步骤S102,获取图形文件中第二版本制图的历史操作记录。
在本发明实施例中,如果第一版本制图为某一个实体或者某几个实体(如桌子、或者桌子和椅子)在第一历史时期通过制图软件的绘制而生成的制图,则第二版本制图可以为上述某一个实体或者某几个实体在第二历史时期通过制图软件的绘制而生成的制图,即第一版本制图为第一时期的制图,第二版本制图为第二时期的制图,并且第二版本制图可以为在第一版本制图基础上的制图。例如,当某张桌子在2013年1月1日的制图为第一版本制图时,则可以在2013年1月1日之后的某个时间在上述第一版本制图的基础上添加图元(或者图素)作为第二版本制图。需要说明的是,第二版本制图也可以为与上述某一个实体或者某几个实体不同的实体在第二历史时期通过制图软件的绘制而生成的制图。例如,第一版本制图为一张桌子的制图,第二版本制图为一把椅子的制图。换言之,第二版本制图可以是在打开的第一版本制图基础上的制图,也可以是新创建的制图。需要说明的是,获取图形文件中第二版本制图的历史操作记录可以包括获取图形文件中第二版本制图的历史操作记录的所有条目,其中,每条条目对应一个图元(或者图素)的改变,例如,每条条目可以对应一个图元(或者图素)的创建、删除和修改等。获取图形文件中第二版本制图的历史操作记录可以是从存储历史操作记录的容器中获取。在获取到图形文件中第二版本制图的历史操作记录之后可以执行该历史操作记录,执行该历史操作记录可以在制图软件中显示该历史操作记录对应的图元(或者图素)。第二版本制图的历史操作记录的条目在容器中可以按照时间的先后顺序存储。
步骤S103,判断第一版本制图的历史操作记录和第二版本制图的历史操作记录是否存在差异。
具体地,在本发明实施例中,首先可以分别按照第一版本制图的历史操作记录和第二版本制图的历史操作记录在各自容器中的存储顺序逐条判断第一版本制图的历史操作记录的条目的值和第二版本制图的历史操作记录的相应条目的值是否存在差异,然后当判断出第一版本制图的历史操作记录的一条条目的值和第二版本制图的历史操作记录的相应条目的值相同时,则继续判断第一版本制图的历史操作记录的下一条目的值和第二版本制图的历史操作记录的相应的下一条目的值是否存在差异,否则对存在差异的第一版本制图的历史操作记录的条目和第二版本制图的历史操作记录的相应条目进行提示、定位、标记和重现等处理。最后检测所有的历史操作记录条目是否已经判断完毕,当检测到所有的历史操作记录条目已经判断完毕,则停止判断,否则继续判断各版本历史操作记录的下一条目。
步骤S104,对第一版本制图和/或第二版本制图进行差异处理。
如果确定第一版本制图的历史操作记录和第二版本制图的历史操作记录存在差异,则对第一版本制图和/或第二版本制图进行差异处理。具体地,可以根据第一版本制图的历史操作记录对第二版本制图的历史操作记录的不同对第二版本制图进行差异处理;也可以根据第二版本制图的历史操作记录对第一版本制图的历史操作记录的不同对第一版本制图进行差异处理;还可以根据第一版本制图的历史操作记录和第二版本制图的历史操作记录之间的不同对第一版本制图和第二版本制图均进行差异处理。
由于图形文件中制图的历史操作记录与制图软件中显示的图元(或者图素)为一一对应的关系,并且执行历史操作记录可以在制图软件中重现该历史操作记录对应的图元(或者图素),因此,通过本发明,解决了相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题,进而达到了根据造成差异的原因对各历史版本的制图进行修改的效果。
图2是根据本发明第二实施例的用于制图的数据处理方法的流程图。
如图2所示,该用于制图的数据处理方法包括如下的步骤S201至步骤S207,该实施例可以作为图1所示实施例的优选实施方式。
步骤S201,同图1所示实施例的步骤S101,在此不再赘述。
步骤S202,执行制图软件中的操作指令。
在本发明实施例中,在执行制图软件中的操作指令之前可以先获取制图软件中的操作指令。操作指令用于绘制第二版本制图。需要说明的是,在本发明实施例中,操作指令可以包括对图元(或者图素)造成改变(如,创建、修改或者删除)的预设操作指令或自定义操作指令以及未对图元(或者图素)造成改变的无效操作指令,例如,当第二版本制图为第一版本制图基础上的制图时,在第二版本制图中执行的操作指令仅仅是对第一版本制图中的所有的图元(或者图素)做平移或者缩放等处理时,该操作指令即为无效操作指令,其中,预设操作指令或自定义操作指令和无效操作指令的类型参数不同。
步骤S203,判断操作指令是否为预设操作指令或自定义操作指令。
判断操作指令是否为预设操作指令或自定义操作指令可以判断操作指令的类型参数是否为预设操作指令类型参数或自定义操作指令类型参数,当判断出操作指令的类型参数为预设操作指令类型参数或自定义操作指令类型参数时,则判断出操作指令为预设操作指令或自定义操作指令,否则,当判断出操作指令的类型参数为无效操作指令类型参数时,则判断出操作指令为无效操作指令。需要说明的是,预设操作指令或自定义操作指令用于改变第二版本制图中的图元,其中,改变第二版本制图中的图元包括在第二版本制图中创建新的图元、修改已有图元和删除图元等。
步骤S204,将操作指令加入第二版本制图的历史操作记录中。
如果确定操作指令为预设操作指令,则将操作指令加入第二版本制图的历史操作记录中。例如,在制图软件中对第二版本制图执行了创建一条直线的操作指令,即在在制图软件中对第二版本制图创建了一条直线,因为该操作指令改变了整个第二版本制图中的图元(或者图素),所以该操作指令为预设操作指令,需要将该操作指令加入到第二版本制图的历史操作记录中。
在本发明实施例中,可以通过以下方式将操作指令加入第二版本制图的历史操作记录中:
步骤11,创建操作指令的原子操作指令。其中,原子操作指令为用于描述操作的最小单元的指令。原子操作指令包含描述操作所必需的操作类型和操作参数等要素。例如,图元(或者图素)为线段的操作指令的操作类型为创建线段,操作参数为线段的长度和线段的两个端点。优选地,在创建操作指令的原子操作指令之前可以先判断该操作指令是否为原子操作指令,当判断出该操作指令为原子操作指令时,则不作处理,否则为操作指令创建原子操作指令。例如,当判断出操作指令为创建一个圆和一条线段的集合式操作指令时,则为该操作指令分别创建一条单独创建上述圆的原子操作指令和单独创建上述线段的原子操作指令。
步骤12,将操作指令的原子操作指令加入第二版本制图的历史操作记录中。在本发明实施例中,可以按照时间顺序将操作指令的原子操作指令加入第二版本制图的历史操作记录中,即可以加入存储第二版本制图的历史操作记录的容器中。
需要说明的是,在本发明实施例中,步骤S202至步骤S204作为一个整体和步骤S201的执行顺序仅仅是一种实例,其中,步骤S202至步骤S204作为一个整体和步骤S201的执行顺序可以互相颠倒,颠倒之后整个实施例所达到的效果不变。
步骤S205至步骤S207,分别同图1所示实施例的步骤S102至步骤S104,在此不再赘述。
由于图形文件中制图的历史操作记录仅仅记录了改变图元(或者图素)的操作指令,因此,通过本发明,解决了相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题,进而达到了根据造成差异的原因对各历史版本的制图进行修改的效果。
图3是根据本发明第三实施例的用于制图的数据处理方法的流程图。
如图3所示,该用于制图的数据处理方法包括如下的步骤S301至步骤S306,该实施例可以作为图1所示实施例的优选实施方式。
步骤S301至步骤S303,分别同图1所示实施例的步骤S101至步骤S103,在此不再赘述。
步骤S304,获取第一版本制图的历史操作记录和第二版本制图的历史操作记录中存在差异的历史操作记录。
在本发明实施例中,获取第一版本制图的历史操作记录和第二版本制图的历史操作记录中存在差异的历史操作记录可以是获取第一版本制图的历史操作记录和第二版本制图的历史操作记录中存在差异的历史操作记录中的全部条目,并将该存在差异的历史操作记录中的全部条目按照时间顺序存储在差异列表中。
步骤S305,在制图软件中执行存在差异的历史操作记录。
在本发明实施例中,在制图软件中执行存在差异的历史操作记录可以是按照差异列表中存储的存在差异的历史操作记录中的全部条目的顺序逐条执行上述条目。需要说明的是,可以将第二版本制图的历史操作记录与第一版本制图的历史操作记录中不同的条目在制图软件中对第一版本制图进行修改,或者可以将第一版本制图的历史操作记录与第二版本制图的历史操作记录中不同的条目在制图软件中对第二版本制图进行修改;或者可以将第一版本制图的历史操作记录和第二版本制图的历史操作记录中不同的条目在制图软件中对第一版本制图和第二版本制图均进行修改。
步骤S306,在制图软件中显示第一版本制图和第二版本制图中存在的差异。
需要说明的是,在制图软件中显示第一版本制图和第二版本制图中存在的差异是指差异重现。另外,在本发明实施例中,在在制图软件中执行存在差异的历史操作记录之后,该数据处理方法还包括以下步骤:
步骤21,根据第一版本制图与第二版本制图中存在的差异在制图软件中对第一版本制图进行差异同步。需要说明的是,在制图软件中通过执行第二版本制图的历史操作记录中与第一版本制图的历史操作记录中不相同的历史操作记录的条目,即在第一版本制图中显示第二版本制图中与第一版本制图中不同的(例如,增加的、减少的、或者修改的等)图元(或者图素),此操作即为差异同步。差异同步可以快速地将第一版本制图更新为第二版本制图,这样,制图人员只需要将不同的操作记录执行一遍而不需要执行所有的操作记录即可将第一版本制图更新为第二版本制图,减轻了制图人员的工作负担,提高了制图效率,满足了制图人员的急需要求,并给后续的基于差异的制图应用提供了可能性。
步骤22,根据第一版本制图与第二版本制图中存在的差异在制图软件中对第二版本制图进行差异修订。需要说明的是,在制图软件中通过执行第一版本制图的历史操作记录中与第二版本制图的历史操作记录中不相同的历史操作记录的条目,即在第二版本制图中显示第一版本制图中与第二版本制图中不同的(例如,增加的、减少的、或者修改的等)图元(或者图素),此操作即为差异修订。差异修订可以快速地将第二版本制图更新为第一版本制图,这样,制图人员只需要将不同的操作记录执行一遍而不需要执行所有的操作记录即可将第二版本制图更新为第一版本制图,减轻了制图人员的工作负担,提高了制图效率,满足了制图人员的急需要求,并给后续的基于差异的制图应用提供了可能性。
例如,制图有两个历史版本:历史版本1和历史版本2,如历史版本2比历史版本1多了一条直线,历史版本1对应历史操作记录1,历史版本2对应历史操作记录2,通过比较历史操作记录1和历史操作记录2之后可以得出其差异为创建一条直线的操作记录。此时可以标明此处有差异,同时基于差异的结果,可以在制图软件中执行一遍此历史操作记录,即为差异重现;将历史版本2多出的历史操作记录删除,则为差异修订;将历史版本2多出的操作插入到历史版本1中,使版本1与版本2同步,则为差异同步。
根据本发明的实施例,提供了一种用于制图的数据处理装置,该用于制图的数据处理装置用于根据在绘制图纸时产生的历史操作记录比较各历史版本制图之间是否存在差异。需要说明的是,本发明实施例所提供的用于制图的数据处理装置可以用于执行本发明实施例的用于制图的数据处理方法,本发明实施例的用于制图的数据处理方法也可以通过本发明实施例的用于制图的数据处理装置来执行。
图4是根据本发明第一实施例的用于制图的数据处理装置的示意图。
如图4所示,该装置包括:第一获取单元10、第二获取单元20、第一判断单元30和差异处理单元40。
第一获取单元10用于获取图形文件中第一版本制图的历史操作记录。在本发明实施例中,图形文件可以为计算机辅助设计(Computer Aided Design,简称CAD)图形文件。第一版本制图是指某一个实体或者某几个实体(如桌子、或者桌子和椅子)在第一历史时期通过制图软件的绘制而生成的制图。需要说明的是,在本发明实施例中,实体为一切可以通过CAD绘图进行展示的设计图样,例如,CAD绘图可以是工程制图、机械制图等。历史操作记录是指用于描述历史操作的计算机语言,其中,该计算机语言包括文本和二进制代码等,通过执行历史操作记录可以创建该历史操作记录对应的图元(或者图素)。图元(或者图素)可以包括直线、射线、线段和圆等。例如,通过执行一条描述线段的历史操作记录可以创建一条具有一定长度、起点和终点的线段。需要说明的是,第一获取单元10获取图形文件中第一版本制图的历史操作记录可以包括获取图形文件中第一版本制图的历史操作记录的所有条目,其中,每条条目对应一个图元(或者图素)的改变,例如,每条条目可以对应一个图元(或者图素)的创建、删除和修改等。第一获取单元10获取图形文件中第一版本制图的历史操作记录可以是从存储历史操作记录的容器中获取。在获取到图形文件中第一版本制图的历史操作记录之后可以执行该历史操作记录,执行该历史操作记录可以在制图软件中显示该历史操作记录对应的图元(或者图素)。第一版本制图的历史操作记录的条目在容器中可以按照时间的先后顺存储。
第二获取单元20用于获取图形文件中第二版本制图的历史操作记录。在本发明实施例中,如果第一版本制图为某一个实体或者某几个实体(如桌子、或者桌子和椅子)在第一历史时期通过制图软件的绘制而生成的制图,则第二版本制图可以为上述某一个实体或者某几个实体在第二历史时期通过制图软件的绘制而生成的制图,即第一版本制图为第一时期的制图,第二版本制图为第二时期的制图,并且第二版本制图可以为在第一版本制图基础上的制图。例如,当某张桌子在2013年1月1日的制图为第一版本制图时,则可以在2013年1月1日之后的某个时间在上述第一版本制图的基础上添加图元(或者图素)作为第二版本制图。需要说明的是,第二版本制图也可以为与上述某一个实体或者某几个实体不同的实体在第二历史时期通过制图软件的绘制而生成的制图。例如,第一版本制图为一张桌子的制图,第二版本制图为一把椅子的制图。换言之,第二版本制图可以是在打开的第一版本制图基础上的制图,也可以是新创建的制图。需要说明的是,第二获取单元20获取图形文件中第二版本制图的历史操作记录可以包括获取图形文件中第二版本制图的历史操作记录的所有条目,其中,每条条目对应一个图元(或者图素)的改变,例如,每条条目可以对应一个图元(或者图素)的创建、删除和修改等。第二获取单元20获取图形文件中第二版本制图的历史操作记录可以是从存储历史操作记录的容器中获取。在获取到图形文件中第二版本制图的历史操作记录之后可以执行该历史操作记录,执行该历史操作记录可以在制图软件中显示该历史操作记录对应的图元(或者图素)。第二版本制图的历史操作记录的条目在容器中可以按照时间的先后顺序存储。
第一判断单元30用于判断第一版本制图的历史操作记录和第二版本制图的历史操作记录是否存在差异。具体地,在本发明实施例中,第一判断单元30首先可以分别按照第一版本制图的历史操作记录和第二版本制图的历史操作记录在各自容器中的存储顺序逐条判断第一版本制图的历史操作记录的条目的值和第二版本制图的历史操作记录的相应条目的值是否存在差异,然后当判断出第一版本制图的历史操作记录的一条条目的值和第二版本制图的历史操作记录的相应条目的值相同时,则继续判断第一版本制图的历史操作记录的下一条目的值和第二版本制图的历史操作记录的相应的下一条目的值是否存在差异,否则对存在差异的第一版本制图的历史操作记录的条目和第二版本制图的历史操作记录的相应条目进行提示、定位、标记和重现等处理。最后检测所有的历史操作记录条目是否已经判断完毕,当检测到所有的历史操作记录条目已经判断完毕,则停止判断,否则继续判断各版本历史操作记录的下一条目。
差异处理单元40用于如果确定第一版本制图的历史操作记录和第二版本制图的历史操作记录存在差异,则对第一版本制图和/或第二版本制图进行差异处理。具体地,差异处理单元40可以根据第一版本制图的历史操作记录对第二版本制图的历史操作记录的不同对第二版本制图进行差异处理;差异处理单元40也可以根据第二版本制图的历史操作记录对第一版本制图的历史操作记录的不同对第一版本制图进行差异处理;差异处理单元40还可以根据第一版本制图的历史操作记录和第二版本制图的历史操作记录之间的不同对第一版本制图和第二版本制图均进行差异处理。
由于图形文件中制图的历史操作记录与制图软件中显示的图元(或者图素)为一一对应的关系,并且执行历史操作记录可以在制图软件中重现该历史操作记录对应的图元(或者图素),因此,通过本发明,解决了相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题,进而达到了根据造成差异的原因对各历史版本的制图进行修改的效果。
图5是根据本发明第二实施例的用于制图的数据处理装置的示意图。
如图5所示,该实施例可以作为图4所示实施例的优选实施方式,该实施例的用于制图的数据处理装置除了包括第一实施例的第一获取单元10、第二获取单元20、第一判断单元30和差异处理单元40之外,还包括执行单元50、第二判断单元60和添加单元70。
第一获取单元10、第二获取单元20、第一判断单元30和差异处理单元40的作用与第一实施例中的相同,在此不再赘述。
执行单元50用于在获取图形文件中第二版本制图的历史操作记录之前,执行制图软件中的操作指令,操作指令用于绘制第二版本制图。需要说明的是,在本发明实施例中,操作指令可以包括对图元(或者图素)造成改变(如,创建、修改或者删除)的预设操作指令和未对图元(或者图素)造成改变的无效操作指令,例如,当第二版本制图为第一版本制图基础上的制图时,在第二版本制图中执行的操作指令仅仅是对第一版本制图中的所有的图元(或者图素)做平移或者缩放等处理时,该操作指令即为无效操作指令,其中,预设操作指令和无效操作指令的类型参数不同。
第二判断单元60用于判断操作指令是否为预设操作指令或自定义操作指令。其中,预设操作指令或自定义操作指令用于改变第二版本制图中图元。第二判断单元60判断操作指令是否为预设操作指令或自定义操作指令可以判断操作指令的类型参数是否为预设操作指令类型参数或自定义操作指令类型参数,当判断出操作指令的类型参数为预设操作指令类型参数或自定义操作指令类型参数时,则判断出操作指令为预设操作指令或自定义操作指令,否则,当判断出操作指令的类型参数为无效操作指令类型参数时,则判断出操作指令为无效操作指令。需要说明的是,预设操作指令或自定义操作指令用于改变第二版本制图中的图元,其中,改变第二版本制图中的图元包括在第二版本制图中创建新的图元、修改已有图元和删除图元等。
添加单元70用于如果确定操作指令为预设操作指令或自定义操作指令,则将操作指令加入第二版本制图的历史操作记录中。
如果确定操作指令为预设操作指令自定义操作指令,则添加单元70将操作指令加入第二版本制图的历史操作记录中。例如,在制图软件中对第二版本制图执行了创建一条直线的操作指令,即在在制图软件中对第二版本制图创建了一条直线,因为该操作指令改变了整个第二版本制图中的图元(或者图素),所以该操作指令为预设操作指令,需要将该操作指令加入到第二版本制图的历史操作记录中。
在本发明实施例中,添加单元70可以包括创建模块和添加模块。
创建模块用于创建操作指令的原子操作指令。其中,原子操作指令为用于描述操作的最小单元的指令。原子操作指令包含描述操作所必需的操作类型和操作参数等要素。例如,图元(或者图素)为线段的操作指令的操作类型为创建线段,操作参数为线段的长度和线段的两个端点。优选地,在创建操作指令的原子操作指令之前可以先判断该操作指令是否为原子操作指令,当判断出该操作指令为原子操作指令时,则不作处理,否则为操作指令创建原子操作指令。例如,当判断出操作指令为创建一个圆和一条线段的集合式操作指令时,则为该操作指令分别创建一条单独创建上述圆的原子操作指令和单独创建上述线段的原子操作指令。
添加模块用于将操作指令的原子操作指令加入第二版本制图的历史操作记录中。在本发明实施例中,添加模块可以按照时间顺序将操作指令的原子操作指令加入第二版本制图的历史操作记录中,即添加模块可以加入存储第二版本制图的历史操作记录的容器中。
由于图形文件中制图的历史操作记录仅仅记录了改变图元(或者图素)的操作指令,因此,通过本发明,解决了相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题,进而达到了根据造成差异的原因对各历史版本的制图进行修改的效果。
图6是根据本发明第三实施例的用于制图的数据处理装置的示意图。
如图6所示,该实施例可以作为图4所示实施例的优选实施方式,该实施例的用于制图的数据处理装置包括第一获取单元10、第二获取单元20、第一判断单元30和差异处理单元40,其中,差异处理单元40包括获取模块401、执行模块402和第一显示模块403。
第一获取单元10、第二获取单元20和第一判断单元30的作用与第一实施例中的相同,在此不再赘述。
获取模块401用于获取第一版本制图的历史操作记录和第二版本制图的历史操作记录中存在差异的历史操作记录。在本发明实施例中,获取模块401获取第一版本制图的历史操作记录和第二版本制图的历史操作记录中存在差异的历史操作记录可以是获取第一版本制图的历史操作记录和第二版本制图的历史操作记录中存在差异的历史操作记录中的全部条目,并将该存在差异的历史操作记录中的全部条目按照时间顺序存储在差异列表中。
执行模块402用于在制图软件中执行存在差异的历史操作记录。在本发明实施例中,执行模块402在制图软件中执行存在差异的历史操作记录可以是按照差异列表中存储的存在差异的历史操作记录中的全部条目的顺序逐条执行上述条目。需要说明的是,执行模块402可以将第二版本制图的历史操作记录与第一版本制图的历史操作记录中不同的条目在制图软件中对第一版本制图进行修改,或者执行模块402可以将第一版本制图的历史操作记录与第二版本制图的历史操作记录中不同的条目在制图软件中对第二版本制图进行修改;或者执行模块402可以将第一版本制图的历史操作记录和第二版本制图的历史操作记录中不同的条目在制图软件中对第一版本制图和第二版本制图均进行修改。
第一显示模块403用于在制图软件中显示第一版本制图和第二版本制图中存在的差异。需要说明的是,第一显示模块403在制图软件中显示第一版本制图和第二版本制图中存在的差异是指差异重现。另外,在本发明实施例中,差异处理单元40还可以包括第二显示模块和/或第三显示模块。
第二显示模块用于在在制图软件中执行存在差异的历史操作记录之后,根据第一版本制图与第二版本制图中存在的差异在制图软件中对第一版本制图进行差异同步。需要说明的是,在制图软件中通过执行第二版本制图的历史操作记录中与第一版本制图的历史操作记录中不相同的历史操作记录的条目,即在第一版本制图中显示第二版本制图中与第一版本制图中不同的(例如,增加的、减少的、或者修改的等)图元(或者图素),此操作即为差异同步。差异同步可以快速地将第一版本制图更新为第二版本制图,这样,制图人员只需要将不同的操作记录执行一遍而不需要执行所有的操作记录即可将第一版本制图更新为第二版本制图,减轻了制图人员的工作负担,提高了制图效率,满足了制图人员的急需要求,并给后续的基于差异的制图应用提供了可能性。
第三显示模块用于根据第一版本制图与第二版本制图中存在的差异在制图软件中对第二版本制图进行差异修订。需要说明的是,在制图软件中通过执行第一版本制图的历史操作记录中与第二版本制图的历史操作记录中不相同的历史操作记录的条目,即在第二版本制图中显示第一版本制图中与第二版本制图中不同的(例如,增加的、减少的、或者修改的等)图元(或者图素),此操作即为差异修订。差异修订可以快速地将第二版本制图更新为第一版本制图,这样,制图人员只需要将不同的操作记录执行一遍而不需要执行所有的操作记录即可将第二版本制图更新为第一版本制图,减轻了制图人员的工作负担,提高了制图效率,满足了制图人员的急需要求,并给后续的基于差异的制图应用提供了可能性。
例如,制图有两个历史版本:历史版本1和历史版本2,如历史版本2比历史版本1多了一条直线,历史版本1对应历史操作记录1,历史版本2对应历史操作记录2,通过比较历史操作记录1和历史操作记录2之后可以得出其差异为创建一条直线的操作记录。此时可以标明此处有差异,同时基于差异的结果,可以在制图软件中执行一遍此历史操作记录,即为差异重现;将历史版本2多出的历史操作记录删除,则为差异修订;将历史版本2多出的操作插入到历史版本1中,使版本1与版本2同步,则为差异同步。
从以上的描述中,可以看出,本发明通过比较各个历史版本制图的历史操作记录,解决了相关技术中无法了解不同历史版本的制图之间存在差异的原因的问题,进而达到了根据造成差异的原因对各历史版本的制图进行修改的效果。另外,通过执行造成各个历史版本制图差异的历史操作记录可以实现不同历史版本之间的差异重现、差异修订和差异同步等效果。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种用于制图的数据处理方法,其特征在于,包括:
获取图形文件中第一版本制图的历史操作记录,其中,获取所述图形文件中所述第一版本制图的历史操作记录包括获取所述图形文件中所述第一版本制图的历史操作记录的所有条目;
获取所述图形文件中第二版本制图的历史操作记录,其中,所述第一版本制图为所述图形文件中在第一时期的制图,所述第二版本制图为所述图形文件中在第二时期的制图,其中,获取所述图形文件中所述第二版本制图的历史操作记录包括获取所述图形文件中所述第二版本制图的历史操作记录的所有条目;
判断所述第一版本制图的历史操作记录和所述第二版本制图的历史操作记录是否存在差异;以及
如果确定所述第一版本制图的历史操作记录和所述第二版本制图的历史操作记录存在差异,则对所述第一版本制图和/或所述第二版本制图进行差异处理,其中,对所述第一版本制图和/或所述第二版本制图进行差异处理包括对所述第一版本制图和/或所述第二版本制图进行修改。
2.根据权利要求1所述的数据处理方法,其特征在于,在获取所述图形文件中第二版本制图的历史操作记录之前,所述数据处理方法还包括:
执行制图软件中的操作指令,所述操作指令用于绘制所述第二版本制图;
判断所述操作指令是否为预设操作指令或自定义操作指令,其中,所述预设操作指令或自定义操作指令用于改变所述第二版本制图中的图元;以及
如果确定所述操作指令为预设操作指令或自定义操作指令,则将所述操作指令加入所述第二版本制图的历史操作记录中。
3.根据权利要求2所述的数据处理方法,其特征在于,将所述操作指令加入所述第二版本制图的历史操作记录中包括:
创建所述操作指令的原子操作指令,其中,所述原子操作指令为用于描述操作的最小单元的指令;以及
将所述操作指令的原子操作指令加入所述第二版本制图的历史操作记录中。
4.根据权利要求1所述的数据处理方法,其特征在于,对所述第一版本制图和/或所述第二版本制图进行差异处理包括:
获取所述第一版本制图的历史操作记录和所述第二版本制图的历史操作记录中存在差异的历史操作记录;
在制图软件中执行所述存在差异的历史操作记录;以及
在所述制图软件中显示所述第一版本制图和所述第二版本制图中存在的差异。
5.根据权利要求4所述的数据处理方法,其特征在于,在在所述制图软件中执行所述存在差异的历史操作记录之后,所述数据处理方法还包括:
根据所述第一版本制图与所述第二版本制图中存在的差异在所述制图软件中对所述第一版本制图进行差异同步,其中,所述差异同步是指在制图软件中执行第二版本制图的历史操作记录中与第一版本制图的历史操作记录中不相同的历史操作记录的条目;和/或
根据所述第一版本制图与所述第二版本制图中存在的差异在所述制图软件中对所述第二版本制图进行差异修订,其中,所述差异修订是指在制图软件中执行第一版本制图的历史操作记录中与第二版本制图的历史操作记录中不相同的历史操作记录的条目。
6.一种用于制图的数据处理装置,其特征在于,包括:
第一获取单元,用于获取图形文件中第一版本制图的历史操作记录,其中,获取所述图形文件中所述第一版本制图的历史操作记录包括获取所述图形文件中所述第一版本制图的历史操作记录的所有条目;
第二获取单元,用于获取所述图形文件中第二版本制图的历史操作记录,其中,所述第一版本制图为所述图形文件中在第一时期的制图,所述第二版本制图为所述图形文件中在第二时期的制图,其中,获取所述图形文件中所述第二版本制图的历史操作记录包括获取所述图形文件中所述第二版本制图的历史操作记录的所有条目;
第一判断单元,用于判断所述第一版本制图的历史操作记录和所述第二版本制图的历史操作记录是否存在差异;以及
差异处理单元,用于如果确定所述第一版本制图的历史操作记录和所述第二版本制图的历史操作记录存在差异,则对所述第一版本制图和/或所述第二版本制图进行差异处理,其中,对所述第一版本制图和/或所述第二版本制图进行差异处理包括对所述第一版本制图和/或所述第二版本制图进行修改。
7.根据权利要求6所述的数据处理装置,其特征在于,还包括:
执行单元,用于在获取所述图形文件中第二版本制图的历史操作记录之前,执行制图软件中的操作指令,所述操作指令用于绘制所述第二版本制图;
第二判断单元,用于判断所述操作指令是否为预设操作指令或自定义操作指令,其中,所述为预设操作指令或自定义操作指令用于改变所述第二版本制图中图元;以及
添加单元,用于如果确定所述操作指令为预设操作指令或自定义操作指令,则将所述操作指令加入所述第二版本制图的历史操作记录中。
8.根据权利要求7所述的数据处理装置,其特征在于,所述添加单元包括:
创建模块,用于创建所述操作指令的原子操作指令,其中,所述原子操作指令为用于描述操作的最小单元的指令;以及
添加模块,用于将所述操作指令的原子操作指令加入所述第二版本制图的历史操作记录中。
9.根据权利要求6所述的数据处理装置,其特征在于,所述差异处理单元包括:
获取模块,用于获取所述第一版本制图的历史操作记录和所述第二版本制图的历史操作记录中存在差异的历史操作记录;
执行模块,用于在制图软件中执行所述存在差异的历史操作记录;以及
第一显示模块,用于在所述制图软件中显示所述第一版本制图和所述第二版本制图中存在的差异。
10.根据权利要求9所述的数据处理装置,其特征在于,所述差异处理单元还包括:
第二显示模块,用于在在所述制图软件中执行所述存在差异的历史操作记录之后,根据所述第一版本制图与所述第二版本制图中存在的差异在所述制图软件中对所述第一版本制图进行差异同步,其中,所述差异同步是指在制图软件中执行第二版本制图的历史操作记录中与第一版本制图的历史操作记录中不相同的历史操作记录的条目;和/或
第三显示模块,用于根据所述第一版本制图与所述第二版本制图中存在的差异在所述制图软件中对所述第二版本制图进行差异修订,其中,所述差异修订是指在制图软件中执行第一版本制图的历史操作记录中与第二版本制图的历史操作记录中不相同的历史操作记录的条目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310594131.2A CN103593532B (zh) | 2013-11-22 | 2013-11-22 | 用于制图的数据处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310594131.2A CN103593532B (zh) | 2013-11-22 | 2013-11-22 | 用于制图的数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103593532A CN103593532A (zh) | 2014-02-19 |
CN103593532B true CN103593532B (zh) | 2016-08-17 |
Family
ID=50083670
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310594131.2A Active CN103593532B (zh) | 2013-11-22 | 2013-11-22 | 用于制图的数据处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103593532B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11312594B2 (en) | 2018-11-09 | 2022-04-26 | Otis Elevator Company | Conveyance system video analytics |
CN110737940A (zh) * | 2019-09-30 | 2020-01-31 | 深圳市华阳国际工程设计股份有限公司 | 一种bim制图标准的替换方法、装置及计算机存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2996933B2 (ja) * | 1997-05-13 | 2000-01-11 | 三菱電機株式会社 | 図面表示装置 |
CN101630335A (zh) * | 2008-07-18 | 2010-01-20 | 纬衡浩建科技(深圳)有限公司 | 一种比较图纸之间的异同的方法 |
CN102929999A (zh) * | 2012-10-25 | 2013-02-13 | 北京数码大方科技股份有限公司 | 对比数据异同的方法及装置 |
-
2013
- 2013-11-22 CN CN201310594131.2A patent/CN103593532B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2996933B2 (ja) * | 1997-05-13 | 2000-01-11 | 三菱電機株式会社 | 図面表示装置 |
CN101630335A (zh) * | 2008-07-18 | 2010-01-20 | 纬衡浩建科技(深圳)有限公司 | 一种比较图纸之间的异同的方法 |
CN102929999A (zh) * | 2012-10-25 | 2013-02-13 | 北京数码大方科技股份有限公司 | 对比数据异同的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103593532A (zh) | 2014-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Batagelj et al. | Pajek. | |
CN103793135B (zh) | 用户界面树形结构显示方法及系统 | |
JP6168475B2 (ja) | グラフ生成装置、グラフ生成方法及びグラフ生成プログラム | |
US8810576B2 (en) | Manipulation and management of links and nodes in large graphs | |
US8933937B2 (en) | Visualizing a layered graph using edge bundling | |
CN105528418B (zh) | 一种设计文档生成方法及装置 | |
US9824470B2 (en) | Use of dynamic numeric axis to indicate and highlight data ranges | |
CN103761276B (zh) | 一种树形结构数据比较的展示方法和装置 | |
WO2011142720A1 (en) | A self-organizing and contextual graphical user interface | |
CN104809751B (zh) | 生成事件组演化图的方法和装置 | |
CN103593532B (zh) | 用于制图的数据处理方法和装置 | |
CN112380803A (zh) | 配网单线图人工智能布局方法、系统及介质 | |
Haouari et al. | A branch-and-bound-based local search method for the flow shop problem | |
US9740366B2 (en) | Method and device for configuring mobile terminal icons | |
JP5152436B2 (ja) | プログラマブル表示器の画面作成システム及びその画面作成プログラム | |
CN103218425A (zh) | 浏览器扩展项的处理方法及装置 | |
JP6223866B2 (ja) | 表示情報生成装置、プログラム実行状況表示システム、方法およびプログラム | |
CN107562763A (zh) | 数据变化的显示方法及装置 | |
Abouei Ardakan et al. | A branch-and-bound algorithm for minimising the number of tardy jobs in a two-machine flow-shop problem with release dates | |
CN103970846B (zh) | 一种数据显示方法及装置 | |
Novakovic et al. | Business context sensitive business documents: Business context aware Core Components modeling using the E-UCM model | |
KR102139396B1 (ko) | 다수 그루핑에서 멤버십을 가지는 데이터와의 상호작용 관리 | |
CN104461549B (zh) | 图形界面的排列显示方法及装置 | |
US20190362047A1 (en) | System configuration creation supporting device | |
CN107577391A (zh) | 一种密码处理的方法、装置及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |