我有一个从 OnShape 导出的 STEP 文件。
在我的 OnShape 文档中,我有一个装配体,其中包含一个零件和另一个装配体的两个实例(其中还有另外 2 个零件)。
当我在python-occ中打开此文件时,我得到的唯一结果是一个似乎包含每个面而不是具有某种层次结构的形状。
有没有办法探索这个层次结构?列出零件及其在装配中的使用位置。
最佳答案
因此,解决方案是,即使我没有获得程序集的任何层次结构,我也可以取回所有零件并提取所有独特的零件。
打开STEP文件:
sr = STEPControl_Reader()
sr.ReadFile("myFile.step")
传输所有根,然后将每个形状作为根,访问它们:
ex = TopExp_Explorer(shape, TopAbs_SOLID)
您可以使用 TShape 识别独特的零件:
solid = ex.Current()
tshapePtr = solid.TShape().DumpToString()
tshapePtr 的值对于使用相同 TShape 的每个形状都相同,因此是相同的部分。
然后通过使用三角测量探索每个面的形状来简单地提取面和顶点。
关于python - 从 STEP 文件解析 BReps,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34051954/