为了读取我的步骤文件中的所有形状,我已经成功地使用 STEPControl_reader 提取了所有形状。现在我想找到一种方法(OCAF/XDE ?)来提取一个树视图,其中包含另一个形状包含的形状。
任何人都可以提供一些使用 OCAF 或 XDE 在步骤文件中提取这些信息的示例的指针。我很难理解官方文档,因为它缺少示例。
编辑:通过使用 Mayo 项目:您可以使用 XdeDocumentItem::XdeDocumentItem(...) 构造函数并递归地创建节点。
XdeDocumentItem::XdeDocumentItem(const Handle_TDocStd_Document &doc)
: m_cafDoc(doc),
m_shapeTool(XCAFDoc_DocumentTool::ShapeTool(doc->Main())),
m_colorTool(XCAFDoc_DocumentTool::ColorTool(doc->Main())){
this->rebuildAssemblyTree();}
方法rebuildAssemblyTree 是这样的:
for (const TDF_Label& rootLabel : this->topLevelFreeShapes())
this->deepBuildAssemblyTree(0, rootLabel);