PLY格式文件详解

更新时间:2023-07-28 10:24:22 阅读: 评论:0

PLY格式⽂件详解
⼀、PLY简介
PLY⽂件格式是Stanford⼤学开发的⼀套三维mesh模型数据格式,图形学领域内很多著名的模型数据,⽐如Stanford的三维扫描数据库(其中包括很多⽂章中会见到的Happy Buddha, Dragon, Bunny兔⼦),Geogia Tech的⼤型⼏何模型库,北卡(UNC)的电⼚模型等,最初的模型都是基于这个格式的。
PLY多边形⽂件格式的开发⽬标是建⽴⼀套针对多边形模型的,结构简单但是能够满⾜⼤多数图形应⽤需要的模型格式,⽽且它允许以ASCII码格式或⼆进制形式存储⽂件。PLY的开发者希望,这样⼀套既简单⼜灵活的⽂件格式,能够帮助开发⼈员避免重复开发⽂件格式的问题。然⽽由于各种各样的原因,在⼯业领域内,新的⽂件格式仍然在不断的出现,但是在图形学的研究领域中,PLY还是种常⽤且重要的⽂件格式。
PLY作为⼀种多边形模型数据格式,不同于三维引擎中常⽤的场景图⽂件格式和脚本⽂件,每个PLY⽂件只⽤于描述⼀个多边形模型对象(Object),该模型对象可以通过诸如顶点、⾯等数据进⾏描述,每⼀类这样的数据被称作⼀种元素(Element)。相⽐于现代的三维引擎中所⽤到的各种复杂格式,PLY实在是种简单的不能再简单的⽂件格式,但是如果仔细研究就会发现,就像设计者所说的,这对于绝⼤多数的图形应⽤来说已经是⾜够⽤了。
⼆、PLY结构
PLY的⽂件结构简单:⽂件头加上元素数据列表。其中⽂件头中以⾏为单位描述⽂件类型、格式与版本、元素类型、元素的属性等,然后就根据在⽂件头中所列出元素类型的顺序及其属性,依次记录各个元素的属性数据。
典型的PLY⽂件结构:
头部
顶点列表
⾯⽚列表
(其他元素列表)
头部是⼀系列以回车结尾的⽂本⾏,⽤来描述⽂件的剩余部分。头部包含⼀个对每个元素类型的描述,包括元素名(如“边”),这个元素在⼯程⾥有多少,以及⼀个与这个元素关联的不同属性的列表。头部还说明这个⽂件是⼆进制的或者是ASCII的。头部后⾯的是⼀个每个元素类型的元素列表,按照在头部中描述的顺序出现。
下⾯是⼀个⽴⽅体的完整ASCII描述。⼤括号中的注释不是⽂件的⼀部分,它们是这个例⼦的注解。⽂件中的注释⼀般在  “comment”开始的关键词定义⾏⾥。
25.
这个例⼦说明头部的基本组成。头部的每个部分都是⼀个以关键词开头,以回车结尾的ASCII串。"ply"是⽂件的头四个字符。
跟在⽂件头部开头之后的,是关键词“format”和⼀个特定的ASCII或者⼆进制的格式,接下来是⼀个版本号。
大学生比例再下⾯是多边形⽂件中每个元素的描述,在每个元素⾥还有多属性的说明。⼀般元素以下⾯的格式描述:
element  <;元素名>  <;在⽂件中的个数>
围棋定段赛property  <;数据类型>  <;属性名-1>
杨树简笔画
property  <;数据类型>  <;属性名-2>
property  <;数据类型>  <;属性名-3>
属性罗列在“element”(元素)⾏后⾯定义,既包含属性的数据类型,也包含属性在每个元素中出现的次序。⼀个属性可以有三种数据类型:标量,字符串和列表。属性可能具有的标量数据类型列表如下:
名称类型字节数
-------------------------------
int8        字符                    1
uint8      ⾮负字符          1
int16      短整型              2
uint16    ⾮负短整型      2
int32      整型                  4
uint32    ⾮负整型          4
float32  单精度浮点数  4
float64  双精度浮点数  8
这些字节计数很重要,⽽且在实现过程中不能修改以使这些⽂件可移植。
使⽤列表数据类型的属性定义有⼀种特殊的格式:property  list  <;数值类型>  <;数值类型>  <;属性名> ,这种格式,⼀个⾮负字符表⽰在属性⾥包含多少索引,接下来是⼀个列表包含许多整数。在这个边长列表⾥的每个整数都是⼀个顶点的索引。
另外⼀个⽴⽅体定义:
女发型图片中短发40.
无壳鸡蛋这个⽂件为每个顶点指定⼀个红、绿、蓝值。
为了说明变长vertex_index(顶点索引)的能⼒,物体的头两个⾯⽚是两个三⾓形⽽不是⼀个四边形。这意味着物体的⾯⽚数是7。这个物体还包括⼀个边列表。每条边包括两个指向说明边的顶点的指针。每条边也有⼀种颜⾊。上⾯定义的五条边指定了颜⾊,使⽂件⾥的两个三⾓形⾼亮。前四条边⽩⾊,它们包围两个三⾓形。最后⼀条边是⿊的,他是分割三⾓形的边。
三、⽤户定义元素
月光族是什么意思啊上⾯的例⼦显⽰了顶点、⾯⽚和边三种元素的⽤法。PLY  格式同样允许⽤户定义它们⾃⼰的元素。定义新元素的格式于顶点、⾯⽚和边相同。这是头部定义材料属性的部分:
14.
无子
这些⾏应该在头部顶点、⾯⽚和边的说明后直接出现。如果我们希望每个顶点有⼀个材质说明,我们可以将这⾏加在顶点属性末尾:property  material_index  int32
这个整数现在是⼀个到⽂件内包含的材质列表的索引。这可能诱使⼀个新应⽤的作者编制⼀些信的元素保存在PLY⽂件中。
>内科医生

本文发布于:2023-07-28 10:24:22,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/1099828.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:元素   格式   属性   列表
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图