通过获取三角剖分的坐标点可以大概提取三维模型分布范围,通过浏览OCC C++的API网站,可以查找和阅读三角剖分的相关API。
OCC C++ API
我们可以在BRep_Tool这个包里可以找到有关三角坐标点的函数Triangulation,他的第一个参数是拓扑形状中的面类型,我们可以通过拓扑形状探索类TopologyExplorer来遍历一个shape的所有面。然后他的第二个参数是location位置类,并且没有被const,且被&修饰,说明是传进一个会被修改的参数。因为我没有用到,猜测是会返回面或者三角坐标某个点。
t = TopologyExplorer(shp)
for f in t.faces():
pass;
主要关注的是返回的类型Poly_Triangulation,里面有很多关于三角坐标节点的函数,我们可以锁定他的一个函数Triangles,他会返回一个三角坐标的迭代器,包含所有在这个面上的三角坐标
通过遍历这个迭代器,并且通过类方法Value分别传参1,2,3就可以获取三个顶点的坐标点了。(注意!如果不先显示模型将会返回Non