一种CAD服务器装置及方法转让专利

申请号 : CN201210016714.2

文献号 : CN102567590B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 徐矿妹崔亚军

申请人 : 北京勤哲软件技术有限责任公司

摘要 :

一种异构CAD文档信息读取方法,该方法针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来于生成CAD文档的CAD系统无关的读取方法,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该方法包括:定义异构CAD文档信息读取规则模板;根据模板生成具体的异构CAD文档信息读取规则;通过一个兼容各种CAD系统的CAD文档访问器从CAD文档中读取规则指定的CAD图元数据;将CAD图元数据和规则指定的数据库中的已有数据组合,按规则的规定进行筛选、运算,得到CAD文档的输出参数;将CAD文档的输出参数呈现给用户,或存储到数据库中。

权利要求 :

1.一种异构CAD文档信息读取方法,该方法针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来生成CAD文档的CAD系统无关的读取方法,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该方法包括:

1)定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为针对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;所述CAD文档为用户利用CAD系统所生成的文件;

2)用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库中;

3)向一个CAD文档访问器发送对用户指定的具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表的读取要求;所述CAD文档访问器,用于对各种异构的CAD系统提供统一和通用的访问接口;

4)通过CAD文档访问器从CAD文档中读取所述指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;

5)从CAD文档访问器接收返回的CAD图元表数据,将其写入临时数据存储;

6)把所述临时数据存储,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,得到处理后的数据;

7)将处理后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定,放置到信息呈现载体上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理。

2.根据权利要求1所述的一种异构CAD文档信息读取方法,其特征在于,所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。

3.根据权利要求1所述的一种异构CAD文档信息读取方法,其特征在于,所述数据源为一个或多个表名的集合;表名为CAD图元表的表名,和/或数据库中的表名或视图名;

所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。

4.根据权利要求1所述的一种异构CAD文档信息读取方法,其特征在于,所述数据源为一个或多个表名的集合以及这些表之间的关系描述;表名为CAD图元表的表名,和/或数据库中的表名或视图名;所述表之间的关系描述,描述了多个表的数据之间的关联关系,所述关联关系包括内连接、左外连接、右外连接或全连接;

所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。

5.根据权利要求1所述的一种异构CAD文档信息读取方法,其特征在于,所述填充方式为从数据源中提取出来并经过筛选条件过滤后的数据和信息呈现载体上指定位置之间的对应关系。

6.根据权利要求1或5所述的一种异构CAD文档信息读取方法,其特征在于,所述填充方式为一个或多个填充项目的集合;

所述填充项目,指一个表达式或一个三元组;所述三元组表示为item=(expr,op,target),其中item为三元组;expr为表达式;target为信息呈现载体上的指定位置;op为将expr的内容放置到target上的方式;所述方式包括填入、构造下拉选项或定位之一。

7.根据权利要求1所述的一种异构CAD文档信息读取方法,其特征在于,所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。

8.根据权利要求1所述的一种异构CAD文档信息读取方法,其特征在于,该方法还包括,把所述CAD文档输出参数存储到数据库中。

9.根据权利要求1所述的一种异构CAD文档信息读取方法,其特征在于,所述CAD文档访问器包括CAD文档访问通用接口模块,一个或多个CAD系统接口操作模块;

所述CAD文档访问器中的CAD系统接口操作模块,用于对CAD文档执行打开或保存或关闭操作、在CAD系统的操作环境中增加自定义菜单或工具栏按钮,并响应自定义菜单或工具栏按钮的点击操作、呈现CAD文档数据结构、读取CAD文档中的信息或更新CAD文档中的信息;

所述CAD文档数据结构为CAD图元表结构的集合;所述CAD图元表结构,指描述CAD图元表的名称及其它属性,以及CAD图元表中包含的子项目的名称、数据类型及其它属性;

所述CAD文档访问器中的CAD文档访问通用接口模块,用于响应接收到的对于CAD文档的操作要求,并把操作要求转交给与指定的CAD文档类型对应的CAD系统接口操作模块执行。

10.一种异构CAD文档信息读取装置,针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来生成CAD文档的CAD系统无关的读取,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该装置包括如下模块:异构CAD文档信息读取规则模板定义模块,用于定义异构CAD文档信息读取规则模板;

该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为针对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;所述CAD文档为用户利用CAD系统所生成的文件;

异构CAD文档信息读取规则生成模块,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库中;

读取要求发送模块,用于向CAD文档访问器模块发送对用户指定的具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表的读取要求;

CAD文档访问器模块,对各种异构的CAD系统提供统一和通用的访问接口;其用于从CAD文档中读取所述指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;

数据接收模块,用于接收CAD文档访问器返回的CAD图元表数据,将其写入临时数据存储;

数据查询模块,把所述临时数据存储,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,得到处理后的数据;

数据呈现模块,用于将处理后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定,放置到信息呈现载体上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;

数据库,用于存储具体的异构CAD文档信息读取规则、CAD文档的输出参数和/或用户输入的数据。

11.根据权利要求10所述的一种异构CAD文档信息读取装置,其特征在于,所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表之一;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。

12.根据权利要求10所述的一种异构CAD文档信息读取装置,其特征在于,所述数据源为一个或多个表名的集合;表名为CAD图元表的表名,和/或数据库中的表名或视图名;

所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。

13.根据权利要求10所述的一种异构CAD文档信息读取装置,其特征在于,所述数据源为一个或多个表名的集合以及这些表之间的关系描述;表名为CAD图元表的表名,和/或数据库中的表名或视图名;所述表之间的关系描述,描述了多个表的数据之间的关联关系,所述关联关系包括内连接、左外连接、右外连接或全连接;

所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。

14.根据权利要求10所述的一种异构CAD文档信息读取装置,其特征在于,所述填充方式为从数据源中提取出来并经过筛选条件过滤后的数据和信息呈现载体上指定位置之间的对应关系。

15.根据权利要求10或14所述的一种异构CAD文档信息读取装置,其特征在于,所述填充方式为一个或多个填充项目的集合;

所述填充项目,指一个表达式或一个三元组;所述三元组表示为item=(expr,op,target),其中item为三元组;expr为表达式;target为信息呈现载体上的指定位置;op为将expr的内容放置到target上的方式;所述方式包括填入、构造下拉选项或定位之一。

16.根据权利要求10所述的一种异构CAD文档信息读取装置,其特征在于,所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。

17.根据权利要求10所述的一种异构CAD文档信息读取装置,其特征在于,该装置还包括数据存储模块,用于把所述CAD文档输出参数存储到数据库中;

18.根据权利要求10所述的一种异构CAD文档信息读取装置,其特征在于,所述CAD文档访问器模块包括CAD文档访问通用接口模块,一个或多个CAD系统接口操作模块;

所述CAD文档访问器中的CAD系统接口操作模块,用于对CAD文档执行打开或保存或关闭操作、在CAD系统的操作环境中增加自定义菜单或工具栏按钮,并响应自定义菜单或工具栏按钮的点击操作、呈现CAD文档数据结构、读取CAD文档中的信息或更新CAD文档中的信息;

所述CAD文档数据结构为CAD图元表结构的集合;所述CAD图元表指CAD文档中的指定信息;所述CAD图元表结构,指描述CAD文档中包含的指定信息的名称及其它属性,以及该指定信息中包含的子项目的名称、数据类型及其它属性;

所述CAD文档访问器中的CAD文档访问通用接口模块,用于响应接收到的对于CAD文档的操作要求,并把操作要求转交给与指定的CAD文档类型对应的CAD系统接口操作模块执行。

说明书 :

一种CAD服务器装置及方法

技术领域

[0001] 本发明涉及一种CAD服务器装置及方法,属于计算机辅助设计(CAD)领域,具体涉及一种异构CAD文档信息读取方法及装置。

背景技术

