一、拓扑结构 参数空间 OpenCASCADE的拓扑结构是在参数空间描述实体的数据结构——用局部参数空间或受限参数空间描述。
Quote:
参数空间(Parametric Space):设(X1,……,Xn)为来自总体X的样本,(x1,…xn)为相应的样本值,θ是总体分布的未知参数,θ∈Θ,
Θ表示θ的取值范围,称Θ为参数空间
能用这样的方法描述的的拓扑结构有:Vertex, Face 和 Shape。其中,Vertex用局部参数空间定义,Face和Shape用受限参数空间定义。
各种拓扑结构的关系 简单的拓扑结构可以可以组合成复杂拓扑结构:
Edge的集合构成Wire,Face的集合构成Shell,Solid的集合构成CompSolid。
各种不同的shape构成Compound
共享数据结构 shape在拓扑结构中是可以共享的,例如两条边的共点,两个面的共边。CASCADE用引用方法处理共享数据结构,当简单的引用不能满足需要的时候,就要用到另外的信息:orientation 和 local coordinate reference ( LCR )。其中,
× Orientation 用于指定shape在边界中的引用方法(shape的方向)。
× LCR 允许为一个shape制定一个不同于其定义位置的location。
Quote:
Orientation: CASCADE的四类方向
Quote:
Coordinate System of OpenCASCADE
二、TopoDS OpenCASCADE的TopoDS package提供了两大类class × TopoDS_Shape及其子类
包含orientation和location信息
× TopoDS_TShape及其子类
在local coordinate system描述shape,没有orientation信息。
两者的联系:
TopoDS_Shape
引用了一份TopoDS_TShape,并为TopoDS_TShape增加了orientation和location信息。结合
共享数据结构部分就可以看出:TopoDS_TShape包含了真正的几何数据,TopoDS_Shape实现了数据共享机制,并没有复杂的数据结构。正因为如此,CASCADE中TopoDS_Shape是以value的方式处理,而TopoDS_TShape以引用的方式处理。
TopoDS_Shape对象的比较 Partner关系:共享相同的TopoDS_TShape
Same关系:Partner关系,并且共享相同的local reference
Equal关系:Same关系,并且拥有相同的 Orientation,真正的相等。
参考文献: OpenCASCADE官方文档