CN116305344A - 一种基于catia二次开发的工程图明细表的生成方法 - Google Patents
一种基于catia二次开发的工程图明细表的生成方法 Download PDFInfo
- Publication number
- CN116305344A CN116305344A CN202211382405.7A CN202211382405A CN116305344A CN 116305344 A CN116305344 A CN 116305344A CN 202211382405 A CN202211382405 A CN 202211382405A CN 116305344 A CN116305344 A CN 116305344A
- Authority
- CN
- China
- Prior art keywords
- list
- detail table
- sub
- detail
- assembly
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000005284 excitation Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 230000004308 accommodation Effects 0.000 claims description 2
- 230000004913 activation Effects 0.000 claims 1
- 238000005259 measurement Methods 0.000 claims 1
- 238000004519 manufacturing process Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/20—Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及工程制图和应用开发领域,具体而言提供了一种基于CATIA二次开发的工程图明细表的生成方法,包括:S1工程图文档数据的获取与明细表状态的判断;S2装配体子件列表的获取与统计整理;S3明细表的各项数据的计算;S4明细表的创建;S5明细表的填写。本发明能够根据装配件子级的数量来计算明细表的列数,创建符合当前图幅规格的明细表,能够解决自上而下设计中骨架模型不进明细表的问题,并实现明细表的数据与装配件子级属性的对应关系。通过利用本发明可以提高装配件明细表的生成效率,降低手工创建过程中的时间花费和错误发生率,简化了出工程图的流程。
Description
技术领域
本发明涉及应用软件开发和工程制图领域,具体而言,涉及一种基于CATIA二次开发的工程图明细表的生成方法。
背景技术
在创建装配体的工程图时,明细表是一个包含装配体所有零件信息的详细目录,由装配件子级零件的零件号、零件名、数量、材料、规格和零件热处理工艺方法等信息组成,在产品的设计、制造、装配过程中至关重要。CATIA作为法国Dassault System公司旗下的CAD/CAE/CAM一体化软件被广泛应用在汽车制造、船舶和航空航天等一些制造行业。CATIA工程图制图模块能够完成视图、尺寸、公差和文本注释的创建,在工程制图模块中同时也提供了用于创建物料清单的功能,然而在使用过程中生成的明细表不能满足国标和企业的使用要求。
目前的创建明细表的做法主要有三种:第一种是将明细表做成一个模板文件,通过模板文件的选择和导入,表格的新增或删减,文本的手动输入和属性修改来创建装配体的明细表;第二种是在Excel中创建一个文本文件(.csv),手动填入装配子件的属性后,再利用CATIA提供的“从CSV创建表”功能来创建明细表,然后根据需要调整明细表的行高、列宽及文本的属性,明细表中的内容与装配件的属性间不存在链接关系;第三种是通过CATIA二次开发来创建明细表,目前这种方式大多只能生成一列明细表,而当装配体的子件数量过多时,就需要手动将明细表进行分割并将其重新定位到合适的位置,这种创建方式目前还不够智能。
本发明使用CATIA二次开发工具CAA-RADE对CATIA进行二次开发,提出了一种明细表快速创建的方法,实现了多列明细表的创建,能够解决自顶向下设计中的骨架模型不入明细表的问题。本发明提高了明细表创建的效率,使设计人员能够专注于设计,也提高了工程图出图过程中的标准化、流程化和自动化。
发明内容
本发明旨在提供一种装配件明细表的快速创建的方法,以解决传统手工创建效率低下的问题。
本发明的目的是通过以下技术方案实现的:
一种基于CATIA二次开发的工程图明细表的生成方法,包括以下步骤:
S1、工程图文档数据的获取与明细表状态的判断;
S2、装配体子件列表的获取与统计整理;
S3、明细表的各项数据的计算;
S4、明细表的创建;
S5、明细表的填写。
优选地,所述步骤S1中获取的工程图文档数据包括:工程图当前激活页(Sheet)的图幅信息以及激活页的背景视图和工作视图的操作句柄,同时获取工作视图中激活的视图(如正视图或侧视图等)。
优选地,所述步骤S1中对明细表的状态进行判断,保证明细表不被重复创建,通过在获取的背景视图容器中对明细表进行特征搜索,若检索到明细表存在将会提示明细表已存在。
优选地,所述步骤S2中获取的装配体子件列表来自于工作视图中与激活视图相链接的三维模型文档,并且所述的明细表只用于装配件,当检测到获取的三维模型文档类型不为 “*.CATProduct”,会提示明细表创建错误。
优选地,所述步骤S2中装配体子件列表的统计整理包括重复元素的移除和元素数量的统计,通过获取每个子件元素的零件编号并添加到一个字符串列表中,再利用两个循环来判断零件编号是否相同,据此来移除列表中重复出现的子件并为每个移除的元素计量数加1。
优选地,所述步骤S2中装配体子件列表的统计整理包括识别子件元素列表中的子级是否为线框或曲面模型,通过获取子件元素的体积来判定,若体积为0则将该元素从列表中移除。
优选地,所述步骤S3明细表的各项数据的计算包括计算每列明细表的行数,只需一列明细表时的行数为Q+1,存在两列以上的明细表时需要计算第一列明细表的行数为、中间列明细表的行数为/>和最后一列明细表的行数 />,计算公式为:
其中:V为图纸的垂直高度,a为图纸的偏置距离,b为图纸标题栏的高度,h为明细表的行高,Q为最终装配子件列表的元素数量,S为实际明细表的列数。
其中:H为图纸水平长度,l为图纸装订宽度,B为明细表的宽度,ceil为向上取整函数。
优选地,所述步骤S3中明细表的各项数据的计算包括判断当前工程图页面是否可以容纳当前数量的装配子件,通过最终的装配子件列表数量和工程图的页面最大容纳数量进行对比,若不能将会提示用户更换更大规格的图幅,当前页面能容纳的最大装配子件数量的计算公式为:
优选地,所述步骤S4在创建明细表时,以明细表的底部为定位点,具体定位方式包括下左方、下中方和下右方三种定位方式,根据定位方式不同,定位点的坐标不同,其中,明细表横坐标X的计算公式为:
其中,H为图纸水平长度,a为图纸的边框距离,B为明细表的宽度,j为明细表列数,C为坐标计算动参数;
优选地,所述步骤S4在创建明细表时提供明细表样式的定制,定制的内容包括:明细表的表格的表头内容、单元格布局形式、行高、列宽和定位方式,文本的字体、字高、对齐方式,以及需要提取的产品属性等。
优选地,所述步骤S4创建的明细表只有一列时,创建一列行数为Q+1的明细表;有多列时,通过使用一个循环来创建明细表,先创建第一列行数为 的明细表,若第二列明细表不是最后一列明细表,则循环创建行数为/> 的明细表,直至创建完最后一列行数为/> 的明细表,再循环每一个子列表元素获取属性。
优选地,所述步骤S5填写明细表时用于填写明细表的文本来自于装配子件的属性,通过一个循环来获取装配子件的属性再通过一个循环来填写明细表修改文本的属性。
优选地,所述步骤S5填写明细表时装配子件的编号按照装配体结构树上的顺序自上而下的进行编号。
优选地,所述步骤S5在填写明细表时根据明细表的位置不同需要从不同的位置开始获取装配子件,第一列明细表获取的子件列表元素区间为,第j列明细表获取的子件列表元素区间为 />,最后一列明细表获取的子件列表元素区间为/>。
本发明具有以下有益效果:
相比于现有技术,本发明实现了明细表的一键创建,能够识别装配体子件里线框或曲面模型并将其从明细表中剔除,创建的明细表能够匹配当前的图纸图幅大小,能够根据图幅信息自动分割表格创建多列明细表,实现装配体属性信息与明细表文本的统一,提高了装配件明细表的生成效率,降低手工创建过程中的错误发生率,简化了出图流程。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面对实施例对应的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中的一种基于CATIA二次开发的工程图明细表的生成方法的主流程图。
图2为本发明实施例中的一种基于CATIA二次开发的工程图明细表的生成方法的工程图文档数据的获取与明细表状态的判断流程图。
图3为本发明实施例中的一种基于CATIA二次开发的工程图明细表的生成方法的装配体子件列表的获取与统计整理流程图。
图4为本发明实施例中的一种基于CATIA二次开发的工程图明细表的生成方法的明细表的各项数据的计算流程图。
图5为本发明实施例中的一种基于CATIA二次开发的工程图明细表的生成方法的明细表的创建流程图。
图6为本发明实施例中的一种基于CATIA二次开发的工程图明细表的生成方法的明细表填写的流程图。
图7为本发明实施例中的一种基于CATIA二次开发的工程图明细表的生成方法的装配子件的产品属性页。
图8为利用本发明创建的明细表。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实例用于说明本发明,但不用来限制本发明的范围。
实施例1
本发明实施例一种基于CATIA二次开发的工程图明细表的生成方法,如附图1所示包括以下步骤:
S1、工程图文档数据的获取与明细表状态的判断;
S2、装配体子件列表的获取与统计整理;
S3、明细表的各项数据的计算;
S4、明细表的创建;
S5、明细表的填写。
在本实施例中,所述步骤S1的具体步骤如图2所示,首先获取当前工作的工程图文档,接着获取工程图文档激活的页(Sheet),再利用获取的激活页操作句柄来获取激活页的背景视图和工作视图。明细表将会被创建在背景视图的容器中,利用工作视图可以获取工作视图中的激活视图(例如正视图或侧视图等)。接着再遍历背景视图容器里的特征进行特征搜索,如果搜索到明细表将会提示明细表已经存在。若未搜索到明细表将会获取与激活视图链接的三维模型文档,获取文档的类型,若文档的类型不为产品“*.CATProduct”就会提示明细表创建错误。与此同时会获取工程图文档激活页的图幅信息,即图纸的长宽数值,并判断图纸的装订边框距离a,装订边框分为有装订边和无装订边的图框。此处以有装订的边框距离为例,当图纸的图幅为A0、A1和A2时装订边框距离为10mm否则为5mm。一些其它的参数,例如:明细表行高、列宽、列数和标题栏高度等由明细表和图框标题栏的模板来确定。
在本实施例中,所述步骤S2的具体步骤如图3所示,首先获取激活视图所链接的装配文件的子级列表,接着遍历该列表获取每个子级的零件编号将其添加到一个字符串列表中(每个零件的零件编号都是唯一的),再利用两个循环来遍历这个字符串列表对比两个字符串是否相同。在第一个循环中将每一个字符串的数量初始化为1,在第二个循环中当判定两个字符串相同时将第二个字符串从列表中移除并为该字符串的数量加1,同时移除装配子件列表相应位置的元素,在第二个循环结束后将字符串的数量添加到一个整数列表中。经过两个循环,装配子件列表中已经不存在重复的元素。接着遍历这个新的子件列表获取每个子件的体积,若体积为0,则该子件为一个线框或曲面特征,将该特征从列表中移除,此时列表数量Q1减1。
在本实施例中,步骤S3的具体步骤如图4所示,根据之前获取的图纸的长宽(H和V)、子件列表的数量(Q)以及一些定制模板的数据(a、b、B、h、l)计算实际需要的明细表列数S,若S大于1,则计算最后一列明细表的行数 ,接着按照公式计算当前页面的第一列和第二列明细表的行数/>和/> ,计算当前页面能够容纳的最大明细表列数/> ,接着计算当前页面能容纳的最大装配子件的数量/> ,最后获取最终子件列表的数量(Q)与/> 进行对比,若Q>/> ,说明当前图纸无法容纳当前数量的装配子件,将会提示更换更大规格的工程图图幅。数据的计算公式如下:
其中,V为图纸的垂直距离,a为装订边框距离,b为标题栏高度,h为明细表行高,H为图纸的水平长度,l为图纸装订宽度,B为明细表宽度,Q为子件列表的数量,ceil()为向上取整函数。
在本实施例中,所述步骤S4的具体步骤如图5所示,此处明细表的定位方式为左下方,按照下方公式计算明细表的横坐标,明细表的列数为7、行高为7mm。首先判断S是否为1,若是将只需要创建一列明细表,此时明细表的定位点坐标为(H-a-B,a+b),明细表的行数为Q+1,若S不为1,则说明至少需要两列明细表,此时先创建第一列明细表,明细表的行数为,定位点的坐标为(H-a-B,a+b)。若j小于S则循环创建中间列的明细表,行数为/>,定位点为(H-a-j×B,a),创建完一列之后j加一再次判定j与S的关系,直至j等于S开始创建最后一列明细表,最后一列明细表的行数为/>,定位点坐标为(H-a-S×B,a)。创建完每列明细表之后,循环每一行,获取装配子件列表的属性,并调用表格填写模块填写表格。定位点的横坐标计算公式为:
其中,j为明细表列数,C为坐标计算动参数;
在本实施例中,所述步骤S5的具体步骤如图6所示在创建明细表的表格之后开始填写每列表格的标题栏这里标题栏包括序号、子件编号、子件名称、数量、材料、子件规格和备注。如图7所示明细表中的内容来自于装配子件的产品属性,通过一个循环来获取属性值,再通过一个循环来填写明细表修改文本的属性。只有一列明细表时的装配子件获取区间为[1,Q],中间列明细表获取的区间为[ ],最后一列明细表获取的区间为[/> ,/> ]。
图8所示为利用本发明创建的明细表。统计整理后的装配子件列表的元素数量为77,图纸图幅为A2(420mm×594mm),经过计算之后 =26,/> =51,S=2。因此本发明自动创建了两列明细表,并获取装配体的子件属性自动填写了明细表修改了文本的属性。装配体子件未填写的属性,在明细表中将会被置为空格。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (9)
1.一种基于CATIA二次开发的工程图明细表的生成方法,其特征值在于:包括以下步骤:
S1、工程图文档数据的获取与明细表状态的判断;
S2、装配体子件列表的获取与统计整理;
S3、明细表的各项数据的计算;
S4、明细表的创建;
S5、明细表的填写。
2.根据权利要求1所述的基于CATIA二次开发的工程图明细表的生成方法,其特征值在于:所述步骤S1中获取的工程图文档数据包括:工程图当前激活页(Sheet)的图幅信息以及激活页的背景视图和工作视图的操作句柄,同时获取工作视图中激活的视图;
所述步骤S1中对明细表的状态进行判断,保证明细表不被重复创建,通过在获取的背景视图容器中对明细表进行特征搜索,若检索到明细表存在将会提示明细表已存在。
3.根据权利要求1所述的基于CATIA二次开发的工程图明细表的生成方法,其特征值在于:所述步骤S2中获取的装配体子件列表来自于工作视图中与激活视图相链接的三维模型文档,并且所述的明细表只用于装配件,当检测到获取的三维模型文档类型不为 “*.CATProduct”,会提示明细表创建错误。
4.根据权利要求3所述的基于CATIA二次开发的工程图明细表的生成方法,其特征值在于:所述步骤S2中装配体子件列表的统计整理包括重复元素的移除和元素数量的统计,通过获取每个子件元素的零件编号并添加到一个字符串列表中,再利用两个循环来判断零件编号是否相同,据此来移除列表中重复出现的子件并为每个移除的元素计量数加1;
所述步骤S2中装配体子件列表的统计整理还包括识别子件元素列表中的子级是否为线框或曲面模型,通过获取子件元素的体积来判定,若体积为0则将该元素从列表中移除。
8.根据权利要求1所述的基于CATIA二次开发的工程图明细表的生成方法,其特征值在于:所述步骤S4在创建明细表时,以明细表的底部为定位点,具体定位方式包括下左方、下中方和下右方三种定位方式,根据定位方式不同,定位点的坐标不同,其中,明细表横坐标X的计算公式为:
其中,H为图纸水平长度,a为图纸的边框距离,B为明细表的宽度,j为明细表列数,C为坐标计算动参数;
所述步骤S4在创建明细表时提供明细表样式的定制,定制的内容包括:明细表的表格的表头内容、单元格布局形式、行高、列宽和定位方式,文本的字体、字高、对齐方式,以及需要提取的产品属性;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211382405.7A CN116305344A (zh) | 2022-11-07 | 2022-11-07 | 一种基于catia二次开发的工程图明细表的生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211382405.7A CN116305344A (zh) | 2022-11-07 | 2022-11-07 | 一种基于catia二次开发的工程图明细表的生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116305344A true CN116305344A (zh) | 2023-06-23 |
Family
ID=86832897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211382405.7A Pending CN116305344A (zh) | 2022-11-07 | 2022-11-07 | 一种基于catia二次开发的工程图明细表的生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116305344A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116842915A (zh) * | 2023-07-04 | 2023-10-03 | 中国电建集团西北勘测设计研究院有限公司 | 基于catiav6的水利水电工程图的批量标注方法 |
-
2022
- 2022-11-07 CN CN202211382405.7A patent/CN116305344A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116842915A (zh) * | 2023-07-04 | 2023-10-03 | 中国电建集团西北勘测设计研究院有限公司 | 基于catiav6的水利水电工程图的批量标注方法 |
CN116842915B (zh) * | 2023-07-04 | 2024-05-10 | 中国电建集团西北勘测设计研究院有限公司 | 基于catia v6的水利水电工程图的批量标注方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101794280B (zh) | 一种基于表格模板集的表格自动生成方法及系统 | |
CN108255489B (zh) | 前端界面代码生成方法、装置、电子设备及存储介质 | |
US20070136660A1 (en) | Creation of semantic objects for providing logical structure to markup language representations of documents | |
CN110032720A (zh) | 一种基于xml的可视化报告排版及自动生成方法及系统 | |
CN101770446B (zh) | 一种版式文件中表格识别方法及系统 | |
CN107025676B (zh) | 一种图片模板以及图片的生成方法及相关装置 | |
CN105631113B (zh) | 核电工程管道iso图定制方法 | |
CN116305344A (zh) | 一种基于catia二次开发的工程图明细表的生成方法 | |
CN109157296A (zh) | 一种基于支撑的3d打印零部件id标记方法 | |
CN110543303A (zh) | 一种可视化业务平台 | |
CN112668289A (zh) | 一种嵌套表格的提取方法及装置、存储介质 | |
CN115146327A (zh) | 用于空调行业的cad文件辅助处理方法及系统 | |
CN115344905A (zh) | 基于三维模型自动生成二维工程图纸的方法及系统 | |
US20080184185A1 (en) | Method For Searching For a Similar Design Model | |
CN109446749B (zh) | 适用于船舶胎架的设计方法、系统、电子终端及存储介质 | |
EP0585332A1 (en) | METHOD AND APPARATUS FOR AUTOMATIC LAYOUT OF TEXT AND GRAPHICS. | |
CN109658415A (zh) | 一种图纸分割方法、电子设备以及存储介质 | |
CN116186144B (zh) | 矿山遥感监测数据的格式化自动处理方法及系统 | |
TW201317815A (zh) | 尺寸號資訊處理系統及方法 | |
CN113590882B (zh) | 一种汽车电路电子图册整合方法 | |
CN105184868A (zh) | 一种基于三维实体模型的三角形表面网格生成方法 | |
CN116343254A (zh) | 剖面图识别方法、装置、电子设备和存储介质 | |
CN111061779A (zh) | 一种基于大数据平台的数据处理方法及装置 | |
CN108647337B (zh) | 一种仿真分析数据的格式处理方法及装置 | |
CN101452498B (zh) | 冲压模具垫脚自动添加系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |