亚洲成人久久久国产91共享福利|91麻豆产精品久久久爱色99中文字幕|日韩精品久久久久久日韩成人 中文字幕|武藤兰高清码av在线|中文字幕人妻一区二区三区久久|许木学长糖心vlog|99久久久成人国产精品|久久久 国产精品|亚洲精品福利电影|99久久久久久国产精品,国产av 中文字幕,91色婷婷综合久久久中文,裸交国产写真

3D模型文件格式之Ply

3D打印軟件設計算法
2013
01/03
16:41
分享
評論
Ply文件格式是Stanford大學開發(fā)的一套三維mesh模型數(shù)據(jù)格式,,圖形學領域內很多著名的模型數(shù)據(jù),,比如Stanford的三維掃描數(shù)據(jù)庫[1](其中包括很多文章中會見到的Happy Buddha、Dragon,、Bunny兔子),,Geogia Tech的大型幾何模型庫[3],北卡(UNC)的電廠模型[4]等,,最初的模型都是基于這個格式的,。

PLY多邊形文件格式的開發(fā)目標是建立一套針對多邊形模型的,結構簡單但是能夠滿足大多數(shù)圖形應用需要的模型格式,,而且它允許以ASCII碼格式或二進制形式存儲文件,。PLY的開發(fā)者希望,這樣一套既簡單又靈活的文件格式,,能夠幫助開發(fā)人員避免重復開發(fā)文件格式的問題,。然而由于各種各樣的原因,,在工業(yè)領域內,新的文件格式仍然在不斷的出現(xiàn),,但是在圖形學的研究領域中,,PLY還是種常用且重要的文件格式。

PLY作為一種多邊形模型數(shù)據(jù)格式,,不同于三維引擎中常用的場景圖文件格式和腳本文件,,每個PLY文件只用于描述一個多邊形模型對象(Object),該模型對象可以通過諸如頂點,、面等數(shù)據(jù)進行描述,,每一類這樣的數(shù)據(jù)被稱作一種元素(Element)。相比于現(xiàn)代的三維引擎中所用到的各種復雜格式,,PLY實在是種簡單的不能再簡單的文件格式,,但是如果仔細研究就會發(fā)現(xiàn),就像設計者所說的,,這對于絕大多數(shù)的圖形應用來說已經是足夠用了,。

PLY的文件結構同樣很簡單:文件頭加上元素數(shù)據(jù)列表。其中文件頭中以行為單位描述文件類型,、格式與版本,、元素類型、元素的屬性等,,然后就根據(jù)在文件頭中所列出元素類型的順序及其屬性,依次記錄各個元素的屬性數(shù)據(jù),。

下面這個例子是一個典型的ASCII格式的PLY文件,,其所描述的是一個立方體。
ply

format ascii 1.0 ...{ 文件類型:ascii或binary,,版本號 }

comment made by anonymous ... { 注釋行 }

comment this file is a cube ...{ 注釋行 }

element vertex 8 ...{ 定義“頂點”元素,,其數(shù)量為8個 }

property float32 x ...{ 頂點的x屬性,數(shù)據(jù)類型為float32 }

property float32 y ...{ 頂點的x屬性,,數(shù)據(jù)類型為float32 }

property float32 z ...{ 頂點的x屬性,,數(shù)據(jù)類型為float32 }

element face 6 ...{ 定義“面”元素,其數(shù)量為6個 }

property list uint8 int32 vertex_index ...{ 面的頂點索引屬性,,類型為uint8的列表 }

end_header ...{ 文件頭結束標志 }

0 0 0 ...{ 頂點元素列表 }

0 0 1

0 1 1

0 1 0

1 0 0

1 0 1

1 1 1

1 1 0

4 0 1 2 3 ...{ 面元素列表 }

4 7 6 5 4

4 0 4 5 1

4 1 5 6 2

4 2 6 7 3

4 3 7 4 0

從這個文件的文件頭可以看到,,文件定義的對象由8個頂點元素和6個多邊形面元素組成,其中頂點元素包括x,、y,、z三個屬性,其在文件中均為32位浮點類型,,而多邊形面元素則只包括一個頂點索引列表的屬性,,作為一個列表屬性,,它包括兩部分,即列表元素的數(shù)量(uint8類型)及各個列表元素(int32類型),,其中每個列表屬性的數(shù)據(jù)包括4個列表元素,,分別表示每個多邊形面的4個頂點的索引。

PLY格式支持如下的數(shù)據(jù)類型,。
name type number of bytes
---------------------------------------
int8 character 1
uint8 unsigned character 1
int16 short integer 2
uint16 unsigned short integer 2
int32 integer 4
uint32 unsigned integer 4
float32 single-precision float 4
float64 double-precision float 8

但是需要注意,,由于PLY格式的開放性,有些PLY文件的解析程序不支持全部的數(shù)據(jù)類型,,也有的PLY文件采用自定義的數(shù)據(jù)類型,,這些都有可能導致文件解析過程的失敗。

對于元素的屬性定義方式,,PLY允許單一屬性定義:
property
以及列表屬性方式:
property list

其中第一個數(shù)據(jù)類型描述列表元素數(shù)量,,第二個數(shù)據(jù)類型描述每個列表元素。
除了頂點和多邊形面兩種基本元素外,,PLY文件格式允許使用自定義的元素和元素屬性,,稱為Other Element和Other Property。只要遵循文件格式中對元素及元素屬性的格式定義,,就能夠被正常的解析,,這也是PLY格式所具備的靈活性特色。
PLY文件格式的規(guī)范及其解析的源代碼都是開放的,,可以從參考文獻中找到相關的下載,。最著名的就是Greg Turk在1994年發(fā)布的解析代碼,Turk似乎也是PLY格式的開發(fā)者之一,。

參考文獻
1.The Stanford 3D Scanning Repository
2.MAC+PC+UNIX PLY reading/writing
3. Large Geometry Models Archieve
4. Power Plant Model
5. The PLY Polygon File Format

上一篇:3d打印機用到的軟件
下一篇:3D模型文件格式之Obj
2#
小熊  發(fā)表于 2013-10-13 10:57:02
您好,,PLY文件如何在3D打印機上操作,需要那個軟件轉換格式,?

推動3D打印

關注南極熊

通知

聯(lián)系QQ/微信9:00-16:00

392908259

南極熊3D打印網

致力于推動3D打印產業(yè)發(fā)展

快速回復 返回列表 返回頂部