边界表示数据结构

发布于 2024-08-16 09:32:54 字数 225 浏览 3 评论 0原文

我一直在阅读有关使用 winged -edge 数据结构,用于存储边界表示。然而,链接站点说这是用于存储 b-reps 的最古老的数据结构之一,是否有更新的更好的数据结构?

其次,C#中有这个实现吗?

I've been reading about using the winged-edge data structure for storing a boundary representation. However, the linked site says that this is one of the oldest data structres for storing b-reps, are there newer better ones?

Secondly, is there an implementation of this in C#?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

只等公子 2024-08-23 09:32:54

用于 B-rep 的数据结构与用于多边形建模的数据结构非常相似 - 您只需用曲线替换边,用曲面替换面。

关于多边形网格的维基百科页面列出了多种类型,包括翼状边缘。我个人喜欢半边网格。他们唯一做得不好的是非流形拓扑,您可能需要也可能不需要。如果这样做,请寻找径向边缘拓扑。

还有一个来自 免费提供的 B-rep 数据结构 “http://www.opennurbs.org/” rel="nofollow noreferrer">OpenNurbs(McNeel,Rhino 的制造商)。这还可以让你获得文件 IO,这很好。

The datastructure used for a B-rep is very similar to those used for polygonal modeling - you just replace the edges with curves and the faces with surfaces.

The wikipedia page on polygonal meshes has several types listed, including winged edge. Personally I like half-edge meshes. The only thing they can't do well is non-manifold topology, which you may or may not need. If you do, look for radial edge topology.

There's also a freely available B-rep datastructure from OpenNurbs (McNeel, the makers of Rhino). That also gets you file IO, which is nice.

吻风 2024-08-23 09:32:54

Ia​​n Stroud 的边界表示建模技术将为您提供人们接近 B- 的方式的调查代表,以及大量包含所有欧拉运算符的图表,以及用于强制实现 B-代表的具体数据结构和算法。

无论您是否想将一些字符向前移动到 F# 中,您都可以从 Wings3d 的源代码中收集大量信息 (用 Erlang 编写)。只是不要在制作宇宙飞船的过程中迷失了方向,而忘记了自己应该在编码!

此外,GML 将允许您以交互方式调查您可以使用 B-reps 和数据做什么结构代码。

Boundary Representation Modelling Techniques by Ian Stroud will give you a survey of ways people have approached B-reps, along with a plethora of diagrams with all the Euler operators, and concrete data structures and algorithms for implementing B-reps imperatively.

Whether you want to move a few characters forward into F# or not, you may glean quite a bit of info from the source code for Wings3d (written in Erlang). Just don't get lost making spaceships and forget you were supposed to be coding!

Also the GML will allow you to investigate interactively what you can do with your B-reps, and the data structure is the code.

公布 2024-08-23 09:32:54

不确定这是否有帮助,但 XNA 库中有用于处理 3D 结构等的几何对象。里面可能有东西。然而我的猜测是它要么是基于点的,要么是基于三角形的,而不是基于边缘的。

但这可能是一个值得一看的地方。

Not sure if this will help or not but there are Geometry objects in the XNA library for dealing with 3D Structures and what not. There may be something in there. However my guess is that it will either be Point based or Triangle based vs edge based.

But it might be a place to look.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文