我知道B-Rep(ParaSolid)是流行的固体表现形式。根据我过去的经验,我总是触摸像OBJ,STL文件格式这样的三角形网格表示。我想知道为什么B-Rep比网格表示更好?主要区别是什么?
答案 0 :(得分:6)
边界表示(b-rep)实体建模器使用精确几何和边界拓扑的组合来表示诸如实体(三维流形),曲面(二维流形)和线(一维流形)之类的对象。
b-rep的显着特性是它代表几何精确。 b-rep的面由与面相关的表面的方程定义。边缘用精确的曲线表示,通常是其相邻面的交叉曲线。 (有时,当精确曲线难以计算或面部不能精确匹配时,会使用近似曲线 - 这称为“宽容”模型)。
因为b-rep的基础几何是精确的,所以可以(原则上)查询模型到任意精度。例如,如果你有一个带有圆柱孔的盒子的b-rep,你可以查询盒子的体积到任意精度。使用曲面细分模型,您只能根据曲面细分的精度计算体积,这绝不能完全代表圆柱孔。
b-reps的另一个好处是它们往往比镶嵌模型更紧凑。作为一个简单的例子,表示为b-rep的球体具有与球体几何形状相关联的单个面。它只需要一个中心和半径来定义该球体,并且只需要几个字节来支持它的b-rep数据结构。曲面细分的球体模型可能有许多顶点,每个顶点都有3个坐标。
潜水更深一些,对曲面细分的布尔运算是有问题的,因为其中一个物体上的刻面可能与另一个刻面上的刻面不对齐。需要某种整改过程,这会增加组合模型的复杂性和不准确性。 b-reps不会出现这样的问题,因为新曲线可以计算为交叉面下面的曲面的交点。
另一方面,由于操纵它们的技术日趋成熟,细分模型正变得越来越流行。例如,使用discrete differential geometry和离散谱方法,我们可以以最小化离散曲率的局部变化的方式操纵布尔中的网格,或者我们可以使用移动多个点的简单控制来操纵曲面细分的区域。 / p>
曲面细分模型的另一个好处是它们对扫描数据更好。如果扫描人脸,则无需尝试找到精确的曲面来表示数据,曲面细分图像就足够了。
答案 1 :(得分:0)
首先,更好的是什么?
例如,对于3D打印或纯粹的可视化目的,网格表示更适合。
B-Rep保留基础几何体(曲面,曲线,点),以及模型拓扑项(面,边,顶点)之间的连通性。因此,允许更丰富的操作(特征)设置:圆角,混合等