我一直在閱讀有關使用winged-edge data structure來存儲邊界表示。但是,鏈接網站說這是存儲b-reps的最古老的數據結構之一,是否有更新的更好的數據結構?邊界表示數據結構
其次,在C#中是否存在這種實現?
我一直在閱讀有關使用winged-edge data structure來存儲邊界表示。但是,鏈接網站說這是存儲b-reps的最古老的數據結構之一,是否有更新的更好的數據結構?邊界表示數據結構
其次,在C#中是否存在這種實現?
用於B-rep的數據結構與用於多邊形建模的數據結構非常相似 - 只需用曲線和麪用曲面替換邊。
wikipedia page on polygonal meshes有幾種類型,包括有翼邊緣。我個人喜歡半邊網格。他們做得不好的唯一的事情是非流形拓撲,你可能需要也可能不需要。如果這樣做,請查找徑向邊緣拓撲。
還有一個freely available B-rep datastructure從OpenNurbs(麥克尼爾,犀牛的製造商)。這也讓你文件IO,這很好。
不知道這是否會有所幫助,但XNA庫中有用於處理3D結構的Geometry對象,而不是。那裏可能有東西。但我的猜測是,它將是基於點或基於三角形與邊緣。
但它可能是一個看看的地方。
Boundary Representation Modelling Techniques by Ian Stroud會給你一個關於人們接觸B-reps的方式的調查,以及所有Euler操作員的大量圖表,以及用於實施B-reps的具體數據結構和算法。
無論您是否想將幾個字符向前移動到F#中,您都可以從源代碼中搜集Wings3d(用Erlang編寫)的相關信息。只是不要迷失在製造飛船,忘記你應該編碼!
另外the GML將允許你交互地調查你可以用你的B代碼做什麼,而數據結構是的代碼。
你在我發現半邊後約1小時數據結構我自己;)您可能想要編輯到您的答案的方便鏈接是http://www.flipcode.com/archives/The_Half-Edge_Data_Structure.shtml – Martin 2010-01-07 00:42:52