PLY文件格式

来源:互联网 发布:tts软件ios 编辑:程序博客网 时间:2024/05/17 02:05

典型的ply文件的结构为

{

Header

Vertex List

Face   List

(lists of other elements)

}

大致包含文件头(Header),顶点列表(Vertex),多边形面列表(Face List),以及颜色(例如red、green、blue)、光照(Ambient、Diffuse、specular)、粗糙度(power)等属性列表,材质属性可自定义。

文件格式如下:

ply //ply文件标识
format ascii 1.0   //ascii 格式的版本号
comment author: Greg Turk //文件说明,和下行一样
comment object: another cube
element vertex 8 //共8个顶点元素,一个顶点有6个属性值
property float x //顶点的3个float型坐标
property float y
property float z
property red uchar   //顶点的三通道颜色值 范围为0~255
property green uchar
property blue uchar
element face 7 //7个面
property list uchar int vertex_indices  每个面的顶点索引值类型为int
element edge 5 //Object的5条边,一条边有5个属性值
property int vertex1 //每条边的第一个顶点
property int vertex2  //每条边的第二个顶点
property uchar red  //边的三通道颜色值
property uchar green
property uchar blue
end_header //文件头的结束
0 0 0 255 0 0  //顶点列表,该行包括一个顶点的三维坐标和该顶点的三通道颜色值,8个顶点
0 0 1 255 0 0
0 1 1 255 0 0
0 1 0 255 0 0
1 0 0 0 0 255
1 0 1 0 0 255
1 1 1 0 0 255
1 1 0 0 0 255
3 0 1 2 //3个顶点索引值,即一个含有三个顶点索引值多边形面,共7个面
3 0 2 3  //同上
4 7 6 5 4 //4个顶点索引值,即一个含有四个顶点索引的多边形面
4 0 4 5 1
4 1 5 6 2
4 2 6 7 3
4 3 7 4 0
0 1 255 255 255 //白色边开始,5条边
1 2 255 255 255
2 3 255 255 255
3 0 255 255 255
2 0 0 0 0  //黑色边结束

文件头包括文件的描述,文件包括多个元素,例如,顶点,边,面,材质等,每个元素都有各自的不同属性值,例如顶点元素有x、y、z三个坐标值,r、g、b三个通道值。

PLY格式允许用户自定义元素,格式和顶点完全一致,例如下面的材质元素(Element):

element material 6 //6个材质元素
property ambient_red uchar //环境光三通道颜色值
property ambient_green uchar
property ambient_blue uchar
property ambient_coeff float //环境光系数
property diffuse_red uchar  //散射光三通道颜色值
property diffuse_green uchar
property diffuse_blue uchar
property diffuse_coeff float //散射光系数
property specular_red uchar  //镜面光三通道颜色值
property specular_green uchar
property specular_blue uchar
property specular_coeff float //镜面光系数
property specular_power float  //镜面光粗糙度

如果想每个顶点都有一个指定的材质,可以添加

property material index int


0 0
原创粉丝点击