PLY

From GICLWiki
(Difference between revisions)
Jump to: navigation, search
 
(4 intermediate revisions by one user not shown)
Line 32: Line 32:
 
'''Identifier:''' [[Identifier::http://local.wasp.uwa.edu.au/~pbourke/dataformats/ply/]]
 
'''Identifier:''' [[Identifier::http://local.wasp.uwa.edu.au/~pbourke/dataformats/ply/]]
  
'''Documentation:''' [[Documentation::PLY Documentation]] - Information in general about the engineering format.
+
'''Documentation:''' [[Documentation::PLY Documentation]]
  
 
'''File Extensions:''' [[File Extension::PLY]]
 
'''File Extensions:''' [[File Extension::PLY]]
Line 42: Line 42:
 
* '''Interoperable applications:''' [[Interoperable Application::PLY Libraries]]
 
* '''Interoperable applications:''' [[Interoperable Application::PLY Libraries]]
  
'''Magic numbers:''' [[Magic Numbers::]] - Unique identifying characters at the beginning of files for this engineering format.
+
'''Magic numbers:''' [[Magic Numbers::ply]] - Typically starts with "ply" as the header followed by either "format ascii 1.0", "format binary_little_endian 1.0", or "format binary_big_endian 1.0" as the next line.
  
'''Format(s):''' [[Format::]] - The MIME file types.
+
'''Format(s):''' [[Format::TXT or BIN]]
  
'''Rights:''' [[Rights::]] - The name or type of the license for the engineering format. Examples: BSD-style license, Apache License, Proprietary license
+
'''Rights:''' [[Rights::Unknown]]
  
 
'''Sustainability Factors:''' - Facts about the sustainability of this particular engineering format.
 
'''Sustainability Factors:''' - Facts about the sustainability of this particular engineering format.
Line 68: Line 68:
 
* '''Raster data:''' - Section describes whether or not the engineering format supports raster data.
 
* '''Raster data:''' - Section describes whether or not the engineering format supports raster data.
 
** '''Raster data 2D:''' - Can the format support 2D raster data? Example: A format that can contain 2D pixelated data supports 2D raster data.
 
** '''Raster data 2D:''' - Can the format support 2D raster data? Example: A format that can contain 2D pixelated data supports 2D raster data.
*** '''Is Supported:''' [[File Classification Raster Data 2D - Is Supported::No]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' [[File Classification Raster Data 2D - Is Supported::No]]
*** '''Description:''' [[File Classification Raster Data 2D - Description::No support]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' [[File Classification Raster Data 2D - Description::No support]]
 
** '''Raster data 3D:''' - Can the format support 3D raster data? Example: A format that can contain 2D pixelated data of a 3D model supports 3D raster data.
 
** '''Raster data 3D:''' - Can the format support 3D raster data? Example: A format that can contain 2D pixelated data of a 3D model supports 3D raster data.
*** '''Is Supported:''' [[File Classification Raster Data 3D - Is Supported::No]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' [[File Classification Raster Data 3D - Is Supported::No]]
*** '''Description:''' [[File Classification Raster Data 3D - Description::No support]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' [[File Classification Raster Data 3D - Description::No support]]
 
* '''Geometric representation:''' - Section describes whether or not the engineering format supports geometric representations.
 
* '''Geometric representation:''' - Section describes whether or not the engineering format supports geometric representations.
 
** '''Implicit representation:''' - Section describes whether or not the engineering format supports implicit representations.
 
** '''Implicit representation:''' - Section describes whether or not the engineering format supports implicit representations.
 
*** '''Implicit surfaces:''' - Can the format support implicit surfaces? Example: A format that can contain surfaces that are generated with mathematical equations that contain the independent variables x, y, and z, like x^2 + y^2 + z^2 * R^2 = 0, supports implicit surfaces.
 
*** '''Implicit surfaces:''' - Can the format support implicit surfaces? Example: A format that can contain surfaces that are generated with mathematical equations that contain the independent variables x, y, and z, like x^2 + y^2 + z^2 * R^2 = 0, supports implicit surfaces.
**** '''Is Supported:''' [[File Classification Implicit Surfaces - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' [[File Classification Implicit Surfaces - Is Supported::No]]
**** '''Description:''' [[File Classification Implicit Surfaces - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' [[File Classification Implicit Surfaces - Description::No support]]
 
*** '''Implicit curves:''' - Can the format support implicit curves? Example: A format that can contain curves that are generated with mathematical equations that contain the independent variables x, y, and z, supports implicit curves.
 
*** '''Implicit curves:''' - Can the format support implicit curves? Example: A format that can contain curves that are generated with mathematical equations that contain the independent variables x, y, and z, supports implicit curves.
**** '''Is Supported:''' [[File Classification Implict Curves - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' [[File Classification Implict Curves - Is Supported::No]]
**** '''Description:''' [[File Classification Implicit Curves - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' [[File Classification Implicit Curves - Description::No support]]
 
*** '''Point set:''' - Can the format support point sets? Example: A format that supports surfaces and lines that are generated by points that form triangles supports point sets.
 
*** '''Point set:''' - Can the format support point sets? Example: A format that supports surfaces and lines that are generated by points that form triangles supports point sets.
**** '''Is Supported:''' [[File Classification Point Set - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' [[File Classification Point Set - Is Supported::Yes]]
**** '''Description:''' [[File Classification Point Set - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' [[File Classification Point Set - Description::Vertices describe each face.]]
 
** '''Mesh:''' - Section describes whether or not the engineering format supports mesh.
 
** '''Mesh:''' - Section describes whether or not the engineering format supports mesh.
 
*** '''Manifold surface meshes:''' - Can the format support manifold surface meshes? Example: A format that supports surfaces that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
 
*** '''Manifold surface meshes:''' - Can the format support manifold surface meshes? Example: A format that supports surfaces that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
**** '''Is Supported:''' [[File Classification Mainfold Surface Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' [[File Classification Mainfold Surface Meshes - Is Supported::Yes]]
**** '''Description:''' [[File Classification Manifold Surface Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' [[File Classification Manifold Surface Meshes - Description::None]]
 
*** '''Manifold volume meshes:''' - Can the format support manifold volume meshes? Example: A format that supports volumes that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
 
*** '''Manifold volume meshes:''' - Can the format support manifold volume meshes? Example: A format that supports volumes that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
**** '''Is Supported:''' [[File Classification Manifold Volume Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' [[File Classification Manifold Volume Meshes - Is Supported::Yes]]
**** '''Description:''' [[File Classification Manifold Volume Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' [[File Classification Manifold Volume Meshes - Description::None]]
 
*** '''Non-manifold meshes:''' - Can the format support non-manifold meshes? Example: A format that supports meshes that are not manifolds
 
*** '''Non-manifold meshes:''' - Can the format support non-manifold meshes? Example: A format that supports meshes that are not manifolds
**** '''Is Supported:''' [[File Classification Non-manifold Meshes - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' [[File Classification Non-manifold Meshes - Is Supported::No]]
**** '''Description:''' [[File Classification Non-manifold Meshes - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' [[File Classification Non-manifold Meshes - Description::None]]
 
** '''Parametric representation:''' - Section describes whether or not the engineering format supports parametric representations.
 
** '''Parametric representation:''' - Section describes whether or not the engineering format supports parametric representations.
 
*** '''Parametric surfaces:''' - Can the format support parametric surfaces? Example: A format that can contain surfaces that are generated with parametric equations supports parametric surfaces.
 
*** '''Parametric surfaces:''' - Can the format support parametric surfaces? Example: A format that can contain surfaces that are generated with parametric equations supports parametric surfaces.
**** '''Is Supported:''' [[File Classification Parametric Surfaces - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' [[File Classification Parametric Surfaces - Is Supported::No]]
**** '''Description:''' [[File Classification Parametric Surfaces - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' [[File Classification Parametric Surfaces - Description::No support]]
 
*** '''Parametric curves:''' - Can the format support parametric curves? Example: A format that can contain curves that are generated with parametric equations supports parametric curves.
 
*** '''Parametric curves:''' - Can the format support parametric curves? Example: A format that can contain curves that are generated with parametric equations supports parametric curves.
**** '''Is Supported:''' [[File Classification Parametric Curves - Is Supported::]] - Is the feature supported in the engineering format?
+
**** '''Is Supported:''' [[File Classification Parametric Curves - Is Supported::No]]
**** '''Description:''' [[File Classification Parametric Curves - Description::]] - This field is used to describe the support or lack of support of the feature.
+
**** '''Description:''' [[File Classification Parametric Curves - Description::No support]]
 
** '''Contour sets:''' - Can the format support contour sets?
 
** '''Contour sets:''' - Can the format support contour sets?
*** '''Is Supported:''' [[File Classification Contour Sets - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' [[File Classification Contour Sets - Is Supported::No]]
*** '''Description:''' [[File Classification Contour Sets - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' [[File Classification Contour Sets - Description::No support]]
 
** '''NURBS:''' - Can the format support Non Uniform Rational Basis Splines? Examples: The engineering formats IGES, STEP, ACIS, and PHIGS
 
** '''NURBS:''' - Can the format support Non Uniform Rational Basis Splines? Examples: The engineering formats IGES, STEP, ACIS, and PHIGS
*** '''Is Supported:''' [[File Classification NURBS - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' [[File Classification NURBS - Is Supported::No]]
*** '''Description:''' [[File Classification NURBS - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' [[File Classification NURBS - Description::No support]]
 
* '''Multi-resolution models:''' - Can the format support models with multiple resolutions? Examples: A format that supports a highly detailed and lowly detailed model simultaneously supports multi-resolution models.
 
* '''Multi-resolution models:''' - Can the format support models with multiple resolutions? Examples: A format that supports a highly detailed and lowly detailed model simultaneously supports multi-resolution models.
** '''Is Supported:''' [[File Classification Multi-resolution Models - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Is Supported:''' [[File Classification Multi-resolution Models - Is Supported::No]]
** '''Description:''' [[File Classification Multi-resolution Models - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Description:''' [[File Classification Multi-resolution Models - Description::No support]]
 
* '''Dynamics:''' - Section describes whether or not the engineering format supports dynamics.
 
* '''Dynamics:''' - Section describes whether or not the engineering format supports dynamics.
 
** '''Kinematics:''' - Can the format support kinematics? Example: Does the format allow model parts to rotate?
 
** '''Kinematics:''' - Can the format support kinematics? Example: Does the format allow model parts to rotate?
*** '''Is Supported:''' [[File Classification Kinematics - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' [[File Classification Kinematics - Is Supported::No]]
*** '''Description:''' [[File Classification Kinematics - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' [[File Classification Kinematics - Description::No support]] - This field is used to describe the support or lack of support of the feature.
 
** '''Assembly:''' - Can the format support assembly? Example: Does the format allow the assembly instructions to be explicitly specified with a model?
 
** '''Assembly:''' - Can the format support assembly? Example: Does the format allow the assembly instructions to be explicitly specified with a model?
*** '''Is Supported:''' [[File Classification Assembly - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' [[File Classification Assembly - Is Supported::No]]
*** '''Description:''' [[File Classification Assembly - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' [[File Classification Assembly - Description::No support]]
 
** '''Force(s):''' - Can the format support forces? Example: Does the format support acceleration forces?
 
** '''Force(s):''' - Can the format support forces? Example: Does the format support acceleration forces?
*** '''Is Supported:''' [[File Classification Force - Is Supported::]] - Is the feature supported in the engineering format?
+
*** '''Is Supported:''' [[File Classification Force - Is Supported::No]]
*** '''Description:''' [[File Classification Force - Description::]] - This field is used to describe the support or lack of support of the feature.
+
*** '''Description:''' [[File Classification Force - Description::No support]]
 
* '''Boundary representation''' - Can the format support models with boundary representations?
 
* '''Boundary representation''' - Can the format support models with boundary representations?
 
** '''Manifold surface boundary representations:''' - Can the format support manifold surface boundary representations? Example: The engineering format STEP
 
** '''Manifold surface boundary representations:''' - Can the format support manifold surface boundary representations? Example: The engineering format STEP
Line 131: Line 131:
 
*** '''Description:''' [[File Classification Non-manifold Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
 
*** '''Description:''' [[File Classification Non-manifold Boundary Representation - Description::]] - This field is used to describe the support or lack of support of the feature.
 
* '''Material transparency:''' - Can the format support transparency? Example: Does the format allow models to have a clear window in a car?
 
* '''Material transparency:''' - Can the format support transparency? Example: Does the format allow models to have a clear window in a car?
** '''Is Supported:''' [[File Classification Material Transparency - Is Supported::]] - Is the feature supported in the engineering format?
+
** '''Is Supported:''' [[File Classification Material Transparency - Is Supported::Yes]]
** '''Description:''' [[File Classification Material Transparency - Description::]] - This field is used to describe the support or lack of support of the feature.
+
** '''Description:''' [[File Classification Material Transparency - Description::Transpancy is one of the properties that can be stored with the object]]
  
'''References:''' [[References::]] - A list of references regarding any aspects of this engineering format; any reading material supplemental to this page.
+
'''References:''' http://local.wasp.uwa.edu.au/~pbourke/dataformats/ply/, http://en.wikipedia.org/wiki/PLY_(file_format)

Latest revision as of 12:14, 13 May 2009

Title(s): PLY - Polygon File Format or Stanford Triangle Format

Version ID: 1.0 - Currently used version

Date released: 1994

Date: 1994

Creator(s): Stanford University

Contributor(s): Stanford University

Relationships: - Relationships that the engineering format has with organizations, other formats, etc.

  • Previous Version(s): NONE
  • Syntax Format(s): NONE
  • Family Format(s): NONE

Description: The Polygon File Format (PLY) was principally designed to store three dimensional data from 3D scanners. It supports a relatively simple description of a single object as a list of nominally flat polygons. It is both flexible enough to anticipate future needs and that is simple enough so as not to drive away potential users. The idea is to allow users to create their own utility functions that can be tailored to the file format and can read and/or write graphical representation of the data. These set of utilities can then be shared to the rest of the community.

The PLY format describes an object as a collection of vertices, faces and other elements, along with properties such as color and normal direction that can be attached to these elements. A PLY file contains the description of exactly one object. Sources of such objects include: hand-digitized objects, polygon objects from modeling programs, range data, triangles from marching cubes (isosurfaces from volume data), terrain data, radiosity models. Properties that might be stored with the object include: color, surface normals, texture coordinates, transparency, range data confidence, and different properties for the front and back of a polygon.

History: Unknown

Example(s): PLY Example, The Stanford 3D Scanning Repository

Identifier: http://local.wasp.uwa.edu.au/~pbourke/dataformats/ply/

Documentation: PLY Documentation

File Extensions: PLY

Applications: - Applications that the engineering format uses.

Magic numbers: ply - Typically starts with "ply" as the header followed by either "format ascii 1.0", "format binary_little_endian 1.0", or "format binary_big_endian 1.0" as the next line.

Format(s): TXT or BIN

Rights: Unknown

Sustainability Factors: - Facts about the sustainability of this particular engineering format.

  • Standardization: NONE
    • Licensing and patent claims: NONE
  • Self-documentation: NONE
  • External dependencies: NONE
  • Technical protection considerations: NONE

Typical use: Used for storage and interchange of 3D graphical objects

File classification: - Specific properties that pertain to this engineering format.

  • Type {Binary, Text}: Binary, ASCII
  • Raster data: - Section describes whether or not the engineering format supports raster data.
    • Raster data 2D: - Can the format support 2D raster data? Example: A format that can contain 2D pixelated data supports 2D raster data.
    • Raster data 3D: - Can the format support 3D raster data? Example: A format that can contain 2D pixelated data of a 3D model supports 3D raster data.
  • Geometric representation: - Section describes whether or not the engineering format supports geometric representations.
    • Implicit representation: - Section describes whether or not the engineering format supports implicit representations.
      • Implicit surfaces: - Can the format support implicit surfaces? Example: A format that can contain surfaces that are generated with mathematical equations that contain the independent variables x, y, and z, like x^2 + y^2 + z^2 * R^2 = 0, supports implicit surfaces.
      • Implicit curves: - Can the format support implicit curves? Example: A format that can contain curves that are generated with mathematical equations that contain the independent variables x, y, and z, supports implicit curves.
      • Point set: - Can the format support point sets? Example: A format that supports surfaces and lines that are generated by points that form triangles supports point sets.
    • Mesh: - Section describes whether or not the engineering format supports mesh.
      • Manifold surface meshes: - Can the format support manifold surface meshes? Example: A format that supports surfaces that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
        • Is Supported: Yes
        • Description: None
      • Manifold volume meshes: - Can the format support manifold volume meshes? Example: A format that supports volumes that are mathematical spaces in which every point has a neighborhood which resembles Euclidean space
        • Is Supported: Yes
        • Description: None
      • Non-manifold meshes: - Can the format support non-manifold meshes? Example: A format that supports meshes that are not manifolds
        • Is Supported: No
        • Description: None
    • Parametric representation: - Section describes whether or not the engineering format supports parametric representations.
      • Parametric surfaces: - Can the format support parametric surfaces? Example: A format that can contain surfaces that are generated with parametric equations supports parametric surfaces.
      • Parametric curves: - Can the format support parametric curves? Example: A format that can contain curves that are generated with parametric equations supports parametric curves.
    • Contour sets: - Can the format support contour sets?
    • NURBS: - Can the format support Non Uniform Rational Basis Splines? Examples: The engineering formats IGES, STEP, ACIS, and PHIGS
  • Multi-resolution models: - Can the format support models with multiple resolutions? Examples: A format that supports a highly detailed and lowly detailed model simultaneously supports multi-resolution models.
  • Dynamics: - Section describes whether or not the engineering format supports dynamics.
    • Kinematics: - Can the format support kinematics? Example: Does the format allow model parts to rotate?
      • Is Supported: No
      • Description: No support - This field is used to describe the support or lack of support of the feature.
    • Assembly: - Can the format support assembly? Example: Does the format allow the assembly instructions to be explicitly specified with a model?
    • Force(s): - Can the format support forces? Example: Does the format support acceleration forces?
  • Boundary representation - Can the format support models with boundary representations?
    • Manifold surface boundary representations: - Can the format support manifold surface boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Manifold volume boundary representations: - Can the format support manifold volume boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
    • Non-manifold boundary representations: - Can the format support non-manifold boundary representations? Example: The engineering format STEP
      • Is Supported: - Is the feature supported in the engineering format?
      • Description: - This field is used to describe the support or lack of support of the feature.
  • Material transparency: - Can the format support transparency? Example: Does the format allow models to have a clear window in a car?

References: http://local.wasp.uwa.edu.au/~pbourke/dataformats/ply/, http://en.wikipedia.org/wiki/PLY_(file_format)

Personal tools