[0002] 在制造、工程领域,有各种计算机辅助设计系统(CAD系统)在使用,往往在同一个机构的不同部门,或者不同的设计人员,由于使用习惯、学习成本、历史资源等方面的考虑,需要同时应用多种不同的CAD系统,针对同一产品或工程进行设计开发工作,从而,使异构的CAD系统之间能够集成,即实现数据交互、双向驱动、协同工作,是一普遍的需求。
[0003] 例如,设计人员A和B分别设计同一产品-----一款自行车的两个部分,A使用AutoCAD设计车架,B使用Solidworks设计车轮,A的设计方案和B的设计方案之间存在多种依赖关系,举例来说,B所设计的车轮半径必须小于车架的两个轮轴之间距离的一半;因此,一个需求是:B在利用Solidworks设计车轮时,需要“知道”A的设计结果---AutoCAD生成的车架设计中的一项关键数据----车架两个轮轴之间的距离;此处所述“知道”并非仅依靠由A传达给B这样的人和人之间的信息交流来实现,而是需要某种机制,使得A的设计方案中B所需的关键参数能够实时地、自动地传递到B的设计方案中,从而驱动B的设计方案的自动调整,反之依然;也即,对话的双方,不是A和B这两个设计人员,而是A所用的AutoCAD和B所用的Solidworks这两个异构的计算机辅助设计系统。
[0004] 实现异构的CAD系统之间的数据交互、双向驱动、协同工作,目前现有的技术包括:
[0005] 第一、文件级的互操作,其致力的目标是:一种CAD系统X所生成文件,能够转化为可以被另一种CAD系统Y所识别的文件格式,进而可以在Y中被打开、编辑。针对上述例子的应用场景就是:首先,把A用AutoCAD所生的设计方案转化为一种可以被Solidworks所识别的格式,B用Solidworks打开经过格式转换的文件,再与B自己的车轮设计文件,组合到同一装配体中,利用Solidworks自身的装配体协调各零件的功能,实现两个设计方案之间的协同。
[0006] 文件级的互操作,业界目前的解决方案是建立标准,例如STEP标准(产品数据模型交换标准),各厂商共同遵守,各厂商的系统都能将自己的文件转换成标准规定的中间文件,也都能够读取符合标准的中间文件,以这种方式,实现不同CAD系统的文件互操作;此方案存在的问题是:文件向中间格式转换的过程中会出现数据丢失和错误,参数、约束等非几何数据的设计语义会有丧失,几何数据的转换也有可能失败;其次,由于标准本身覆盖面广、结构复杂,以及各CAD厂商基于本身利益的考虑,各厂商对STEP等标准的支持并不充分:再次,以文件级互操作的方式实现的异构CAD系统之间的数据交互还做不到实时和自动。
[0007] 现有技术中第二种解决异构CAD系统之间数据交互问题的方案是接口开发,即用户利用各CAD厂商提供的编程接口做二次开发,编程实现异构CAD系统之间的数据交互,在上例中,用户可针对AutoCAD提供的编程接口开发程序,读取车架设计方案中的两个轮轴之间的距离,再针对Solidworks提供的编程接口开发程序,更改车轮设计方案中的约束关系。接口开发方案的主要问题是开发成本较高、工作量大,开发者必须具备编程能力,非CAD系统的普通用户可以胜任,且所开发的接口程序针对具体需求,难以做到通用,当数据交互的具体需求发生改变,必须针对变化了的需求改写或重写程序,对需求的响应时间滞后;另外,从所需人力资源的角度考虑,同时通晓CAD系统和计算机编程的技术人员已属难得,同时通晓多种CAD系统二次开发的人员更加稀少,所以,以接口开发的方式实现异构CAD系统之间数据交互的方法,难以在CAD系统的使用单位得到普遍应用。

发明内容

