边界表示数据结构

3
我一直在阅读关于使用 翼边数据结构来存储边界表示的文章。然而,该链接网站表示这是存储b-reps的最古老的数据结构之一,是否有更新更好的数据结构?
其次,是否有C#的实现?
3个回答

4
B-rep所使用的数据结构与多边形建模非常相似 - 只需用曲线替换边缘并用曲面替换面。 维基百科关于多边形网格的页面列出了几种类型,包括有翼边。 个人喜欢半边网格。 它们唯一做不好的事情是非流形拓扑,这可能是你需要的或不需要的。 如果需要,请寻找径向边拓扑。 还有一个免费提供的B-rep数据结构来自OpenNurbs(Rhino制造商McNeel)。 这也让您获得文件IO,非常好。

你在我自己发现半边数据结构大约一个小时后进来的 ;) 一个方便的链接,你可能想要编辑到你的回答中是http://www.flipcode.com/archives/The_Half-Edge_Data_Structure.shtml - Martin

3

Ian Stroud的边界表示建模技术将为您提供人们处理B-reps的方法概述,以及众多带有所有欧拉算子的图表,以及实现B-reps命令式的具体数据结构和算法。

无论您是否想要进入F#领域,您都可以从Wings3d的源代码(用Erlang编写)中获取大量信息。只是不要迷失在制作太空飞船中,忘记了您应该在编程!

此外,GML将允许您交互式地研究您可以使用B-reps做什么,而数据结构就是代码。


0

不确定这是否有帮助,但在XNA库中有几何对象可用于处理3D结构等内容。可能会有一些相关内容。然而,我的猜测是它将基于点或三角形而非边缘。

但这可能是一个值得探索的方向。


我非常熟悉XNA,从未遇到过这样的情况:S - Martin
1
不确定您是否看到了这个链接,但它可能会有所帮助。需要将其转换为C#,但它可能能够指引您朝着正确的方向前进:http://www.flipcode.com/archives/The_Half-Edge_Data_Structure.shtml - Joshua Cauble

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接