<2x1>OpenMesh译稿:使用并理解OpenMesh-OpenMesh的功能和目标

OpenMesh是一个强大的图形库,支持多边形网格,提供顶点、半边、边和面的高效表示。它允许自定义类型和属性,避免虚拟继承的开销,并确保句柄类型安全。本文介绍了OpenMesh的功能、目标以及类型安全特性。
摘要由CSDN通过智能技术生成

                                 

OpenMesh的功能和目标

底层数据结构的主要特征:

  1. 不仅限于三角形网格,也可以处理多边形网格;
  2. 顶点,半边,边及面的显示表示;
  3. 有效访问顶点的单环领域;
  4. 能够处理非流形几何(例如,两个面仅通过一个顶点相连);

使用C++的目的/特性:

  1. 柔顺性:
  1. 为标量及坐标选择合适的类型(例如,满足二维、三维或n维的float、double类型运算);
  2. 根据您自己的需求属性/性质强化项目类型。例如,加入一个向量或者FaceHandle类到Vertex类型中;
  1. 效率高:
  1. 避免虚拟继承和虚函数调用开销;
  2. 在编译时解析尽可能多的类型/属性依赖性,而不是在运行时测试属性(例如,面的法向量)。
  1. 句柄类型安全

不存在类型转换,顶点、半边、面能够识别其对应的句柄

         自从版本0.10.0

评论 39
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值