[0008] 本发明针对异构CAD系统之间的数据交互问题提出一种新的解决方案:首先,我们认为,在一个多种异构CAD系统并存的协同设计工作环境中,异构CAD系统之间真正需要交互的内容是与协同设计有关的一些关键参数,而非CAD文档的全部信息,所以,本发明聚焦的问题在于,能够把一种CAD文档中的关键参数读取出来,更新到另外一种CAD文档中去,读取和更新不依赖文件格式的转换,不要求两种CAD系统的文件互操作;其次,针对CAD文档中关键参数的读取和更新,提供一种通用的、不需要针对具体CAD系统做二次开发的、普通CAD系统用户“所述即所得”的方法;第三,采用数据库作为异构的CAD系统之间数据交互的媒介,即从一种CAD文档中读取的关键参数被存储到数据库中去;数据库中的数据可以被更新到另一种CAD文档中去;同时,被采集到数据库中的CAD文档信息可以被产品数据管理系统、ERP系统等其它系统所用,在更广泛的领域发挥作用。
[0009] 前述“所述即所得”的含义为,定义一种“异构CAD文档信息读取规则模板”,用户将从CAD文档中读取关键参数的需要按读取规则模板规定的方式陈述出来,生成若干具体的“异构CAD文档信息读取规则”,执行此规则,即得到用户希望提取的关键参数;类似地,定义一种“异构CAD文档信息更新规则模板”,用户把欲将何值更新到CAD文档中的关键参数中去的需要按更新规则模板规定的方式陈述出来,形成若干具体的“异构CAD文档信息更新规则”,执行此规则,即实现了对CAD文档中关键参数的更新;
[0010] 本发明方案的这种“所述即所得”的特点,使得本方案克服了针对异构CAD系统数据交互的现有技术的缺点:1)用户根据需要,以一种类似自然语言的陈述方式生成规则,执行规则即得到用户希望的结果,不需要做任何针对CAD系统的二次开发工作;2)无论对哪一种CAD系统,规则的构成和执行方法是一致的,因而此方法针对各种异构的CAD系统是通用的;4)不需要做文件格式转换,不受各厂商对统一标准支持不充分的影响;4)规则的执行以用户可控的方式进行,数据交互可实时完成。
[0011] 本发明具体内容如下。
[0012] 异构CAD系统集成方法及装置
[0013] 一种异构CAD系统集成方法,用于实现对各种异构的CAD系统所生成的文件中信息的统一读取或更新,进而实现所述各种异构的CAD系统之间的数据交互、双向驱动和/或协同设计,其特征在于,该方法包括:
[0014] 定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为针对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;所述CAD文档为用户利用CAD系统所生成的文件;
[0015] 用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库中;
[0016] 从CAD文档中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0017] 把所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到信息呈现载体上或存储到数据库中;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0018] 所述CAD系统为计算机辅助设计系统;
[0019] 优选地,所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor、CATIA等;
[0020] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0021] 优选地,该方法还包括:
[0022] 定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0023] 用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库中;
[0024] 根据所述具体的异构CAD文档信息更新规则,读取所述具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体异构CAD文档信息更新规则的更新方式的规定进行处理,得到处理后的数据;所述处理后的数据为CAD文档的输入参数,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;
[0025] 按照所述具体的异构CAD文档信息更新规则中指定的更新方式,将所述CAD文档的输入参数更新到其它异构的CAD系统的CAD文档中,实现和其它异构的CAD系统的数据交互、双向驱动和/或协同设计。
[0026] 优选地,所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。
[0027] 所述Excel服务器填报网站网页表单为已公开的产品“勤哲Excel服务器”中填报网站模块中使用的,能够通过浏览器网页填报和显示的表单。
[0028] 优选地,所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。
[0029] 优选地,所述异构CAD文档信息更新规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息更新规则的条件。
[0030] 优选地,该方法还包括:
[0031] 规定表单的样式,并定义表单上的数据项;所述表单用于接收用户的输入,以及向用户展现存储在数据库中的CAD文档输出参数或用户输入的数据;所述定义表单上的数据项,为针对表单上的指定位置赋予用户指定的名称,并规定该位置上能够输入或显示的数据的类型;
[0032] 新建表单、打开和/或编辑已有表单、将表单上的CAD文档输出参数或用户输入的数据存入数据库。
[0033] 优选地,该方法还包括:
[0034] 向CAD系统的操作环境中增加自定义菜单或工具栏;
[0035] 响应用户在CAD系统的操作环境中对自定义菜单或工具栏的点击行为执行相应的操作,包括操作表单、提交CAD文档到数据库、或利用数据库中的数据更新CAD文档中的信息。
[0036] 优选地,所述的自定义菜单,包含退出选项、提交选项、操作选项;
[0037] 所述提交选项用于把当前CAD文档提交到数据库;或打开需要填报的表单,接收用户输入或在表单上显示所获取的CAD文档输出参数,并把表单上的信息保存到数据库;
[0038] 所述操作选项用于执行指定的具体的异构CAD文档信息更新规则,更新CAD文档信息;
[0039] 所述退出选项用于退出当前运行的CAD系统。
[0040] 与上述异构CAD系统集成方法相对应的一种异构CAD系统集成装置,用于实现对各种异构的CAD系统所生成的文件中信息的统一读取或更新,进而实现所述各种异构的CAD系统之间的数据交互、双向驱动和/或协同设计,其特征在于,该装置包括以下模块:
[0041] 异构CAD文档信息读取规则模板定义模块,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;所述CAD文档为用户利用CAD系统所生成的文件;
[0042] 异构CAD文档信息读取规则生成模块,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库中;
[0043] CAD文档访问器模块,用于对各种异构的CAD系统提供统一和通用的访问接口;所述CAD文档访问器模块包括CAD图元数据读取模块,用于从CAD文档中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0044] CAD文档输出参数获取模块,用于把所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到信息呈现载体上或存储到数据库中;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理。
[0045] 数据库,用于存储具体的异构CAD文档信息读取规则、CAD文档的输出参数和/或用户输入的数据;
[0046] 优选地,该装置还包括:
[0047] 异构CAD文档信息更新规则模板定义模块,用于定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0048] 异构CAD文档信息更新规则生成模块,用于用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库中;
[0049] CAD文档输入参数获取模块,用于根据所述具体的异构CAD文档信息更新规则,读取所述具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体异构CAD文档信息更新规则的更新方式的规定进行处理,得到处理后的数据;所述处理后的数据为CAD文档的输入参数,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;
[0050] CAD文档访问器模块包括CAD图元数据更新模块,用于按照所述具体的异构CAD文档信息更新规则中指定的更新方式,将结果数据更新到其它异构的CAD系统的CAD文档中,实现和其它异构的CAD系统的数据交互、双向驱动和/或协同设计。
[0051] 优选地,所述CAD文档访问器模块还包括一个或多个CAD系统接口操作模块;所述CAD系统接口操作模块,用于响应CAD图元数据读取模块和/或CAD图元数据更新模块对CAD文档的操作要求,将其转化为针对相应的CAD系统编程接口的操作序列并执行,并将结果反馈给CAD图元数据读取模块和/或CAD图元数据更新模块;所述相应的CAD系统,为多种异构的CAD系统之一,指用来生成CAD文档的CAD系统;
[0052] 优选地,所述CAD文档访问器中的CAD系统接口操作模块,用于对CAD文档执行打开或保存或关闭操作、在CAD系统的操作环境中增加自定义菜单或工具栏按钮,并响应自定义菜单或工具栏按钮的点击操作、呈现CAD文档数据结构、读取CAD文档中的信息或更新CAD文档中的信息;
[0053] 所述CAD文档数据结构为CAD图元表结构的集合;所述CAD图元表结构,指描述CAD图元表的名称及其它属性,以及CAD图元表中包含的子项目的名称、数据类型及其它属性。
[0054] 优选地,所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。
[0055] 优选地,所述异构CAD文档信息更新规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息更新规则的条件。
[0056] 优选地,该装置还包括表单操作模块,用于用于规定表单的样式、定义表单上的数据项、新建表单、打开和/或编辑已有表单、将表单上的CAD文档输出参数或用户输入的数据存入数据库;
[0057] 所述表单用于接收用户的输入,以及向用户展现存储在数据库中的CAD文档输出参数或用户输入的数据;所述定义表单上的数据项,为针对表单上的指定位置赋予用户指定的名称,并规定该位置上能够输入或显示的数据的类型。
[0058] 优选地,该装置还包括CAD文档操作客户端;所述CAD文档操作客户端,用于向CAD系统的操作环境中增加自定义菜单或工具栏;还用于响应用户在CAD系统的操作环境中对自定义菜单或工具栏的点击行为执行相应的操作,包括操作表单、提交CAD文档到数据库、或利用数据库中的数据更新CAD文档中的信息。
[0059] 异构CAD文档信息读取方法及装置
[0060] 一种异构CAD文档信息读取方法,该方法针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来生成CAD文档的CAD系统无关的读取方法,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该方法包括:
[0061] 1)定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;所述CAD文档为用户利用CAD系统所生成的文件;
[0062] 2)用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库中;
[0063] 3)向一个CAD文档访问器发送对用户指定的具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表的读取要求;所述CAD文档访问器,用于对各种异构的CAD系统提供统一和通用的访问接口;
[0064] 4)通过CAD文档访问器从CAD文档中读取所述指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0065] 5)从CAD文档访问器接收返回的CAD图元表数据,将其写入临时数据存储;
[0066] 6)把所述临时数据存储,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,得到处理后的数据;
[0067] 7)将处理后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定,放置到信息呈现载体上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理。
[0068] 所述CAD系统为计算机辅助设计系统;
[0069] 优选地,所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor、CATIA;
[0070] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0071] 优选地,所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。
[0072] 所述Excel服务器填报网站网页表单为已公开的产品“勤哲Excel服务器”中填报网站模块中使用的,能够通过浏览器网页填报和显示的表单。
[0073] 优选地,所述数据源为一个或多个表名的集合;表名为CAD图元表的表名,和/或数据库中的表名或视图名;优选地,所述数据源为一个或多个表名的集合以及这些表之间的关系描述;表名为CAD图元表的表名,和/或数据库中的表名或视图名;所述“表之间的关系描述”,描述了多个表的数据之间的关联关系,所述关联关系包括内连接、左外连接、右外连接或全连接;
[0074] 所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。
[0075] 优选地,所述填充方式为从数据源中提取出来并经过筛选条件过滤后的数据和信息呈现载体上指定位置之间的对应关系。
[0076] 优选地,所述填充方式为一个或多个填充项目的集合;所述填充项目,指一个表达式或一个三元组;所述三元组表示为item=(expr,op,target),其中item为三元组;expr为表达式;target为信息呈现载体上的指定位置;op为将expr的内容放置到target上的方式;所述方式包括填入、构造下拉选项或定位之一。
[0077] 优选地,所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。
[0078] 优选地,该方法还包括,把所述CAD文档输出参数存储到数据库中;
[0079] 优选地,所述CAD文档访问器包括CAD文档访问通用接口模块,一个或多个CAD系统接口操作模块;
[0080] 所述CAD文档访问器中的CAD系统接口操作模块,用于对CAD文档执行打开或保存或关闭操作、在CAD系统的操作环境中增加自定义菜单或工具栏按钮,并响应自定义菜单或工具栏按钮的点击操作、呈现CAD文档数据结构、读取CAD文档中的信息或更新CAD文档中的信息;
[0081] 所述CAD文档数据结构为CAD图元表结构的集合;所述CAD图元表结构,指描述CAD图元表的名称及其它属性,以及CAD图元表中包含的子项目的名称、数据类型及其它属性;
[0082] 所述CAD文档访问器中的CAD文档访问通用接口模块,用于响应接收到的对于CAD文档的操作要求,并把操作要求转交给与指定的CAD文档类型对应的CAD系统接口操作模块执行。
[0083] 与前述异构CAD文档信息读取方法相对应的一种异构CAD文档信息读取装置,针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来生成CAD文档的CAD系统无关的读取,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该装置包括如下模块:
[0084] 异构CAD文档信息读取规则模板定义模块,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;所述CAD文档为用户利用CAD系统所生成的文件;
[0085] 异构CAD文档信息读取规则生成模块,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库中;
[0086] 读取要求发送模块,用于向CAD文档访问器模块发送对用户指定的具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表的读取要求;
[0087] CAD文档访问器模块,对各种异构的CAD系统提供统一和通用的访问接口;其用于从CAD文档中读取所述指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0088] 数据接收模块,用于接收CAD文档访问器返回的CAD图元表数据,将其写入临时数据存储;
[0089] 数据查询模块,把所述临时数据存储,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,得到处理后的数据;
[0090] 数据呈现模块,用于将处理后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定,放置到信息呈现载体上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0091] 数据库,用于存储具体的异构CAD文档信息读取规则、CAD文档的输出参数和/或用户输入的数据;
[0092] 优选地,所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表之一;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。
[0093] 优选地,所述数据源为一个或多个表名的集合;表名为CAD图元表的表名,和/或数据库中的表名或视图名;优选地,所述数据源为一个或多个表名的集合以及这些表之间的关系描述;表名为CAD图元表的表名,和/或数据库中的表名或视图名;所述“表之间的关系描述”,描述了多个表的数据之间的关联关系,所述关联关系包括内连接、左外连接、右外连接或全连接;
[0094] 所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。
[0095] 优选地,所述填充方式为从数据源中提取出来并经过筛选条件过滤后的数据和信息呈现载体上指定位置之间的对应关系。
[0096] 优选地,所述填充方式为一个或多个填充项目的集合;所述填充项目,指一个表达式或一个三元组;所述三元组表示为item=(expr,op,target),其中item为三元组;expr为表达式;target为信息呈现载体上的指定位置;op为将expr的内容放置到target上的方式;所述方式包括填入、构造下拉选项或定位之一。
[0097] 优选地,所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。
[0098] 优选地,该装置还包括数据存储模块,用于把所述CAD文档输出参数存储到数据库中;
[0099] 优选地,所述CAD文档访问器模块包括CAD文档访问通用接口模块,一个或多个CAD系统接口操作模块;
[0100] 所述CAD文档访问器中的CAD系统接口操作模块,用于对CAD文档执行打开或保存或关闭操作、在CAD系统的操作环境中增加自定义菜单或工具栏按钮,并响应自定义菜单或工具栏按钮的点击操作、呈现CAD文档数据结构、读取CAD文档中的信息或更新CAD文档中的信息;
[0101] 所述CAD文档数据结构为CAD图元表结构的集合;所述CAD图元表指CAD文档中的指定信息;所述CAD图元表结构,指描述CAD文档中包含的指定信息的名称及其它属性,以及该指定信息中包含的子项目的名称、数据类型及其它属性;
[0102] 所述CAD文档访问器中的CAD文档访问通用接口模块,用于响应接收到的对于CAD文档的操作要求,并把操作要求转交给与指定的CAD文档类型对应的CAD系统接口操作模块执行。
[0103] 异构CAD文档信息更新方法及装置
[0104] 一种异构CAD文档信息更新方法,针对各种异构的CAD系统所生成的CAD文档提供一种一致的、和具体用来生成文档的CAD系统无关的对CAD文档中信息的更新方法,用于将从其它异构的CAD文档中获取的参数或来自数据库的参数更新到CAD文档中,以实现对CAD文档的外部参数驱动;该方法包括如下步骤:
[0105] 1)定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0106] 2)用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库中;
[0107] 3)读取指定的具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述指定的具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述指定的具体的异构CAD文档信息更新规则的更新方式的规定进行处理,得到结果数据集;所述结果数据集为CAD图元表数据,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0108] 4)当所述具体的异构CAD文档信息更新规则的更新操作为新增时,执行步骤5);
[0109] 当所述具体的异构CAD文档信息更新规则的更新操作为更新时,执行步骤6);
[0110] 当所述具体的异构CAD文档信息更新规则的更新操作为删除时,执行步骤7);
[0111] 5)将结果数据集中的CAD图元表数据增加到CAD文档中,然后执行步骤8);
[0112] 6)根据结果数据集修改CAD文档中的对应CAD图元表数据,然后执行步骤8)[0113] 7)删除CAD文档中的和结果数据集对应的CAD图元表数据;
[0114] 8)刷新CAD文档的显示。
[0115] 所述CAD系统为计算机辅助设计系统;
[0116] 优选地,所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor、CATIA;
[0117] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0118] 优选地,所述更新方式为一个或多个更新项目的集合;所述更新项目,指一个三元组,表示为item=(expr,op,target),其中item为三元组,expr为表达式;target为更新对象中的字段名,op为将expr的内容更新到target上的方式;所述方式包括填入或定位。
[0119] 优选地,所述异构CAD文档信息更新规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息更新规则的条件。
[0120] 优选地,该方法还包括,向CAD系统操作环境中增加自定义菜单或工具栏,通过响应增加的自定义菜单或工具栏的点击,确定要执行的具体的异构CAD文档信息更新规则。
[0121] 与前述异构CAD文档信息更新方法相对应的一种异构CAD文档信息更新装置,用于针对各种异构的CAD系统所生成的CAD文档提供一种一致的、和具体用来生成文档的CAD系统无关的对CAD文档中信息的更新,将从其它异构的CAD文档中获取的参数或来自数据库的参数更新到CAD文档中,以实现对CAD文档的外部参数驱动;该装置包括如下模块:
[0122] 异构CAD文档信息更新规则模板定义模块,用于定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0123] 异构CAD文档信息更新规则生成模块,用于用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库中;
[0124] 数据查询模块,读取指定的具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述指定的具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述指定的具体的异构CAD文档信息更新规则的更新方式的规定进行处理,得到结果数据集;所述结果数据集为CAD图元表数据,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0125] CAD图元数据新增模块,用于将结果数据集中的CAD图元表数据增加到CAD文档中;
[0126] CAD图元数据修改模块,用于根据结果数据集修改CAD文档中的对应CAD图元表数据;
[0127] CAD图元数据删除模块,用于删除CAD文档中的和结果数据集对应的CAD图元表数据;
[0128] CAD文档显示刷新模块,用于刷新CAD文档的显示。
[0129] 优选地,所述更新方式为一个或多个更新项目的集合;所述更新项目,指一个三元组,表示为item=(expr,op,target),其中item为三元组,expr为表达式;target为更新对象中的字段名,op为将expr的内容更新到target上的方式;所述方式包括填入或定位。
[0130] 优选地,所述异构CAD文档信息更新规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息更新规则的条件。
[0131] 优选地,该装置还包括CAD文档操作客户端,用于向CAD系统的操作环境中增加自定义菜单或工具栏,通过响应增加的自定义菜单或工具栏的点击,确定要执行的具体的异构CAD文档信息更新规则;
[0132] 读取CAD图元表数据的一种实现方法
[0133] 该实现方法仅仅是读取CAD图元表数据的其中一种实现方法的示例,并不对权利要求的保护范围产生影响。
[0134] 与本发明所述异构CAD系统集成方法或异构CAD文档信息读取方法相对应的一种通过CAD文档访问器模块读取CAD文档信息的方法,包括如下步骤:
[0135] 1)接收读取数据的要求;所述读取数据的要求包括三部分:要读取的CAD文档类型、一个或多个要读取的CAD图元表表名、读取源文件名;所述CAD文档类型,指CAD文档由何种CAD系统生成;所述读取源文件名,指从哪个CAD文档文件中读取数据,当读取源文件名为空,表示当前正打开的CAD文档;
[0136] 2)根据指定的CAD文档类型,初始化与此类CAD系统对应的CAD系统接口操作模块;
[0137] 3)CAD系统接口操作模块检查与指定的CAD文档类型对应的CAD系统是否在运行,如果不在运行,执行步骤4),否则执行步骤5);
[0138] 4)CAD系统接口操作模块启动与指定的CAD文档类型对应的CAD系统;
[0139] 5)CAD系统接口操作模块检查指定的读取源文件是否已打开,如果未打开,执行步骤6),否则执行步骤7);
[0140] 6)CAD系统接口操作模块在CAD系统中打开指定的读取源文件;
[0141] 7)CAD系统接口操作模块调用CAD系统二次开发接口,根据指定的CAD图元表表名,从打开的CAD文档中读取指定的CAD图元表数据;
[0142] 8)CAD系统接口操作模块对读取到的CAD图元表数据进行整编,整编为和具体CAD系统无关的统一表示形式,并附加需要的信息;所述整编为对给定的信息,在不改变内容的前提下,改变其在计算机内的表示方式和/或其子项目的组合方式;
[0143] 9)将整编后的CAD图元表数据返回。
[0144] 本发明针对异构CAD系统之间的数据交互问题提出一种新的解决方案;本方案发明者认为,在一个多种异构CAD系统并存的协同设计工作环境中,异构CAD系统之间真正需要交互的内容是与协同设计有关的一些文档中的关键参数,而非CAD文档的全部信息,所以,本发明聚焦的问题在于,能够把一种CAD文档中的关键参数读取出来,更新到另外一种CAD文档中去;读取和更新并不依赖文件格式转换。
[0145] 本发明针对CAD文档中关键参数的读取和更新,提供一种通用的、不需要针对具体CAD系统做二次开发的、普通CAD系统用户“所述即所得”的方法,并采用数据库作为异构的CAD系统之间数据交互的媒介;用户能够通过生成异构CAD文档信息读取规则或异构CAD文档信息更新规则(以下简称“规则”),任意灵活地指定需要从CAD文档中获取或需要向CAD文档写入的关键参数;生成的规则可按用户指定的方式被执行,完成对CAD文档中关键参数的读写操作;其优点和用户价值在于:
[0146] 本发明方案使得用户能够实现异构的CAD系统之间的数据交互,进而实现异构的CAD系统之间的协同工作,此交互和协同并非通过多个CAD系统的文件互操作实现,亦不依赖各CAD厂商对共同标准的支持;
[0147] 本发明方案对异构的CAD系统之间的数据交互的实现,不需要做针对CAD系统的二次开发工作,不需要专门人才,CAD系统的普通用户即可胜任;从而本发明方案是简易的、低成本的,极大提高异构CAD系统协同工作的效率,可以被CAD系统的使用单位普遍应用;
[0148] 规则的执行按用户指定的应用时机发生,包括,可以和文档的操作绑定,比如指定在文档打开的时候或保存的时候执行;可以和数据的变化绑定,比如在表单上某项数据改变的时候执行;也可以由用户随时要求执行;从而,本发明的方案所做到的异构CAD系统之间的数据交互是自动的、实时的;
[0149] 按本发明方案,用户只需要按照规则模板输入模板规定的各部分内容,即可生成具体的规则,规则生成后即可被执行,从而对于用户的异构CAD系统之间数据交互的需求变化能够做到迅速响应;
[0150] 本发明方案对各种类型的CAD系统通用,如用户增加或更换所使用的CAD系统,可用本发明方案将新的CAD系统很容易地纳入到多种异构CAD系统的协同工作环境中;
[0151] 本发明方案采用数据库作为异构的CAD系统之间数据交互的媒介,被采集到数据库中的CAD文档信息可以被产品数据管理系统、ERP系统等其它系统所用,在更广泛的领域发挥作用;从而,本发明方案可作为产品数据管理系统、计算机集成制造系统中的一个基础组成部分,在产品设计、制造、采购、财务、营销等围绕产品的多领域协同的集成系统中发挥重要作用。
[0152] 本发明方法的各步骤之间并非为严格固定的时序关系。

