PLY (.ply)
PLY (.ply)
背景
-
- 三维几何格式.
- ASCII 或二进制格式.
- 用于存储和交换三维图形对象.
- 被称为斯坦福三角格式(Stanford Triangle Format).
- PLY 是 polygon(多边形)的缩写.
- 把一个三维对象存为线和多边形图元以及它们属性的集合.
- 允许用户定义的格式参数.
Import 与 Export
- Import["file.ply"] 将一个 PLY 文件作为表示表面(surface)的 MeshRegion 对象导入.
- Import["file.ply",elem] 从 PLY 文件中导入指定参数.
- 导入格式可用 Import["file","PLY"] 或 Import["file",{"PLY",elem,…}] 指定.
- Export["file.ply",expr] 将基于网格的三维几何区域导出至一个二进制 PLY 文件. expr 可以是任何 ConstantRegionQ 或 Graphics3D 对象的区域.
- Export["file.ply",expr,{opt1->val1,…}] 为文件格式导出具有指定选项的 expr.
- 导出格式可用 Export["file",expr,"PLY"] 或 Export["file",{"PLY",opt1->val1,…}] 指定.
- 请到以下参考页面了解完整的基本信息:
-
Import, Export 从文件导入或导出到文件 CloudImport, CloudExport 从云对象导入或导出到云对象 ImportString, ExportString 从字符串导入或导出到字符串 ImportByteArray, ExportByteArray 从字节数组导入或导出到字节数组
参数
- Import 的通用参数:
-
"Elements" 该文件可用的参数和选项列表 "Summary" 文件摘要 "Rules" 所有可用参数的规则列表 - 表示数据的参数:
-
"BinaryFormat" 该文件是否为一个二进制或 ASCII 的 PLY 文件 "Comments" 注释 "VertexData" 顶点坐标列表 "PolygonData" 索引形式的多边形参数 "UserExtensions" 用户定义的与多边形顶点相关的数据 - 表示几何的参数:
-
"BoundaryMeshRegion" 表示某三维固体的边界网格 "MeshRegion" 表示表面网格 - 表示图形的参数:
-
"Graphics3D" 表示为 Graphics3D 对象的 PLY 文件 "GraphicsComplex" 表示为 GraphicsComplex 对象的 PLY 文件 "PolygonObjects" 以绝对坐标表示的多边形图元列表 - 在 PLY 文件中,Import 和 Export 默认情况下使用 "MeshRegion" 参数.
范例
打开所有单元 关闭所有单元基本范例 (2)
从 PLY 文件中将三维模型作为 MeshRegion 对象导入:
Import["ExampleData/seashell.ply"]Import["ExampleData/seashell.ply", "Summary"]Export["model.ply", [image]]FilePrint[%]范围 (13)
Import (7)
Import 作用于某 ASCII PLY 文件:
Import["ExampleData/seashell.ply"]Import["ExampleData/spikey.ply"]Import["http://exampledata.wolfram.com/vase.ply"]str = OpenRead["ExampleData/chain.ply"]Import[str]Close[str]Import 自动检测 PLY 文件:
Import["http://exampledata.wolfram.com/gear.2"]Import 提供对 PLY 文件中参数的访问:
Import["ExampleData/dodecahedron.ply", "Elements"]Import 作用于大型文件:
Import["http://exampledata.wolfram.com/turtle.ply"] // MeshCellCount//AbsoluteTimingExport (6)
Export 作用于三维图形:
Export["model.ply", [image]]Export["sphere.ply", Sphere[]]Export["ball.ply", ImplicitRegion[x ^ 2 + y ^ 2 + z ^ 2 ≤ 1, {x, y, z}]]Export["pyramid.ply", MeshRegion[{{-1, -1, 0}, {1, -1, 0}, {1, 1, 0}, {-1, 1, 0}, {0, 0, 1}}, Pyramid[{1, 2, 3, 4, 5}]]]Export["model.ply", [image]]Export["model.ply", [image], "BinaryFormat" -> True]导入参数 (11)
"BinaryFormat" (1)
"BoundaryMeshRegion" (1)
"CoordinateTransform" (1)
"Graphics3D" (1)
给出 Graphics3D 对象:
Import["ExampleData/chain.ply", "Graphics3D"]"GraphicsComplex" (1)
给出 GraphicsComplex 对象:
Import["ExampleData/chain.ply", "GraphicsComplex"]"PolygonData" (1)
"PolygonObjects" (1)
给出在绝对坐标给定的 Polygon 基元列表:
Import["ExampleData/chain.ply", "PolygonObjects"]"Summary" (1)
导出参数 (2)
Export["model.ply", [image]]FilePrint[%]使用 "BinaryFormat" True 来生成一个二进制文件:
Export["model.ply", [image], {"PLY", "BinaryFormat" -> True}]FilePrint[%]历史
2007年引入 (6.0) | 在以下年份被更新:2015 (10.2)