Tech Soft 3D致力于用无与伦比的技术推动创新,并很高兴为Oracle、SIEMENS、Hexagon Matrology和Stratasist,提供用最快、最准确的数据转换工具包获取CAD数据。
HOOPS Exchange允许开发团队轻松构建,通过单一接口将CAD数据转换为30多种文件格式的应用程序,支持的格式包括Catia、SolidWorks、CREO、AutoDesk inventor、STEP、SIEMENS NX等,还支持访问广泛的数据,包括以其原生形式的B-REP、视觉、语义PMI、可视化视图和构造几何。 HOOPS Exchange提供了广泛的装配结构支持,包括配置和族表。
它还提供对用ID,样式、颜色、材料和其他元数据的访问,它具有特征树支持,包括完整的定义和模式。这些都不用依赖任何CAD系统,可以让您的用户随时随地访问它们的数据,不管你是需要在桌面上运行Windows,Linux,MacOs还是Android,IOS,移动设备,甚至云端服务器访问。
本文将详细介绍,3D模型格式转换工具HOOPS Exchange是如何获取模型的特征树的。
?
申请HOOPS Exchange试用http://x7pfmmn259623uby.mikecrm.com/l9292M9
特征树是在CAD系统中创建零件所采取的所有步骤。例如:
1)选择草图并定义挤出,构成一个模型实体;
2)选择该模型的一条边,然后以这条边为基础,创建圆角;
3)在该模型上打一个孔。
在这创建模型的过程,通常使用树结构来描述这些特征,树结构的层次结构可以有效的表示特征的依赖关系,例如:
使用HOOPS Exchange,我们可以读取CATIA V5、Creo、NX 和 SolidWorks文件的特征树,并从特征树中获取到如下特征的所有参数:
这些信息对于优化下游流程(包括分析、制造和计量)特别有用,在了解特征树的基本信息之后,我们首先要知道如读取这些信息。
要读取模型中的特征信息,需要在导入模型之前将?m_bReadFeature属性设置为true,因为在默认情况下,HOOPS Exchange不会从 CAD 模型中读取特征。
?
设置m_bReadFeature后,在导入模型时,导入器将读取模型的特征信息。
接下来,我们可以从A3DAsmProductOccurrenceData中获得特征树的具体信息,其数据结构为A3DFRMFeatureTreeData:
?
?
在获取到特征树对象后,我们需要解析其具体的数据结构,特征树在PRC文件中的数据结构如下:
?
在A3DFRMFeatureTreeData数据结构中,有三个独立的表示项阵列,用于存储关于三种几何类型的信息:
1)最终几何。
2)中间几何。
3)内部几何。
其定义如下:
最终几何表示在打开CAD文件时在3D场景中显示的内容。
中间几何表示实体结构中某个阶段存在的实体。例如,下面的图片中的蓝色loop可能仅在创建倒角(右图)之前的中间阶段存在。因此,它被存储在表示项的中间几何数组中。
?
内部几何表示在给定特征的上下文中创建的东西。例如,轴可以在定义挤压时被创建。在这种情况下,它将存储在表示项内部几何数组中。
除了上述数组之外,A3DFRMFeatureTreeData数据结构中还有另一个数组,称为m_ppsParameters,它包含A3DFRMParameter元素,用于存储实际的特征树和特征信息。
为了描述特征树,我们递归特征参数的结构。A3DFRMParameter包含A3DFRMFeature元素数组,?A3DFRMFeature包含A3DFRMParameter元素数组。
?
我们举一个示例特征(三点定义一个平面),该特征可以在Catia、NX或Creo中使用三个点进行定义。以下截图为该特征在Catia、NX或Creo中模型树截图:
?
该平面在HOOPS Exchange中特征树结构如下:
?
HOOPS Exchange可以读取V5、NX和Creo中的孔、阵列、挤压、旋转以及圆角这些特征的所有参数。
Parameter–Feature对象是一种通用的数据结构。在实践中,特征树中的大多数特征可以用相似的参数和特征对象来描述。
?
下面介绍一下孔的特征信息。
每个孔都包含诸如深度和直径的基本信息:
?
更复杂的孔类型包含额外的信息。例如,附加角度用于描述锥形孔,而沉孔具有附加角度、深度和直径:
?
螺纹信息也可以包含在孔特征中:
?
在Parameter–Feature对象中,所有信息都在Node类型的特征中描述。