- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
在网格-半边数据结构中,有边和半边。
在OpenMesh库中不需要,edge通常有一个给出前半边的方法:
Halfedge h = mesh.halfedge(e, 0); // e - is an edge in mesh; 0 - id of halfedge in edge
对于相反的边缘,我使用:
Halfedge h = mesh.halfedge(e, 1);
这个边缘函数在库中看起来像这样:
/// returns the \c i'th halfedge of edge \c e. \c i has to be 0 or 1.
Halfedge halfedge(Edge e, unsigned int i) const
{
assert(i<=1);
return Halfedge((e.idx() << 1) + i);
}
如果一对半边中只有一个存在,此函数是否会返回前半边?
最后一行伪代码是否对boundary边有效也是吗?
边界边有多少个half-edges?
半边数据结构中的边是否有 1 或 2 个半边边界?
最佳答案
我可以部分回答你的问题:
就我在 OpenMesh 数据结构中探索的主题而言,所有边都被分成 2 个半边,包括网格边界上的边。事实上,边并不存在,从字面上看,只有成对的半边存在。
也就是说,我只使用 OpenMesh 库,我不知道使用半边的其他库和数据结构的行为。
希望这对您有所帮助。
关于c++ - 半边数据结构网格 - OpenMesh C++ - 边缘中的边界半边,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47127027/
当我添加元素时,现有的 OpenMesh 迭代器会改变吗? 示例代码: auto vh1 = mesh.vertex_handle(0); auto vh2 = mesh.vertex_handle(
OpenMesh 有它的 skipping iterators跳过标记为删除的元素。 circulators中是否有等价物? ?我在考虑循环器,它们将标记为已删除的网格元素视为不再存在。 请注意,这并
我认为 OpenMesh 将支持对面边缘顶点的随机访问。我能找到的只是迭代器和循环器: for( auto v : mesh->vertices() ) mesh->point(v).data
我最近开始在一个需要细化网格的项目中使用 OpenMesh。我需要使用面 split(FaceHandle _fh, Point _p) 操作在三角形的质心处插入一个顶点。但是,当我使用此方法并尝试使
我该如何处理这个错误?我将 NOMINMAX 添加到预处理器定义中,但它不起作用。那么解决办法是什么呢? 错误如下。 ClCompile: 1> tricall.c 1> Detected min
我试图只设置特定面孔的颜色,但我的代码一直抛出错误。 mesh.set_color(*f_it, clr); 行抛出错误(关于属性错误)。我尝试将其更改为 mesh.set_color(f_it.ha
我开始使用 OpenMesh 遍历可能具有整体的网格,并且想知道实际检索与每条边关联的顶点的好方法是什么。 对于半边,有网格的方法opposite_he_opposite_vh和opposite_vh
我刚刚开始在 Python 中使用 OpenMesh。我首先尝试制作一个由单个四边形组成的 PolyMesh。这就是我所做的: from openmesh import * mesh = PolyMe
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 3 年前。 Improve this qu
我修改了一个网格,并添加了一些边。 然后我将修改后的网格保存到一个 .obj 文件中。当我使用 OpenMesh 读取功能打开这个 .obj 文件时,边的索引与我保存网格时的边索引不同,因为 .obj
我一直在关注 OpenMesh 教程 First Steps - Building a Cube通过一些修改,我使用了 TriMesh 而不是 PolyMesh,并且正在构建金字塔而不是立方体。 不知
我正在尝试使用 OpenMesh 抽取网格。我遵循了文档中所述的示例: cout n_vertices() decimater(*mesh); // a decimater objec
刚开始使用 OpenMesh,到目前为止我已经能够添加顶点和制作面孔。 我现在对如何向网格添加边有疑问。 我知道 openMesh 使用的半边数据结构,但我真的不明白我应该如何添加边.. 代码: 定义
我正在做一个项目,我正在使用 OpenMesh 读取 STL 和 obj 文件并使用 在屏幕上绘制它们openGL . 我一直在做以下事情, #include #include OpenMesh:
在网格-半边数据结构中,有边和半边。 在OpenMesh库中不需要,edge通常有一个给出前半边的方法: Halfedge h = mesh.halfedge(e, 0); // e - is an
我正在使用通过 pip 安装在 Python 3.6 中的 openmesh。我需要将自定义属性添加到网格的顶点,以便在每个顶点存储一些数据。我的代码如下: import openmesh as OM
使用 double s 我希望有大约 15 个小数点的精度。我知道很多十进制数是 not exactly representable in floating point notation , 所以我会
几天前,我问了一个关于如何使用 edge collapse with Assimp 的问题.平滑 obj 并删除软件中的重复顶点解决了可能使边缘折叠起作用的基本问题,我的意思是它起作用是因为它可以通过
通过读取 OpenMesh 文件时 OpenMesh::EPropHandleT prop_feature_edge; mesh.add_property(prop_feature_edge, "fe
我对 python 及其 C++ 包装器(如 boost python)还比较陌生。我试图让 OpenMesh C++ 库 python 绑定(bind)与 python 3 一起工作。 有人知道它是
我是一名优秀的程序员,十分优秀!