CN117670660B - 基于catia v6的快速生成剖视图的方法 - Google Patents
基于catia v6的快速生成剖视图的方法 Download PDFInfo
- Publication number
- CN117670660B CN117670660B CN202410142056.4A CN202410142056A CN117670660B CN 117670660 B CN117670660 B CN 117670660B CN 202410142056 A CN202410142056 A CN 202410142056A CN 117670660 B CN117670660 B CN 117670660B
- Authority
- CN
- China
- Prior art keywords
- view
- point
- profile
- section
- points
- 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
- 238000000034 method Methods 0.000 title claims abstract description 55
- 239000013598 vector Substances 0.000 claims description 15
- 230000003213 activating effect Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 6
- 239000003086 colorant Substances 0.000 claims description 4
- 238000001914 filtration Methods 0.000 abstract description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- DMSMPAJRVJJAGA-UHFFFAOYSA-N benzo[d]isothiazol-3-one Chemical compound C1=CC=C2C(=O)NSC2=C1 DMSMPAJRVJJAGA-UHFFFAOYSA-N 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000010923 batch production Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000011960 computer-aided design Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- 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
Abstract
本发明公开的基于CATIA V6的快速生成剖视图的方法,包括自定义剖面特征;之后,在三维视图中激活剖面集生成功能后选择参考面和参考线并设置剖面间距和剖面数量,绘制剖面并将剖面信息存储到自定义的剖面特征实例化对象中,在三维视图中生成剖面集;最后,在二维视图中激活剖视图生成功能后选择生成的剖面集,确定剖面位置后生成剖视图。本发明解决了CATIA V6原生功能生成剖视图效率低、不能根据特定规则生成剖面集以及用户需要手动调整剖面位置的问题,同时提供过滤几何特征、产品间拷贝几何特征、曲线上生成辅助点、生成辅助面、剖面信息投影到当前视图等方法,可满足用户使用CATIA V6批量生成剖视图的需求。
Description
技术领域
本发明属于CATIA三维建模方法技术领域,具体涉及基于CATIA V6的快速生成剖视图的方法。
背景技术
CATIA V6是法国达索公司发布的CAD/CAE/CAM(Computer-Aided Design,计算机辅助设计/Computer-Aided Engineering,计算机辅助工程/Computer-AidedManufacturing,计算机辅助制造)一体化应用软件,功能内容涵盖了制造业产品从概念设计、工业造型设计、三维模型设计、分析计算、动态模拟与仿真、工程图输入到生成加工成品的全过程。在航空航天、汽车制造、船舶建造、机械制造、机械设计、水利水电行业应用十分广泛。
但是在二维出图方面仍然存在问题,特别是剖面集和剖视图的批量生成:
1、实际出图过程中,出图数量大、且大量图纸生成剖视图的时候具有规律性,但CATIA V6原生功能针对有规律的剖视图无法批量生成。
2、批量生成剖视图的前提条件要有对应的剖面集,但CATIA V6原生功能不能根据特定规则生成剖面集。
3、CATIA V6原生功能提供的面为平面(无限大)或者实体面,平面无法显示与被剖对象的相交范围,而实体面会遮挡被剖对象。
4、手动生成的剖面需要对生成的每个剖面进行剖面布置,对于剖面较多的情况效率较低。
虽然CATIA V6的原生功能未提供剖视图生成的相关功能,但是达索产品提供了一套用于定制开发的组件库,即CAA(Component Application Architecture,组件应用架构)组件库,提供了数学库、几何库、底层框架等非常完善的应用程序接口。通过CAA接口进行二次开发,可为CATIA V6补充生成剖视图的相关功能。基于以上问题,提出基于CATIA V6自定义特征、3DBagRep(一组创建三维模型的算法工具)快速生成剖视图的方法。
发明内容
本发明的目的在于提供基于CATIA V6的快速生成剖视图的方法,解决了现有方法生成剖视图效率较低的问题。
本发明所采用的技术方案是:基于CATIA V6的快速生成剖视图的方法,包括自定义剖面特征;之后,在三维视图中激活剖面集生成功能后选择参考面和参考线并设置剖面间距和剖面数量,生成剖面并将剖面信息存储到自定义的剖面特征实例化对象中,在三维视图中生成剖面集;最后,在二维视图中激活剖视图生成功能后选择生成的剖面集,确定剖面位置后生成剖视图。
本发明基于CATIA V6的快速生成剖视图的方法采用以下优选方案,包括以下步骤:
步骤1、批量生成剖面集:
步骤1.1、自定义剖面特征;具体为:注册并生成CATfct文件,通过命令反向生成osm文件,在osm文件中定义剖面集和剖面特征属性的对象信息,然后通过命令将osm文件转换成CATfct文件,最后为特征属性的对象信息定义扩展类。
步骤1.2、在三维视图中激活剖面集生成功能后,首先选择参考面和参考线,然后设置剖面间距和剖面数量得到即将生成的各剖面的偏移距离。
步骤1.3、判断步骤1.2所得偏移距离,若需要调整,则在剖面属性编辑框中重新调整剖面的偏移距离;反之,则直接进入步骤1.4。
步骤1.4、基于步骤1.2选择的参考面和参考线和步骤1.3所得偏移距离生成剖面,并将剖面信息存储到步骤1.1自定义的剖面特征的实例化对象中,在三维视图中生成剖面集;具体包括以下步骤:
步骤1.4.1、获取当前三维视图中几何图形包围盒范围,然后将选择的参考面和参考线复制到待生成的剖面集所在的目标产品下,根据偏移距离及参考面,在参考线上创建辅助点的列表;具体为:获取参考线的起点和终点,然后根据参考线起点到参考面的距离L sp和参考线终点到参考面的距离L ep的大小关系来判断当前点的偏移方向与参考线方向是否一致,若L sp≦L ep,则认为同向,否则认为反向;同时获取到参考线的长度L l,判断剖面的偏移距离D oi是否大于参考线的长度L l,若大于则认为生成的辅助点已超出参考线范围;反之则将参考线起点沿偏移方向在参考线上移动偏移距离生成辅助点,并保存在列表中。
步骤1.4.2、根据辅助点列表及参考线,创建辅助面的列表;再对定义的扩展类进行实例化以创建剖面集的特征对象即剖面集对象和剖面的特征对象即剖面对象;最后将几何图形包围盒的顶点投影到各个辅助面上获得形成最大面积剖面的角点;具体包括以下步骤:
步骤1.4.2.1、首先获取到参考线上以各个辅助点为切点的切线,然后以切线作为面法线,以辅助点为面原点创建辅助面,并保存在列表中;
步骤1.4.2.2、对定义的扩展类进行实例化以创建剖面集的特征对象即剖面集对象和剖面的特征对象即剖面对象;
步骤1.4.2.3、首先根据几何图形包围盒范围获取8个顶点的空间坐标并投影到创建的辅助面上,然后通过去重剔除掉8个投影点坐标中存在的重复坐标点,确定投影点在辅助面上相对于辅助点的位置关系:
1)通过比较第一个投影点坐标与辅助点构成的基准向量V ec1与其余投影点坐标与辅助点构成的向量V eci的角度关系来确定所判断投影点位于第一个投影点相对于辅助点的同侧还是异侧,判断公式为:
2)根据投影点坐标到辅助点的距离大小,分别对辅助点两侧的投影点做降序处理;
3)在辅助点两侧分别取距离较远的两个投影点以构成四个点来围成剖面,并根据以下规则确保其中任意三点不在同一直线上:
前两点构成的向量为v ec1,第一点与其余点构成的向量为v eci:
若两向量的夹角值等于±1,则剔除掉使三点在同一直线上的驻点,并继续在驻点所在点列表中取下一个距辅助点的距离较远点,继续进行任意三点是否在同一直线上的判断,直至拿够围成剖面所需的四个点;
步骤1.4.2.4、得到距离辅助点较远的四个投影点,按排序规则重新排序后按顺序围成规则的四边形,排序规则为:将获取到的第一点直接存储;判断其余三点到第一点的距离大小关系,距离最小的存储为第二点;判断其余两点到第二点的距离大小关系,距离较小的存储为第三点,距离较大的存储为第四点,排序后的四个投影点即为围成剖面的四个角点。
步骤1.4.3、将角点存储在剖面对象的属性信息中,绘制剖面后将生成的剖面对象存储在剖面集对象中,待所有剖面都绘制完成且存储进剖面集对象中,则剖面集生成完成;具体包括以下步骤:
步骤1.4.3.1、将排序后的四个角点存储在剖面对象的属性信息中,再发送开始绘制剖面形状的事件通知;
步骤1.4.3.2、收到绘图的事件通知后,首先初始化视图集合;然后通过四个角点坐标来绘制三维线段,并对图形颜色进行设置;再将绘制的线段及设置的颜色添加到图形集合中;最后将设置的图形集合添加到视图集合中;
步骤1.4.3.3、剖面绘制完成后,将生成的剖面对象存储在剖面集对象中,待所有剖面都绘制完成且存储进剖面集对象中,则剖面集生成完成。
步骤2、一键生成剖视图:
步骤2.1、在二维视图中激活剖视图生成功能后选择步骤1.4生成的剖面集,生成剖视图;具体为:获取到步骤1.4.3.3中生成的剖面集对象,并选择生成三视图或选择激活视图,若选择三视图则生成三视图并将三视图添加到当前视图列表,之后将剖面图逐一投影到当前主视图中;若选择激活视图则将激活视图添加到当前视图列表,之后将剖面图逐一投影到当前视图列表中的视图中;若剖面图不与当前视图相交,则跳过当前剖面图继续投影下一个剖面图,最后根据生成的投影边界点以及投影方向、视图比例,为当前视图列表中的视图逐一创建剖视图。
步骤2.2、调整步骤2.1生成各个视图的位置,确定各个视图的生成位置后完成剖视图的一键生成,其中调整各个视图的位置具体为:判断当前剖视图与主视图包围盒是否相交,若相交则需要调整当前剖视图位置,先判断当前剖视图的剖切轮廓是水平还是竖直:若剖切轮廓水平,则判断主视图包围盒右上角点P MRT的Y值是否大于当前视图的左上角点P CLT的Y值,如果大于则将主视图包围盒右上角点P MRT的Y值赋给当前视图的左上角点P CLT,否则不赋值;然后获取主视图包围盒右上角点P MRT和右下角点P MRD的中点P MRM到当前视图左上角点P CLT和左下角点P CLD连线的距离D Hi,然后将当前视图向右移动D Hi,再判断主视图包围盒右侧中点P MRM距当前视图左上角点P CLT和左下角点P CLD的中点P CLM的水平距离D Hj是否超过预设的视图间距L m,若超过则再向右移动D Hj,否则不移动;
若剖切轮廓竖直,则判断主视图包围盒右下角点P MRD的X值是否大于当前视图的右上角点P CRT的X值,如果大于则将主视图包围盒右下角点P MRD的X值赋给当前视图的右上角点P CRT,否则不赋值;然后获取主视图包围盒右下角点P MRD和左下角点P MLD的中点P MMD到当前视图左上角点P CLT和右上角点P CRT连线的距离D Vi,然后将当前视图向下移动D Vi,再判断主视图包围盒下侧中点P MMD到当前视图左上角点P CLT和右上角点P CRT的中点P CMT的竖直距离D Vj是否超过预设的视图间距L m,若超过则再向下移动D Vj,否则不移动。
本发明的有益效果是:本发明的基于CATIA V6的快速生成剖视图的方法,解决了CATIA V6原生功能生成剖视图效率低、不能根据特定规则生成剖面集以及用户需要手动调整剖面位置的问题,同时提供过滤几何特征、产品间拷贝几何特征、曲线上生成辅助点、生成辅助面、剖面信息投影到当前视图等方法,可满足用户使用CATIA V6批量生成剖视图的需求。
附图说明
图1是本发明的基于CATIA V6的快速生成剖视图的方法的流程示意图;
图2是本发明的基于CATIA V6的快速生成剖视图的方法中创建辅助点RefPoint列表的流程示意图;
图3是本发明的基于CATIA V6的快速生成剖视图的方法中获取剖面角点的流程示意图;
图4是本发明的基于CATIA V6的快速生成剖视图的方法中批量生成剖视图的流程示意图。
具体实施方式
下面结合附图以及具体实施方式对本发明进行详细说明。
实施例1
本发明提供了基于CATIA V6的快速生成剖视图的方法,根据CATIA V6提供的自定义特征方法定义剖面特征,用户在三维视图中激活生成剖面集功能后,选择参考面、参考线,并定义剖面间距和剖面数量后,内部程序自动获取生成剖面所需的属性信息,并将生成的剖面信息存储到自定义的剖面特征实例化对象中,然后通过3DBagRep接口在视图中生成一系列剖面集合,接着在二维视图中激活剖视图生成功能后,选择上一步生成的剖面集合,然后用鼠标左键确定剖面位置,就能够快速生成剖视图。
实施例2
本发明提供了基于CATIA V6的快速生成剖视图的方法,如图1所示,具体技术路线如下:
1、批量生成剖面集
1.1、自定义剖面特征
注册并生成NWHDraftToolSetCatalog.CATfct(自定义名称的CATfct类型文件,CATfct:用于建模的程序文件类型)文件,通过命令反向生成NWHDraftToolSetCatalog.osm(自定义名称的osm文件,osm:开放式街道地图文件类型)文件,在该文件中定义剖面集NWHProfileSet(自定义的剖面集特征名称)和剖面NWHProfile(自定义的剖面特征名称)特征属性的对象信息,然后通过命令将NWHDraftToolSetCatalog.osm转换成NWHDraftToolSetCatalog.CATfct文件,最后为特征对象定义扩展类以方便后续创建剖面集NWHProfileSet和剖面NWHProfile特征时调用。
1.2、剖面集参数定义
在CATIA V6三维视图中激活创建剖面集功能后,会弹出工具栏提示用户选择需要的几何特征并设置相应的剖面集参数。首先需要选择参考面和参考线,用户选择后内部程序会对所选对象类型进行过滤,若满足过滤条件则会将对象高亮显示且将其路径填在工具栏中相应位置。然后需要用户设置剖面间距和数量,设置后内部程序会根据剖面间距和数量计算得到即将生成的各个剖面的偏移距离,并自动将即将生成的各个剖面的名称和偏移距离展示在工具栏中。
1.3、剖面调整
若需要调整剖面偏移距离,则在工具栏展示框中用鼠标左键点选需要调整的剖面,会将其名称和偏移距离展示在工具栏底部的剖面属性编辑框中,用户可重新调整剖面的偏移距离,调整后内部程序会自动更新工具栏中所展示的剖面信息。
1.4、剖面集预览及生成
以上步骤完成后,点击“确定”,内部程序开始执行生成剖面集的功能。首先获取当前三维视图中几何图形包围盒范围,然后将选中的参考线和参考面复制到待生成的剖面集所在的目标产品下,根据剖面的偏移距离列表及参考面,在参考线上创建与待生成剖面数量一致的辅助点RefPoint,并将各个辅助点RefPoint保存在列表中,创建辅助点列表的具体流程如下,如图2所示:
首先获取参考线的起点和终点,然后根据参考线起点到参考面的距离L sp和参考线终点到参考面的距离L ep的大小关系来判断当前点的偏移方向与参考线方向是否一致,若L sp≦L ep,则认为同向,否则认为反向。
同时获取到参考线的长度L l,判断剖面的偏移距离D oi是否大于参考线的长度L l,若大于则认为生成的辅助点RefPoint已超出参考线范围;反之则将参考线起点沿偏移方向在参考线上移动偏移距离以生成辅助点RefPoint,并将其保存在列表中。
辅助点RefPoint列表成功创建后,再根据辅助点RefPoint列表及所选参考线,来创建一系列的辅助面RefFace;对特征对象扩展类进行实例化以创建剖面集NWHProfileSet和剖面NWHProfile的特征对象profileObjSet和profileObj;最后将几何图形包围盒的顶点投影到各个辅助面RefFace上获得形成最大面积剖面的角点,获取剖面角点的具体流程如下,如图3所示:
首先获取到参考线上以各个辅助点RefPoint为切点的切线,然后以切线作为面法线,以辅助点RefPoint为面原点创建辅助面RefFace,并保存在列表中;对定义的扩展类进行实例化以创建剖面集NWHProfileSet的特征对象profileObjSet和剖面NWHProfile的特征对象profileObj;最后根据几何图形包围盒范围获取到8个顶点的空间坐标,然后将这些顶点坐标投影到上一步创建的辅助面RefFace上,然后通过去重剔除掉所获得的8个投影点坐标中可能存在的重复坐标点,再根据下列逻辑公式确定投影点相对于辅助点RefPoint的位置关系:
1)通过比较其余投影点坐标与辅助点RefPoint构成的向量V eci与第一个投影点与辅助点RefPoint构成的基准向量V ec1的角度关系来确定所判断投影点位于第一个投影点相对于辅助点RefPoint的同侧还是异侧:
2)然后根据投影点到辅助点RefPoint的距离大小,分别对辅助点RefPoint两侧的投影点做降序处理。
3)在辅助点RefPoint两侧分别取距离较远的两个投影点以构成四个点来围成剖面,并根据以下规则确保其中任意三点不在同一直线上:
前两点构成的向量为v ec1,第一点与其他点构成的向量为v eci:
若两向量的夹角值等于±1,则剔除掉使三点在同一直线上的此驻点,并继续在该驻点所在点列表中取下一个距辅助点RefPoint的距离较远点,继续进行任意三点是否在同一直线上的判断,直至拿够围成剖面所需的四个点。
拿到距离辅助点RefPoint较远的四个投影点,并对此四个投影点按下列规则重新排序,使其能按顺序围成较规则的四边形:
1)将获取到的第一点point1直接存储;
2)判断其他三点到点point1的距离大小关系,距离最小的存储,记为point2;
3)判断剩余两点到point2的距离大小关系,距离较小的存储为point3,距离较大的存为point4。
将排序后的四点作为围成剖面的四个角点来存储在剖面对象profileObj的属性信息中,最后通过CAA提供的CATIModelEvents(CAA提供的使组件与其可视化视图进行通信的接口)接口给CATExtIVisu(CAA提供的实现可视化的扩展接口)接口发送开始绘制剖面形状的事件通知。
收到绘图的事件通知后,首先调用CAA提供的CAT3DBagRep(CAA提供的创建三维表示集合的接口)接口来初始化视图集合,然后调用CAA提供的CAT3DlineGP(CAA提供的创建三维线的接口)接口并通过上一步创建剖面的四个角点坐标来绘制三维线段,并分别通过CATGraphicAttributeSet(CAA提供的定义图形显示属性的接口)接口对图形颜色进行设置,接着通过CAT3DCustomRep(CAA提供的用来管理不同图形属性的接口)接口的AddGP(CAA提供的将图形添加到图形管理列表的方法)方法将绘制的线段及设置的颜色添加到图形集合中,最后通过CAT3DBagRep接口的AddChild(CAA提供的添加子图形的方法)方法将设置的图形集合添加到视图集合中。剖面绘制完成后,将生成的剖面对象profileObj存储在剖面集对象profileObjSet中,待所有剖面都绘制完成且存储进剖面集对象profileObjSet中,则剖面集生成完成。
同时为用户提供预览功能,若在预览时对即将生成的剖面集效果不满意,可以取消操作重新生成。
2、一键生成剖视图
2.1、批量生成剖视图
用户在二维视图中激活剖视图生成功能后,通过在弹出的工具栏中选择三维视图中生成的剖面集、设定视图比例以及剖视图的生成方式后,内部程序开始执行剖视图的生成过程。具体流程如图4所示。首先拿到之前生成的剖面集对象及相关的属性信息,然后选择生成三视图或选择激活的视图,若选择三视图则生成三视图并将三视图添加到当前视图列表,之后将剖面图逐一投影到当前主视图中;若选择激活视图则将激活视图添加到当前视图列表,接着将剖面图逐一投影到当前视图列表中的视图中。若剖面图不与当前视图相交,则跳过当前剖面图继续投影下一个剖面图,最后根据所生成的投影边界点以及投影方向、视图比例等参数,调用CAA提供的CreateSectionView(CAA提供的创建剖视图的方法)方法,为当前视图列表中的视图逐一创建剖视图。
2.2、剖视图布置
待所有剖视图成功生成后,内部程序首先会设置主视图为激活视图,通过考虑当前视图原点及视图比例,将视图中坐标转换为全局坐标,然后计算各个视图对应的包围盒范围,若当前视图包围盒范围与之前视图范围重叠,则将当前视图位置进行调整,具体调整流程如下:
首先判断当前剖视图与主视图包围盒是否相交,若相交则需要调整当前剖视图位置,先判断当前剖视图的剖切轮廓是水平还是竖直,若是水平,则判断主视图包围盒右上角点P MRT的Y值是否大于当前视图的左上角点P CLT的Y值,如果大于则将主视图包围盒右上角点P MRT的Y值赋给当前视图的左上角点P CLT,否则不赋值,然后获取主视图包围盒右上角点P MRT和右下角点P MRD的中点P MRM到当前视图左上角点P CLT和左下角点P CLD连线的距离D Hi,然后将当前视图向右移动D Hi,再判断主视图包围盒右侧中点P MRM距当前视图左上角点P CLT和左下角点P CLD的中点P CLM的水平距离D Hj是否超过提前预设的视图间距L m,若超过则再向右移动D Hj,否则不移动;若剖切轮廓竖直,则判断主视图包围盒右下角点P MRD的X值是否大于当前视图的右上角点P CRT的X值,如果大于则将主视图包围盒右下角点P MRD的X值赋给当前视图的右上角点P CRT,否则不赋值,然后获取主视图包围盒右下角点P MRD和左下角点P MLD的中点P MMD到当前视图左上角点P CLT和右上角点P CRT连线的距离D Vi,然后将当前视图向下移动D Vi,再判断主视图包围盒下侧中点P MMD到当前视图左上角点P CLT和右上角点P CRT的中点P CMT的竖直距离D Vj是否超过提前预设的视图间距L m,若超过则再向下移动D Vj,否则不移动。
内部程序将各个视图位置逐一调整后,用户最后通过鼠标左键点选来确定视图的生成位置,至此剖视图的生成功能完成。
实施例3
本发明提供了基于CATIA V6的快速生成剖视图的方法,解决了CATIA V6原生功能生成剖视图效率低、不能根据特定规则生成剖面集以及用户需要手动调整剖面位置的问题,同时提供过滤几何特征、产品间拷贝几何特征、曲线上生成辅助点、生成辅助面、剖面信息投影到当前视图等方法,可满足用户使用CATIA V6批量生成剖视图的需求。具体体现在:
1、基于CATIA V6自定义特征、3DBagRep可以快速生成剖视图,补全CATIA V6原生功能生成剖视图效率低的短板。
2、提供批量生成剖面集的方法,填充CATIA V6原生功能不能根据特定规则生成剖面集的空白。
3、提供获取几何图形包围盒范围的方法,对即将生成的剖面范围作出限制,避免被剖对象被遮挡。
4、提供对多个视图的位置进行排布的方法,可为用户自动调整剖视图位置。
5、在选择参考面及参考线时提供对所选几何特征类型进行过滤的方法。
6、剖面间距和数量初步定义后,在剖面特征工具栏及剖面属性编辑框中即时展现剖面信息,在编辑框中对剖面特征属性进行修改后即时更新剖面特征工具栏中的剖面信息。
7、提供在产品间拷贝几何特征的方法。
8、提供在曲线上根据参考面生成一系列指定间距辅助点的方法。
9、提供在曲线上根据辅助点列表及所选参考线生成一系列辅助面的方法。
10、将几何图形包围盒顶点投影到辅助面上,并提供获取围成最大面积剖面角点的方法。
11、提供将剖面投影到当前视图获取边界点的方法。
Claims (2)
1.基于CATIA V6的快速生成剖视图的方法,其特征在于,包括自定义剖面特征;之后,在三维视图中激活剖面集生成功能后选择参考面和参考线并设置剖面间距和剖面数量,生成剖面并将剖面信息存储到自定义的剖面特征实例化对象中,在三维视图中生成剖面集;最后,在二维视图中激活剖视图生成功能后选择生成的剖面集,确定剖面位置后生成剖视图;包括以下步骤:
步骤1、批量生成剖面集:
步骤1.1、自定义剖面特征;
步骤1.2、在三维视图中激活剖面集生成功能后,首先选择参考面和参考线,然后设置剖面间距和剖面数量得到即将生成的各剖面的偏移距离;
步骤1.3、判断步骤1.2所得偏移距离,若需要调整,则在剖面属性编辑框中重新调整剖面的偏移距离;反之,则直接进入步骤1.4;
步骤1.4、基于步骤1.2选择的参考面和参考线和步骤1.3所得偏移距离生成剖面,并将剖面信息存储到步骤1.1自定义的剖面特征的实例化对象中,在三维视图中生成剖面集;具体包括以下步骤:
步骤1.4.1、获取当前三维视图中几何图形包围盒范围,然后将选择的参考面和参考线复制到待生成的剖面集所在的目标产品下,根据偏移距离及参考面,在参考线上创建辅助点的列表;具体为:获取参考线的起点和终点,然后根据参考线起点到参考面的距离L sp和参考线终点到参考面的距离L ep的大小关系来判断当前点的偏移方向与参考线方向是否一致,若L sp≦L ep,则认为同向,否则认为反向;同时获取到参考线的长度L l,判断剖面的偏移距离D oi是否大于参考线的长度L l,若大于则认为生成的辅助点已超出参考线范围;反之则将参考线起点沿偏移方向在参考线上移动偏移距离生成辅助点,并保存在列表中;
步骤1.4.2、根据辅助点列表及参考线,创建辅助面的列表;再对定义的扩展类进行实例化以创建剖面集的特征对象即剖面集对象和剖面的特征对象即剖面对象;最后将几何图形包围盒的顶点投影到各个辅助面上获得形成最大面积剖面的角点;具体包括以下步骤:
步骤1.4.2.1、首先获取到参考线上以各个辅助点为切点的切线,然后以切线作为面法线,以辅助点为面原点创建辅助面,并保存在列表中;
步骤1.4.2.2、对定义的扩展类进行实例化以创建剖面集的特征对象即剖面集对象和剖面的特征对象即剖面对象;
步骤1.4.2.3、首先根据几何图形包围盒范围获取8个顶点的空间坐标并投影到创建的辅助面上,然后通过去重剔除掉8个投影点坐标中存在的重复坐标点,确定投影点在辅助面上相对于辅助点的位置关系:
1)通过比较第一个投影点坐标与辅助点构成的基准向量V ec1与其余投影点坐标与辅助点构成的向量V eci的角度关系来确定所判断投影点位于第一个投影点相对于辅助点的同侧还是异侧,判断公式为:
2)根据投影点坐标到辅助点的距离大小,分别对辅助点两侧的投影点做降序处理;
3)在辅助点两侧分别取距离较远的两个投影点以构成四个点来围成剖面,并根据以下规则确保其中任意三点不在同一直线上:
前两点构成的向量为v ec1,第一点与其余点构成的向量为v eci:
若两向量的夹角值等于±1,则剔除掉使三点在同一直线上的驻点,并继续在驻点所在点列表中取下一个距辅助点的距离较远点,继续进行任意三点是否在同一直线上的判断,直至拿够围成剖面所需的四个点;
步骤1.4.2.4、得到距离辅助点较远的四个投影点,按排序规则重新排序后按顺序围成规则的四边形,排序规则为:将获取到的第一点直接存储;判断其余三点到第一点的距离大小关系,距离最小的存储为第二点;判断其余两点到第二点的距离大小关系,距离较小的存储为第三点,距离较大的存储为第四点,排序后的四个投影点即为围成剖面的四个角点;
步骤1.4.3、将角点存储在剖面对象的属性信息中,绘制剖面后将生成的剖面对象存储在剖面集对象中,待所有剖面都绘制完成且存储进剖面集对象中,则剖面集生成完成;具体包括以下步骤:
步骤1.4.3.1、将排序后的四个角点存储在剖面对象的属性信息中,再发送开始绘制剖面形状的事件通知;
步骤1.4.3.2、收到绘图的事件通知后,首先初始化视图集合;然后通过四个角点坐标来绘制三维线段,并对图形颜色进行设置;再将绘制的线段及设置的颜色添加到图形集合中;最后将设置的图形集合添加到视图集合中;
步骤1.4.3.3、剖面绘制完成后,将生成的剖面对象存储在剖面集对象中,待所有剖面都绘制完成且存储进剖面集对象中,则剖面集生成完成;
步骤2、一键生成剖视图:
步骤2.1、在二维视图中激活剖视图生成功能后选择步骤1.4生成的剖面集,生成剖视图;具体为:获取到步骤1.4.3.3中生成的剖面集对象,并选择生成三视图或选择激活视图,若选择三视图则生成三视图并将三视图添加到当前视图列表,之后将剖面图逐一投影到当前主视图中;若选择激活视图则将激活视图添加到当前视图列表,之后将剖面图逐一投影到当前视图列表中的视图中;若剖面图不与当前视图相交,则跳过当前剖面图继续投影下一个剖面图,最后根据生成的投影边界点以及投影方向、视图比例,为当前视图列表中的视图逐一创建剖视图;
步骤2.2、调整步骤2.1生成各个视图的位置,具体为:判断当前剖视图与主视图包围盒是否相交,若相交则需要调整当前剖视图位置,先判断当前剖视图的剖切轮廓是水平还是竖直:若剖切轮廓水平,则判断主视图包围盒右上角点P MRT的Y值是否大于当前视图的左上角点P CLT的Y值,如果大于则将主视图包围盒右上角点P MRT的Y值赋给当前视图的左上角点P CLT,否则不赋值;然后获取主视图包围盒右上角点P MRT和右下角点P MRD的中点P MRM到当前视图左上角点P CLT和左下角点P CLD连线的距离D Hi,然后将当前视图向右移动D Hi,再判断主视图包围盒右侧中点P MRM距当前视图左上角点P CLT和左下角点P CLD的中点P CLM的水平距离D Hj是否超过预设的视图间距L m,若超过则再向右移动D Hj,否则不移动;
若剖切轮廓竖直,则判断主视图包围盒右下角点P MRD的X值是否大于当前视图的右上角点P CRT的X值,如果大于则将主视图包围盒右下角点P MRD的X值赋给当前视图的右上角点P CRT,否则不赋值;然后获取主视图包围盒右下角点P MRD和左下角点P MLD的中点P MMD到当前视图左上角点P CLT和右上角点P CRT连线的距离D Vi,然后将当前视图向下移动D Vi,再判断主视图包围盒下侧中点P MMD到当前视图左上角点P CLT和右上角点P CRT的中点P CMT的竖直距离D Vj是否超过预设的视图间距L m,若超过则再向下移动D Vj,否则不移动;
确定各个视图的生成位置后完成剖视图的一键生成。
2.如权利要求1所述的基于CATIA V6的快速生成剖视图的方法,其特征在于,所述步骤1.1具体为:注册并生成CATfct文件,通过命令反向生成osm文件,在osm文件中定义剖面集和剖面特征属性的对象信息,然后通过命令将osm文件转换成CATfct文件,最后为特征属性的对象信息定义扩展类。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410142056.4A CN117670660B (zh) | 2024-02-01 | 2024-02-01 | 基于catia v6的快速生成剖视图的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410142056.4A CN117670660B (zh) | 2024-02-01 | 2024-02-01 | 基于catia v6的快速生成剖视图的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117670660A CN117670660A (zh) | 2024-03-08 |
CN117670660B true CN117670660B (zh) | 2024-04-30 |
Family
ID=90084782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410142056.4A Active CN117670660B (zh) | 2024-02-01 | 2024-02-01 | 基于catia v6的快速生成剖视图的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117670660B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104299269A (zh) * | 2014-09-30 | 2015-01-21 | 长江岩土工程总公司(武汉) | 一种三维地质模型的地质剖面输出方法 |
CN105303590A (zh) * | 2015-11-25 | 2016-02-03 | 中国地质大学(武汉) | 带属性三维矿体的块体模型切割生成二维剖面图的方法 |
CN105389413A (zh) * | 2014-08-26 | 2016-03-09 | 达索系统公司 | 方法和装置 |
CN107194074A (zh) * | 2017-05-24 | 2017-09-22 | 中国电建集团贵阳勘测设计研究院有限公司 | 利用catia三维软件建立面板坝趾板参数化模型的方法 |
CN109035364A (zh) * | 2018-07-23 | 2018-12-18 | 山东省地质矿产勘查开发局第五地质大队(山东省第五地质矿产勘查院) | 一种基于cad地形图快速绘制剖面图的方法 |
CN110335345A (zh) * | 2019-07-02 | 2019-10-15 | 同济大学建筑设计研究院(集团)有限公司 | 幕墙节点渲染方法、装置、计算机设备和存储介质 |
KR20220058478A (ko) * | 2020-10-30 | 2022-05-09 | 윤병윤 | 건설을 위한 2d 도면을 활용한 3d 도면 제작 방법 및 이를 이용한 물량 개산 방법 |
CN115455512A (zh) * | 2022-08-11 | 2022-12-09 | 长江岩土工程有限公司 | 基于3de平台的三维地质模型二维出图方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2523131A1 (en) * | 2011-05-11 | 2012-11-14 | Dassault Systèmes | Designing a staggered pattern of objects in a computer-aided design system |
US10437938B2 (en) * | 2015-02-25 | 2019-10-08 | Onshape Inc. | Multi-user cloud parametric feature-based 3D CAD system |
-
2024
- 2024-02-01 CN CN202410142056.4A patent/CN117670660B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105389413A (zh) * | 2014-08-26 | 2016-03-09 | 达索系统公司 | 方法和装置 |
CN104299269A (zh) * | 2014-09-30 | 2015-01-21 | 长江岩土工程总公司(武汉) | 一种三维地质模型的地质剖面输出方法 |
CN105303590A (zh) * | 2015-11-25 | 2016-02-03 | 中国地质大学(武汉) | 带属性三维矿体的块体模型切割生成二维剖面图的方法 |
CN107194074A (zh) * | 2017-05-24 | 2017-09-22 | 中国电建集团贵阳勘测设计研究院有限公司 | 利用catia三维软件建立面板坝趾板参数化模型的方法 |
CN109035364A (zh) * | 2018-07-23 | 2018-12-18 | 山东省地质矿产勘查开发局第五地质大队(山东省第五地质矿产勘查院) | 一种基于cad地形图快速绘制剖面图的方法 |
CN110335345A (zh) * | 2019-07-02 | 2019-10-15 | 同济大学建筑设计研究院(集团)有限公司 | 幕墙节点渲染方法、装置、计算机设备和存储介质 |
KR20220058478A (ko) * | 2020-10-30 | 2022-05-09 | 윤병윤 | 건설을 위한 2d 도면을 활용한 3d 도면 제작 방법 및 이를 이용한 물량 개산 방법 |
CN115455512A (zh) * | 2022-08-11 | 2022-12-09 | 长江岩土工程有限公司 | 基于3de平台的三维地质模型二维出图方法 |
Non-Patent Citations (2)
Title |
---|
基于CATIA V6的船体结构二维出图关键技术;邱雨, 杜文磊, 杨中 等;船舶工程;20200725;第42卷(第07期);第1、2节 * |
基于CATIA_V6的工程图矢量填充方法;武佩佩, 邢洁鋆, 韩娅娜 等;西北水电;20221231;第2022卷(第06期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN117670660A (zh) | 2024-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5892691A (en) | Method, apparatus, and software product for generating weighted deformations for geometric models | |
US11144679B2 (en) | Engraving a 2D image on a subdivision surface | |
JP5561975B2 (ja) | 表面加工データの作成方法および装置 | |
JP5562075B2 (ja) | 表面加工データの作成方法および装置 | |
US6307554B1 (en) | Apparatus and method for generating progressive polygon data, and apparatus and method for generating three-dimensional real-time graphics using the same | |
WO2012120724A1 (ja) | 表面加工データの作成方法および装置 | |
US7643026B2 (en) | NURBS surface deformation apparatus and the method using 3D target curve | |
US20060017723A1 (en) | Deformation of a computer-generated model | |
WO2000002165A1 (fr) | Procede permettant de produire des donnees de polygone et afficheur d'images utilisant lesdites donnees | |
US6844876B2 (en) | Apparatus and method for generating 3D graphics | |
CN111612911A (zh) | 基于Dynamo的点云BIM自动化建模方法 | |
CN110795796A (zh) | 设计表示机械结构的3d建模的对象 | |
CN111161129A (zh) | 二维图像的立体交互设计方法、系统 | |
CN117670660B (zh) | 基于catia v6的快速生成剖视图的方法 | |
CN111210520A (zh) | 一种用于实物模型的逆向成形方法及系统 | |
CN113781642A (zh) | 一种基于减面算法的三维模型多层级lod的生成方法 | |
CN113012259A (zh) | 一种基于三角剖分算法对凹多边形填充处理的方法 | |
Rockwood | Introducing sculptured surfaces into a geometric modeler | |
JPH08315183A (ja) | 自動メッシュ生成方法及びシステム | |
CN113674294A (zh) | 一种3d模型切片处理方法及装置 | |
JP3425760B2 (ja) | 干渉チェック装置 | |
CN113076571A (zh) | 一种三维衣物实时仿真编辑方法及系统 | |
JPH07272000A (ja) | テクスチャマッピング装置 | |
CN116630486B (zh) | 一种基于Unity3D渲染的半自动化动画制作方法 | |
Schmitt et al. | Extended space mapping with Bezier patches and volumes |
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 | ||
GR01 | Patent grant |