occ常用几何功能记录
1、线(直线、射线)与面相交
BRepClass3d_Intersector3d::Perform (const gp_Lin& L, const Standard_Real Prm, const Standard_Real Tol, const TopoDS_Face& F)
BRepExtrema_ExtCF::Perform(const TopoDS_Edge& E,const TopoDS_Face& F);
Extrema_ExtCS(const Adaptor3d_Curve& C, const Adaptor3d_Surface& S, const Standard_Real TolC, const Standard_Real TolS);
2、计算曲面face的外包闭合边界线wire
ShapeAnalysis_FreeBounds(const TopoDS_Shape& shape, const Standard_Real toler, const Standard_Boolean splitclosed = Standard_False, const Standard_Boolean splitopen = Standard_True);
如果面开开有洞口的话,GetClosedWires()会返回多组wire
3、TopExp_Explorer和TopoDS_Iterator
TopExp_Explore是用TopoDS_Iterator实现的,TopoDS_Iterator只能遍历一级子对象
比如想获取TopoDS_Compound的直接子对象,就可以用TopoDS_Iterator