PLY文件- 多边形文件格式

PLY - 多边形文件格式

介绍

本文档介绍了 PLY 多边形文件格式,这是一种用于存储被描述为多边形集合的图形对象的格式。我们的目标是提供一种简单易行但又足够通用以适用于各种模型的格式。该文件格式有两种子格式:一种易于入门的 ASCII 表示形式,以及一种用于紧凑存储和快速保存和加载的二进制版本。我们希望这种格式能够促进程序之间以及人群之间图形对象的交换。

概述

任何在计算机图形学领域工作过很短时间的人都知道图形对象的存储格式令人眼花缭乱。似乎每个程序员都为几乎每个新的编程项目创建了一种新的文件格式。摆脱这种格式困境的出路是创建一种单一的文件格式,该格式既要足够灵活以预测未来的需求,又要足够简单以免赶走潜在用户。一旦定义了这种格式,就可以编写一套以这种格式为中心的实用程序(包括过程和整个程序)。添加到套件中的每个新实用程序都可以利用其他实用程序的功能。

PLY 格式将对象描述为顶点、面和其他元素的集合,以及可以附加到这些元素的颜色和法线方向等属性。一个 PLY 文件只包含一个对象的描述。此类对象的来源包括:手工数字化对象、来自建模程序的多边形对象、范围数据、来自行进立方体的三角形(来自体积数据的等值面)、地形数据、光能传递模型。可能与对象一起存储的属性包括:颜色、表面法线、纹理坐标、透明度、范围数据置信度以及多边形正面和背面的不同属性。

PLY 格式并非旨在成为通用场景描述语言、着色语言或包罗万象的建模格式。这意味着它不包括转换矩阵、对象实例化、建模层次结构或对象子部分。它不包括参数化补丁、二次曲面、建设性实体几何操作、三角形带、带孔的多边形或纹理描述(不要与它支持的纹理坐标混淆!)。

典型的 PLY 对象定义只是顶点的 (x,y,z) 三元组列表和由索引描述到顶点列表中的面列表。大多数 PLY 文件都包含此核心信息。顶点和面是“元素”的两个示例,PLY 文件的大部分内容是它的元素列表。给定文件中的每个元素都具有为每个元素指定的固定数量的“属性”。PLY 文件中的典型信息仅包含两个元素,顶点的 (x,y,z) 三元组和每个面的顶点索引。应用程序可以创建附加到对象元素的新属性。例如,红色、绿色和蓝色属性通常与顶点元素相关联。添加新属性的方式使得旧程序在遇到这些新属性时不会中断。程序不理解的属性可以不加解释地携带或丢弃。此外,还可以创建新的元素类型并定义与该元素关联的属性。新元素的例子有边缘、单元格(指向面的指针列表)和材料(环境、漫反射和镜面反射颜色和系数)。新元素也可以被不理解它们的程序携带或丢弃。单元格(指向面的指针列表)和材料(环境、漫反射和镜面反射颜色和系数)。新元素也可以被不理解它们的程序携带或丢弃。单元格(指向面的指针列表)和材料(环境、漫反射和镜面反射颜色和系数)。新元素也可以被不理解它们的程序携带或丢弃。

文件结构

这是一个典型的 PLY 文件的结构:

标头
顶点列表
人脸列表
(其他元素列表)
标头是一系列以回车符结尾的文本行,用于描述文件的其余部分。标题包括每个元素类型的描述,包括元素的名称(例如“边”)、对象中有多少这样的元素,以及与元素关联的各种属性的列表。标头还说明文件是二进制文件还是 ASCII 文件。标题后面是每种元素类型的一个元素列表,按照标题中描述的顺序显示。

以下是多维数据集的完整 ASCII 描述。同一对象的二进制版本的标头仅在用“binary_little_endian”或“binary_big_endian”代替“ascii”一词时有所不同。括号中的注释不是文件的一部分,它们是对该示例的注释。文件中的注释是普通的关键字标识行,以单词“comment”开头。

出自:http://www.paulbourke.net/dataformats/ply/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值