附图说明

[0153] 图1是一个异构CAD系统集成方法实施例的数据流程图
[0154] 图2是一个异构CAD系统集成方法实施例的数据流程图
[0155] 图3是一个异构CAD系统集成方法实施例的数据流程图
[0156] 图4是一个异构CAD系统集成装置实施例的结构图
[0157] 图5是一个异构CAD系统集成装置实施例的结构图
[0158] 图6是一个异构CAD系统集成装置实施例的结构图
[0159] 图7是一个异构CAD文档信息读取方法实施例的流程图
[0160] 图8是一个异构CAD文档信息读取装置实施例结构图
[0161] 图9是一个异构CAD文档信息更新方法实施例的流程图
[0162] 图10是一个异构CAD文档信息更新装置实施例结构图
[0163] 图11是一个异构CAD文档信息读取方法实施例的流程图
[0164] 图12是一个异构CAD文档信息读取装置实施例结构图
[0165] 图13是一个CAD文档访问器模块读取CAD文档信息的方法实施例的流程图[0166] 图14是一个异构CAD系统集成装置实施例的结构图
[0167] 图15是一个异构CAD系统集成装置实施例的结构图
[0168] 图16是一个CAD文档操作客户端的界面示意图

具体实施方式

[0169] 以下结合附图,说明本发明的实施例。
[0170] 异构CAD系统集成方法及装置实施例1
[0171] 图1为一种异构CAD系统集成方法实施例的数据流程图,用于实现对各种异构的CAD系统所生成的文件中信息的统一读取或更新,进而实现所述各种异构的CAD系统之间的数据交互、双向驱动和/或协同设计;该方法包括:
[0172] 步骤101,定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0173] 步骤102,用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库103中;
[0174] 步骤104,从CAD文档105中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0175] 步骤106,把所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到信息呈现载体107上或存储到数据库103中;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0176] 本方法上述步骤之间没有严格固定的时序关系,图1中的箭头,表示的是各步骤之间数据传递关系,而非时序关系。
[0177] 本实施例中所述CAD系统为计算机辅助设计系统;所述CAD文档为由用户利用各种异构的CAD系统所生成的文件;所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor或CATIA等;
[0178] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0179] 所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表之一;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单;所述Excel服务器填报网站网页表单为已公开的产品“勤哲Excel服务器”中填报网站模块中使用的,能够通过浏览器网页填报和显示的表单;
[0180] 所述异构CAD文档信息读取规则模板,还包括应用时机;所述应用时机,指满足什么条件或用户进行了什么操作的情况下此规则将被执行,进行实际的数据读取;
[0181] 例如,下面是一个具体的异构CAD文档信息读取规则的示例:
[0182] 文档类型:AutoCAD
[0183] 数据源:当前文档.线
[0184] 筛选条件:线宽=5
[0185] 填充方式:
[0186] “最大值(线.长度)”---->(填入)“输出参数”表单上的“轴距”字段[0187] 应用时机:表单打开后、表单保存前、用户手动执行
[0188] 该示例所表达的含义为:用户要求从当前正在编辑的AutoCAD文档中的所有的“线”中选取“线宽=5”的那些“线”,计算这些线的长度的最大值,把这个最大值放置到一个事先定义好的名为“输出参数”的表单上“轴距”字段的位置上;该规则将在“表单打开后”、“表单保存前”被自动执行,或者由用户手动执行。
[0189] 请继续参看图4,为和上述方法相对应的一个异构CAD系统集成装置实施结构图;在本实施例中,一个异构CAD系统集成装置包括:
[0190] 异构CAD文档信息读取规则模板定义模块401,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0191] 异构CAD文档信息读取规则生成模块402,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库403中;
[0192] CAD文档防问器模块404,用于对各种异构的CAD系统提供统一和通用的访问接口;其中包括CAD图元数据读取模块441,用于从CAD文档中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;请参看图13,为CAD文档访问器模块读取CAD文档信息的方法流程图。
[0193] CAD文档输出参数获取模块405,用于把所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到信息呈现载体上或存储到数据库403中;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0194] 数据库403,用于存储具体的异构CAD文档信息读取规则、CAD文档的输出参数和/或用户输入的数据;
[0195] 异构CAD系统集成方法及装置实施例2
[0196] 图2为一种异构CAD系统集成方法实施例的数据流程图,用于实现对各种异构的CAD系统所生成的文件中信息的统一读取或更新,进而实现所述各种异构的CAD系统之间的数据交互、双向驱动和/或协同设计;该方法包括:
[0197] 步骤201,定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0198] 步骤202,用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库203中;
[0199] 步骤204,从CAD文档205中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0200] 步骤206,把所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到表单207上呈现给用户;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0201] 步骤208,将表单207上的数据保存到数据库203中;
[0202] 本方法上述步骤之间没有严格固定的时序关系,图2中的箭头,表示的是各步骤之间数据传递关系,而非时序关系。
[0203] 本实施例中所述CAD系统为计算机辅助设计系统;所述CAD文档为由用户利用各种异构的CAD系统所生成的文件;所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor或CATIA;
[0204] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0205] 所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表之一;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单;所述Excel服务器填报网站网页表单为已公开的产品“勤哲Excel服务器”中填报网站模块中使用的,能够通过浏览器网页填报和显示的表单;
[0206] 所述异构CAD文档信息读取规则模板,还包括应用时机;所述应用时机,指满足什么条件或用户进行了什么操作的情况下此规则将被执行,进行实际的数据读取;
[0207] 例如,下面是一个具体的异构CAD文档信息读取规则的示例:
[0208] 文档类型:AutoCAD
[0209] 数据源:当前文档.线
[0210] 筛选条件:线宽=5
[0211] 填充方式:
[0212] “最大值(线.长度)”---->(填入)“输出参数”表单上的“轴距”字段[0213] 应用时机:表单打开后、表单保存前、用户手动执行
[0214] 该示例所表达的含义为:用户要求从当前正在编辑的AutoCAD文档中的所有的“线”中选取“线宽=5”的那些“线”,计算这些线的长度的最大值,把这个最大值放置到一个事先定义好的名为“输出参数”的表单上“轴距”字段的位置上;该规则将在“表单打开后”、“表单保存前”被自动执行,或者由用户手动执行。
[0215] 请继续参看图5,为和上述方法相对应的一个异构CAD系统集成装置实施结构图;在本实施例中,一个异构CAD系统集成装置包括:
[0216] 异构CAD文档信息读取规则模板定义模块501,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0217] 异构CAD文档信息读取规则生成模块502,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库503中;
[0218] CAD文档访问器模块504,用于对各种异构的CAD系统提供统一和通用的访问接口;其中包括CAD图元数据读取模块541,用于从CAD文档中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;请参看图13,为CAD文档访问器模块读取CAD文档信息的方法流程图。
[0219] CAD文档输出参数获取模块505,用于把所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到表单上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理。
[0220] 表单操作模块506,用于将表单上的数据保存到数据库503中;
[0221] 数据库503,用于存储具体的异构CAD文档信息读取规则、CAD文档的输出参数和/或用户输入的数据;
[0222] 所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单;所述定义表单包括规定表单的样式,并定义表单上的数据项;所述定义表单上的数据项,为针对表单上的指定位置赋予用户指定的名称,并规定该位置上可以输入或显示的数据的类型;
[0223] 所述Excel服务器填报网站网页表单为已公开的产品“勤哲Excel服务器”中填报网站模块中使用的,能够通过浏览器网页填报和显示的表单。
[0224] 异构CAD系统集成方法及装置实施例3
[0225] 图3为一种异构CAD系统集成方法实施例的数据流程图,用于实现对各种异构的CAD系统所生成的文件中信息的统一读取或更新,进而实现所述各种异构的CAD系统之间的数据交互、双向驱动和/或协同设计;该方法包括:
[0226] 步骤301,定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0227] 步骤302,用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库303中;
[0228] 步骤304,从一种CAD系统X所生成的CAD文档305中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0229] 步骤306,把所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到信息呈现载体307上或存储到数据库303中;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0230] 步骤308,定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0231] 步骤309,用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库303中;
[0232] 步骤310,根据所述具体的异构CAD文档信息更新规则,读取所述具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体异构CAD文档信息更新规则的更新方式的规定进行处理,得到处理后的数据;所述处理后的数据为CAD文档的输入参数,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;
[0233] 步骤311,按照所述具体的异构CAD文档信息更新规则中指定的更新方式,将所述CAD文档的输入参数更新到另一种CAD系统Y所生成的CAD文档312中,实现两个异构的CAD系统X和Y之间的数据交互、双向驱动和/或协同设计。
[0234] 所述CAD系统X和Y是不同的CAD系统,例如CAD系统X是AutoCAD,CAD系统Y是Pro/E。
[0235] 本方法上述步骤之间没有严格固定的时序关系,图3中的箭头,表示的是各步骤之间数据传递关系,而非时序关系。
[0236] 本实施例中所述CAD系统为计算机辅助设计系统;所述CAD文档为由用户利用各种异构的CAD系统所生成的文件;所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor或CATIA;
[0237] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0238] 所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表之一;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单;所述Excel服务器填报网站网页表单为已公开的产品“勤哲Excel服务器”中填报网站模块中使用的,能够通过浏览器网页填报和显示的表单;
[0239] 所述异构CAD文档信息读取规则模板,还包括应用时机;所述应用时机,指满足什么条件或用户进行了什么操作的情况下此规则将被执行,进行实际的数据读取;
[0240] 例如,下面是一个具体的异构CAD文档信息读取规则的示例:
[0241] 文档类型:AutoCAD
[0242] 数据源:当前文档.线
[0243] 筛选条件:线宽=5
[0244] 填充方式:
[0245] “最大值(线.长度)”---->(填入)“输出参数”表单上的“轴距”字段[0246] 应用时机:表单打开后、表单保存前、用户手动执行
[0247] 该示例所表达的含义为:用户要求从当前正在编辑的AutoCAD文档中的所有的“线”中选取“线宽=5”的那些“线”,计算这些线的长度的最大值,把这个最大值放置到一个事先定义好的名为“输出参数”的表单上“轴距”字段的位置上;该规则将在“表单打开后”、“表单保存前”被自动执行,或者由用户手动执行。
[0248] 所述异构CAD文档信息更新规则模板,还包括应用时机;所述应用时机,指满足什么条件或用户进行了什么操作的情况下此规则将被执行,进行实际的数据更新;
[0249] 例如,下面是一个具体的异构CAD文档信息更新规则的一个示例:
[0250] 文档类型:Pro/E
[0251] 更新对象:当前文档.参数
[0252] 更新方式:新增
[0253] 数据源:,产品标准参数表
[0254] 筛选条件:产品标准参数表.产品型号=“A5”
[0255] 更新方式:
[0256] 当前文档.参数.参数名=产品标准参数表.参数名称
[0257] 当前文档.参数.参数值=产品标准参数表.设计参考值
[0258] 应用时机:文档打开时、用户手动执行
[0259] 该示例所表达的含义为,用户要求将数据库中存储的产品设计参数增加到当前正在打开的Pro/E文档中,具体要求是,从数据库中的“产品标准参数表”中查询满足产品型号=“A5”这一条件的全部记录,针对其每条记录,向当前Pro/E文档的“参数”中增加一项,其参数赋值为该记录的“参数名称”字段,其参数值赋值为该记录的“设计参考值”字段;该规则在Pro/E文档被打开时自动执行,或由用户手动执行;
[0260] 请继续参看图6,为和上述方法相对应的一个异构CAD系统集成装置实施结构图;在本实施例中,一个异构CAD系统集成装置包括:
[0261] 异构CAD文档信息读取规则模板定义模块601,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0262] 异构CAD文档信息读取规则生成模块602,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库603中;
[0263] CAD文档访问器模块604,用于对各种异构的CAD系统提供统一和通用的访问接口;其中包括CAD图元数据读取模块641和CAD图元数据更新模块642;
[0264] CAD图元数据读取模块641,用于从CAD文档中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;请参看图13,为CAD文档访问器模块读取CAD文档信息的方法流程图;
[0265] CAD文档输出参数获取模块605,用于把通过CAD图元数据读取模块641读取到的所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到信息呈现载体上呈现给用户或存储到数据库603中;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0266] 异构CAD文档信息更新规则模板定义模块607,用于定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0267] 异构CAD文档信息更新规则生成模块608,用于用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库603中;
[0268] CAD文档输入参数获取模块609,用于根据所述具体的异构CAD文档信息更新规则,读取所述具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体异构CAD文档信息更新规则的更新方式的规定进行处理,得到处理后的数据;所述处理后的数据为CAD文档的输入参数,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;
[0269] CAD图元数据更新模块642,用于按照所述具体的异构CAD文档信息更新规则中指定的更新方式,将通过CAD文档输入参数获取模块609得到的结果数据更新到其它异构的CAD系统的CAD文档中,实现和其它异构的CAD系统的数据交互、双向驱动和/或协同设计;
[0270] 数据库603,用于存储具体的异构CAD文档信息读取规则、异构CAD文档信息更新规则、CAD文档的输出参数和/或用户输入的数据;
[0271] 异构CAD系统集成装置实施例4
[0272] 图14是一个异构CAD系统集成装置实施结构图;在本实施例中,一个异构CAD系统集成装置包括:
[0273] 异构CAD文档信息读取规则模板定义模块1401,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0274] 异构CAD文档信息读取规则生成模块1402,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库1403中;
[0275] CAD文档访问器模块1404,用于对各种异构的CAD系统提供统一和通用的访问接口;其中包括CAD图元数据读取模块1441和CAD图元数据更新模块1442;
[0276] CAD图元数据读取模块1441,用于从CAD文档中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;请参看图13,为CAD文档访问器模块读取CAD文档信息的方法流程图;
[0277] CAD文档输出参数获取模块1405,用于把通过CAD图元数据读取模块1441读取到的所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到表单上,通过表单操作模块1406展现给用户;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0278] 表单操作模块1406用于定义表单、新建或打开表单、将CAD文档输出参数在表单中显示、将表单上的数据存储到数据库1403中;
[0279] 异构CAD文档信息更新规则模板定义模块1407,用于定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0280] 异构CAD文档信息更新规则生成模块1408,用于用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库1403中;
[0281] CAD文档输入参数获取模块1409,用于根据所述具体的异构CAD文档信息更新规则,读取所述具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体异构CAD文档信息更新规则的更新方式的规定进行处理,得到处理后的数据;所述处理后的数据为CAD文档的输入参数,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;
[0282] CAD图元数据更新模块1442,用于按照所述具体的异构CAD文档信息更新规则中指定的更新方式,将通过CAD文档输入参数获取模块1409得到的结果数据更新到其它异构的CAD系统的CAD文档中,实现和其它异构的CAD系统的数据交互、双向驱动和/或协同设计;
[0283] 数据库1403,用于存储具体的异构CAD文档信息读取规则、异构CAD文档信息更新规则、CAD文档的输出参数和/或用户输入的数据;
[0284] CAD文档操作客户端1410,用于向CAD系统的操作环境中增加自定义菜单或工具栏;还用于响应用户在CAD系统的操作环境中对自定义菜单或工具栏的点击行为执行相应的操作,包括通过表单操作模块1406操作表单、提交CAD文档到数据库,或通过CAD文档输入参数获取模块1409执行用户指定的CAD文档信息更新规则,更新CAD文档中的信息;图16是CAD文档操作客户端的界面示意图。
[0285] 异构CAD系统集成装置实施例5
[0286] 图15是一个异构CAD系统集成装置实施结构图;在本实施例中,一个异构CAD系统集成装置包括:
[0287] 异构CAD文档信息读取规则模板定义模块1501,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0288] 异构CAD文档信息读取规则生成模块1502,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库1503中;
[0289] CAD文档访问器模块1504,用于对各种异构的CAD系统提供统一和通用的访问接口;其中包括CAD图元数据读取模块1541和CAD图元数据更新模块1542,一个或多个CAD系统接口操作模块1543;所述CAD系统接口操作模块和具体的某种CAD系统相关,用于通过该CAD系统提供的二次开发接口实现对由该CAD系统生成的CAD文档的操作;在本实施例中,包含针对三种不同的CAD系统的CAD系统接口操作模块,分别为,针对Pro/E系统的Pro/E系统接口操作模块、针对AutoCAD系统的AutoCAD系统接口操作模块、针对Solidworks系统的Solidworks系统接口操作模块;
[0290] CAD图元数据读取模块1541,用于从CAD文档中读取所述具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;请参看图13,为CAD文档访问器模块读取CAD文档信息的方法流程图;
[0291] CAD文档输出参数获取模块1505,用于把通过CAD图元数据读取模块1541读取到的所述指定的CAD图元表数据,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,将处理后的数据放置到表单上,通过表单操作模块1506展现给用户;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0292] 表单操作模块1506用于定义表单、新建或打开表单、将CAD文档输出参数在表单中显示、将表单上的数据存储到数据库1503中;
[0293] 异构CAD文档信息更新规则模板定义模块1507,用于定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0294] 异构CAD文档信息更新规则生成模块1508,用于用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库1503中;
[0295] CAD文档输入参数获取模块1509,用于根据所述具体的异构CAD文档信息更新规则,读取所述具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体异构CAD文档信息更新规则的更新方式的规定进行处理,得到处理后的数据;所述处理后的数据为CAD文档的输入参数,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;
[0296] CAD图元数据更新模块1542,用于按照所述具体的异构CAD文档信息更新规则中指定的更新方式,将通过CAD文档输入参数获取模块1509得到的结果数据更新到其它异构的CAD系统的CAD文档中,实现和其它异构的CAD系统的数据交互、双向驱动和/或协同设计;
[0297] 数据库1503,用于存储具体的异构CAD文档信息读取规则、异构CAD文档信息更新规则、CAD文档的输出参数和/或用户输入的数据;
[0298] CAD系统接口操作模块1543,用于响应CAD图元数据读取模块1541和/或CAD图元数据更新模块1542对CAD文档的操作要求,将其转化为针对相应的CAD系统编程接口的操作序列并执行,并将结果反馈给CAD图元数据读取模块1541和/或CAD图元数据更新模块1542。
[0299] 异构CAD文档信息读取方法及装置实施例1
[0300] 图7是一种异构CAD文档信息读取方法实施例的流程图;该方法针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来于生成CAD文档的CAD系统无关的读取方法,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该方法包括:
[0301] 步骤701,定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0302] 步骤702,用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库中;
[0303] 步骤703,向一个CAD文档访问器发送对用户指定的具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表的读取要求;所述CAD文档访问器,用于对各种异构的CAD系统提供统一和通用的访问接口;
[0304] 步骤704,通过CAD文档访问器从CAD文档中读取所述指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0305] 步骤705,从CAD文档访问器接收返回的CAD图元表数据,将其写入临时数据存储;
[0306] 步骤706,把所述临时数据存储,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,得到处理后的数据;
[0307] 步骤707,将处理后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定,放置到信息呈现载体上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理。
[0308] 其中步骤702和步骤703并非时间上的紧密接续,而是逻辑上的先后依赖------步骤703需要使用步骤702的结果,即其所生成的具体的异构CAD文档信息读取规则;在图7中,虚线箭头表示数据的流向,实线的箭头表示控制的流向,即各步骤的执行顺序。
[0309] 所述CAD系统为计算机辅助设计系统;所述CAD文档为用户利用CAD系统所生成的文件;所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor、CATIA;
[0310] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0311] 所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。
[0312] 所述Excel服务器填报网站网页表单为已公开的产品“勤哲Excel服务器”中填报网站模块中使用的,能够通过浏览器网页填报和显示的表单。
[0313] 所述数据源为一个或多个表名的集合以及可选地,这些表之间的关系描述;表名为CAD图元表的表名,和/或数据库中的表名或视图名;所述“表之间的关系描述”,描述了多个表的数据之间的关联关系,所述关联关系包括内连接、左外连接、右外连接或全连接;
[0314] 所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。
[0315] 所述填充方式为数据源中提取出来的信息和信息呈现载体上指定位置之间的对应关系。
[0316] 所述填充方式为一个或多个填充项目的集合;所述填充项目,指一个表达式或一个三元组;所述三元组表示为item=(expr,op,target),其中item为三元组;expr为表达式;target为信息呈现载体上的指定位置;op为将expr的内容放置到target上的方式;所述方式包括填入、构造下拉选项或定位之一。
[0317] 所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。
[0318] 例如,下面是一个具体的异构CAD文档信息读取规则的示例:
[0319] 文档类型:AutoCAD
[0320] 数据源:当前文档.线
[0321] 筛选条件:线宽=5
[0322] 填充方式:
[0323] “最大值(线.长度)”---->(填入)“输出参数”表单上的“轴距”字段[0324] 应用时机:表单打开后、表单保存前、用户手动执行
[0325] 该示例所表达的含义为:用户要求从当前正在编辑的AutoCAD文档中的所有的“线”中选取“线宽=5”的那些“线”,计算这些线的长度的最大值,把这个最大值放置到一个事先定义好的名为“输出参数”的表单上“轴距”字段的位置上;该规则将在“表单打开后”、“表单保存前”被自动执行,或者由用户手动执行。
[0326] 请继续参看图8,为与上述异构CAD文档信息读取方法相对应的一个异构CAD文档信息读取装置实施例的结构图;该装置针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来于生成CAD文档的CAD系统无关的读取,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该装置包括如下模块:
[0327] 异构CAD文档信息读取规则模板定义模块801,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;所述CAD文档为用户利用CAD系统所生成的文件;
[0328] 异构CAD文档信息读取规则生成模块802,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库803中;
[0329] 读取要求发送模块804,用于向CAD文档访问器模块805发送对用户指定的具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表的读取要求;
[0330] CAD文档访问器模块805,对各种异构的CAD系统提供统一和通用的访问接口;用于从CAD文档中读取所述指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0331] 数据接收模块806,用于接收CAD文档访问器805返回的CAD图元表数据,将其写入临时数据存储;
[0332] 数据查询模块807,把所述临时数据存储,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,得到处理后的数据;
[0333] 数据呈现模块808,用于将处理后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定,放置到信息呈现载体上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0334] 数据库803,用于存储具体的异构CAD文档信息读取规则、CAD文档的输出参数和/或用户输入的数据;
[0335] 所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表之一;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。
[0336] 所述数据源为一个或多个表名的集合以及可选地,这些表之间的关系描述;表名为CAD图元表的表名,和/或数据库中的表名或视图名;所述“表之间的关系描述”,描述了多个表的数据之间的关联关系,所述关联关系包括内连接、左外连接、右外连接或全连接;
[0337] 所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。
[0338] 所述填充方式为数据源中提取出来的信息和信息呈现载体上指定位置之间的对应关系。
[0339] 所述填充方式为一个或多个填充项目的集合;所述填充项目,指一个表达式或一个三元组;所述三元组表示为item=(expr,op,target),其中item为三元组;expr为表达式;target为信息呈现载体上的指定位置;op为将expr的内容放置到target上的方式;所述方式包括填入、构造下拉选项或定位之一。
[0340] 所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。
[0341] 异构CAD文档信息读取方法及装置实施例2
[0342] 图11是一种异构CAD文档信息读取方法实施例的流程图;该方法针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来于生成CAD文档的CAD系统无关的读取方法,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该方法包括:
[0343] 步骤1101,定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;
[0344] 步骤1102,用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库中;
[0345] 步骤1103,向一个CAD文档访问器发送对用户指定的具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表的读取要求;所述CAD文档访问器,用于对各种异构的CAD系统提供统一和通用的访问接口;
[0346] 步骤1104,通过CAD文档访问器从CAD文档中读取所述指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0347] 步骤1105,从CAD文档访问器接收返回的CAD图元表数据,将其写入临时数据存储;
[0348] 步骤1106,把所述临时数据存储,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,得到处理后的数据;
[0349] 步骤1107,将处理后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定,放置到信息呈现载体上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0350] 步骤1108,将信息呈现载体上的CAD文档输出参数存储到数据库中。
[0351] 其中步骤1102和步骤1103并非时间上的紧密接续,而是逻辑上的先后依赖------步骤1103需要使用步骤1102的结果,即其所生成的具体的异构CAD文档信息读取规则;在图11中,虚线箭头表示数据的流向,实线的箭头表示控制的流向,即各步骤的执行顺序。
[0352] 所述CAD系统为计算机辅助设计系统;所述CAD文档为用户利用CAD系统所生成的文件;所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor、CATIA;
[0353] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0354] 所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。
[0355] 所述Excel服务器填报网站网页表单为已公开的产品“勤哲Excel服务器”中填报网站模块中使用的,能够通过浏览器网页填报和显示的表单。
[0356] 所述数据源为一个或多个表名的集合以及可选地,这些表之间的关系描述;表名为CAD图元表的表名,和/或数据库中的表名或视图名;所述“表之间的关系描述”,描述了多个表的数据之间的关联关系,所述关联关系包括内连接、左外连接、右外连接或全连接;
[0357] 所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。
[0358] 所述填充方式为数据源中提取出来的信息和信息呈现载体上指定位置之间的对应关系。
[0359] 所述填充方式为一个或多个填充项目的集合;所述填充项目,指一个表达式或一个三元组;所述三元组表示为item=(expr,op,target),其中item为三元组;expr为表达式;target为信息呈现载体上的指定位置;op为将expr的内容放置到target上的方式;所述方式包括填入、构造下拉选项或定位之一。
[0360] 所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。
[0361] 例如,下面是一个具体的异构CAD文档信息读取规则的示例:
[0362] 文档类型:AutoCAD
[0363] 数据源:当前文档.线
[0364] 筛选条件:线宽=5
[0365] 填充方式:
[0366] “最大值(线.长度)”---->(填入)“输出参数”表单上的“轴距”字段[0367] 应用时机:表单打开后、表单保存前、用户手动执行
[0368] 该示例所表达的含义为:用户要求从当前正在编辑的AutoCAD文档中的所有的“线”中选取“线宽=5”的那些“线”,计算这些线的长度的最大值,把这个最大值放置到一个事先定义好的名为“输出参数”的表单上“轴距”字段的位置上;该规则将在“表单打开后”、“表单保存前”被自动执行,或者由用户手动执行。
[0369] 请继续参看图12,为与上述异构CAD文档信息读取方法相对应的一个异构CAD文档信息读取装置实施例的结构图;该装置针对各种异构的CAD系统生成的CAD文档提供一种一致的、和具体用来于生成CAD文档的CAD系统无关的读取,用于从CAD文档中获取和其它异构的CAD系统所生成文档之间进行数据交互所需要的关键参数;该装置包括如下模块:
[0370] 异构CAD文档信息读取规则模板定义模块1201,用于定义异构CAD文档信息读取规则模板;该模板包括数据源、筛选条件、填充方式;所述数据源包括CAD文档中的CAD图元表、数据库中存储的数据和/或用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述填充方式限定了针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,以及将运算后的结果放置到信息呈现载体上或存储到数据库中的方式;所述CAD文档为用户利用CAD系统所生成的文件;
[0371] 异构CAD文档信息读取规则生成模块1202,用于用户根据异构CAD文档信息读取规则模板,为异构CAD文档信息读取规则模板的各部分赋值,生成具体的异构CAD文档信息读取规则,并将其存储到数据库1203中;
[0372] 读取要求发送模块1204,用于向CAD文档访问器模块1205发送对用户指定的具体的异构CAD文档信息读取规则的数据源部分所指定的CAD图元表的读取要求;
[0373] CAD文档访问器模块1205,对各种异构的CAD系统提供统一和通用的访问接口;用于从CAD文档中读取所述指定的CAD图元表数据;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0374] 数据接收模块1206,用于接收CAD文档访问器1205返回的CAD图元表数据,将其写入临时数据存储;
[0375] 数据查询模块1207,把所述临时数据存储,与所述具体的异构CAD文档信息读取规则的数据源部分所指定的数据库中存储的数据和/或用户输入的数据组合,按照所述具体的异构CAD文档信息读取规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定进行处理,得到处理后的数据;
[0376] 数据呈现模块1208,用于将处理后的数据按照所述具体的异构CAD文档信息读取规则中的填充方式的规定,放置到信息呈现载体上;所述处理后的数据为CAD文档的输出参数,用于和其它异构的CAD系统进行数据交互,或用于产品数据管理;
[0377] 数据存储模块1209,用于将信息呈现载体上的CAD文档输出参数存储到数据库1203中;
[0378] 数据库1203,用于存储具体的异构CAD文档信息读取规则、CAD文档的输出参数和/或用户输入的数据;
[0379] 所述信息呈现载体用于将从CAD文档中提取出的数据提供或展现给用户,为表单、窗口、电子邮件、手机短信或数据库中的表之一;所述表单为Excel电子表格、WPS电子表格、OpenOffice电子表格、Excel服务器填报网站网页表单或能通过电脑或手持设备输入并显示的电子表单。
[0380] 所述数据源为一个或多个表名的集合以及可选地,这些表之间的关系描述;表名为CAD图元表的表名,和/或数据库中的表名或视图名;所述“表之间的关系描述”,描述了多个表的数据之间的关联关系,所述关联关系包括内连接、左外连接、右外连接或全连接;
[0381] 所述筛选条件为一个结果为布尔型的表达式,其中包含数据源中的表中的字段。
[0382] 所述填充方式为数据源中提取出来的信息和信息呈现载体上指定位置之间的对应关系。
[0383] 所述填充方式为一个或多个填充项目的集合;所述填充项目,指一个表达式或一个三元组;所述三元组表示为item=(expr,op,target),其中item为三元组;expr为表达式;target为信息呈现载体上的指定位置;op为将expr的内容放置到target上的方式;所述方式包括填入、构造下拉选项或定位之一。
[0384] 所述异构CAD文档信息读取规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息读取规则的条件。
[0385] 异构CAD文档信息更新方法及装置实施例
[0386] 图9是一种异构CAD文档信息更新方法实施例的流程图,该方法针对各种异构的CAD系统所生成的CAD文档提供一种一致的、和具体用来生成文档的CAD系统无关的对CAD文档中信息的更新方法,用于将从其它异构的CAD文档中获取的参数或来自数据库的参数更新到CAD文档中,以实现对CAD文档的外部参数驱动;该方法包括如下步骤:
[0387] 步骤901,定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0388] 步骤902,用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库中;
[0389] 步骤903,读取指定的具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述指定的具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述指定的具体的异构CAD文档信息更新规则的更新方式的规定进行处理,得到结果数据集;所述结果数据集为CAD图元表数据,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0390] 步骤904,当所述具体的异构CAD文档信息更新规则的更新操作为新增时,执行步骤905;当所述具体的异构CAD文档信息更新规则的更新操作为更新时,执行步骤906;当所述具体的异构CAD文档信息更新规则的更新操作为删除时,执行步骤907;
[0391] 步骤905,将结果数据集中的CAD图元表数据增加到CAD文档中,然后执行步骤908;
[0392] 步骤906,根据结果数据集修改CAD文档中的对应CAD图元表数据;然后执行步骤908;
[0393] 步骤907,删除CAD文档中的和结果数据集对应的CAD图元表数据;
[0394] 步骤908,刷新CAD文档的显示。
[0395] 其中步骤902和步骤903并非时间上的紧密接续,而是逻辑上的先后依赖------步骤903需要使用步骤902的结果,即其所生成的具体的异构CAD文档信息更新规则;在图9中,虚线箭头表示数据的流向,实线的箭头表示控制的流向,即各步骤的执行顺序。
[0396] 本实施例中所述CAD系统为计算机辅助设计系统;所述CAD文档为由用户利用各种异构的CAD系统所生成的文件;所述计算机辅助设计系统包括:AutoCAD、Pro/E、Solidworks、Inventor或CATIA;
[0397] 所述图元信息,为CAD文档中所有可通过CAD系统的编程接口访问到的信息,包括几何信息和非几何信息,例如,AutoCAD中的几何信息和技术信息,Pro/E中的特征信息、物理信息、技术信息、管理信息等;
[0398] 所述更新方式为一个或多个更新项目的集合;所述更新项目,指一个三元组,表示为item=(expr,op,target),其中item为三元组,expr为表达式;target为更新对象中的字段名,op为将expr的内容更新到target上的方式;所述方式包括填入或定位。
[0399] 所述异构CAD文档信息更新规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息更新规则的条件。
[0400] 所述异构CAD文档信息更新规则模板,还包括应用时机;所述应用时机,指满足什么条件或用户进行了什么操作的情况下此规则将被执行,进行实际的数据更新;
[0401] 例如,下面是一个具体的异构CAD文档信息更新规则的一个示例:
[0402] 文档类型:Pro/E
[0403] 更新对象:当前文档.参数
[0404] 更新方式:新增
[0405] 数据源:,产品标准参数表
[0406] 筛选条件:产品标准参数表.产品型号=“A5”
[0407] 更新方式:
[0408] 当前文档.参数.参数名=产品标准参数表.参数名称
[0409] 当前文档.参数.参数值=产品标准参数表.设计参考值
[0410] 应用时机:文档打开时、用户手动执行
[0411] 该示例所表达的含义为,用户要求将数据库中存储的产品设计参数增加到当前正在打开的Pro/E文档中,具体要求是,从数据库中的“产品标准参数表”中查询满足产品型号=“A5”这一条件的全部记录,针对其每条记录,向当前Pro/E文档的“参数”中增加一项,其参数赋值为该记录的“参数名称”字段,其参数值赋值为该记录的“设计参考值”字段;该规则在Pro/E文档被打开时自动执行,或由用户手动执行;
[0412] 请继续参看图10,为与上述异构CAD文档信息更新方法相对应的一个异构CAD文档信息更新装置实施例的结构图,该装置用于针对各种异构的CAD系统所生成的CAD文档提供一种一致的、和具体用来生成文档的CAD系统无关的对CAD文档中信息的更新,将从其它异构的CAD文档中获取的参数或来自数据库的参数更新到CAD文档中,以实现对CAD文档的外部参数驱动;该装置包括如下模块:
[0413] 异构CAD文档信息更新规则模板定义模块1001,用于定义异构CAD文档信息更新规则模板;该模板包括更新对象、更新操作、数据源、筛选条件、更新方式;所述更新对象为一个CAD图元表表名;所述更新操作为新增、修改、删除之一或多种;所述数据源包括存储在数据库中的CAD文档的输出参数或存储在数据库中的用户输入的数据;所述筛选条件为对从数据源中提取出来的数据的过滤条件;所述更新方式为针对从数据源中提取出来并经过筛选条件过滤后的数据进行相应的运算,根据运算后的结果对更新对象执行更新操作;
[0414] 异构CAD文档信息更新规则生成模块1002,用于用户根据异构CAD文档信息更新规则模板,为异构CAD文档信息更新规则模板的各部分赋值,生成具体的异构CAD文档信息更新规则,并将其存储到数据库1003中;
[0415] 数据查询模块1004,读取指定的具体的异构CAD文档信息更新规则的数据源中指定的数据,按照所述指定的具体的异构CAD文档信息更新规则中筛选条件的规定,进行筛选,将筛选后的数据按照所述指定的具体的异构CAD文档信息更新规则的更新方式的规定进行处理,得到结果数据集;所述结果数据集为CAD图元表数据,用于更新到CAD文档中,驱动CAD文档中其它信息的改变;所述CAD图元表为CAD文档中的所述各种异构的CAD系统之间进行数据交互、双向驱动和/或协同设计所需的一类图元信息;
[0416] CAD图元数据新增模块1005,用于将结果数据集中的CAD图元表数据增加到CAD文档中;
[0417] CAD图元数据修改模块1006,用于根据结果数据集修改CAD文档中的对应CAD图元表数据;
[0418] CAD图元数据删除模块1007,用于删除CAD文档中的和结果数据集对应的CAD图元表数据;
[0419] CAD文档显示刷新模块1008,用于刷新CAD文档的显示。
[0420] 所述更新方式为一个或多个更新项目的集合;所述更新项目,指一个三元组,表示为item=(expr,op,target),其中item为三元组,expr为表达式;target为更新对象中的字段名,op为将expr的内容更新到target上的方式;所述方式包括填入或定位。
[0421] 所述异构CAD文档信息更新规则模板还包括应用时机;所述应用时机指用于触发执行具体的异构CAD文档信息更新规则的条件。
[0422] 综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和而原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。