opencascade中顶点的精度对构建edge和wire的影响

顶点精度对edge构造的影响

在构建edge的各个函数中,有一个指定曲线,曲线参数和顶点值的构造方法。其函数原型如下:

BRepBuilderAPI_MakeEdge (const Handle< Geom_Curve > &L, const TopoDS_Vertex &V1, const TopoDS_Vertex &V2, const Standard_Real p1, const Standard_Real p2)

此函数在调用时,需要注意,各顶点的实际空间位置与该指定曲线实际首尾的位置需要满足如下条件:

P1.Distance(BRep_Tool::Pnt(V1)) > Max(preci,BRep_Tool::Tolerance(V1))

P2.Distance(BRep_Tool::Pnt(V2)) > Max(preci,BRep_Tool::Tolerance(V2))

其中,P1,P2分别为曲线的按p1,p2所指定起点和终点,V1,V2为传入的顶点参数。preci为BRepLib::Precision。这两个条件中任意一个不满足,都会导致创建edge失败。

顶点精度对wire构造的影响

然后是构建wire,opencascade提供构建wire函数,是通过一个个edge的传入而确定的。edge在wire中一定要首尾相连,否则就会构建失败。而判断是否首尾相连的关键是通过各个edge的vertex来确定的。判断两条边的vertex是否相关联分两个可能,第一,判断这两个边的顶点是否就是一条边。第二,判断这两个边的顶点在空间几何上是否满足精度要求以内的重合。第一条判断会被优先执行。

发表评论

邮箱地址不会被公开。 必填项已用*标注