Supported 3D formats

BYU format overview:

Movie.BYU surface geometry files originated from Brigham Young University as an animation storage and playback file format. It is also used within the visualization tool EnSight.


BYU file characteristics:


BYU format references and information:

BYU format information and examples from John Burkardt
Movie.BYU specification on LC.Cray


BYU support notes inside IVCon source code:

 Author:  John Burkardt
 Change: 08 Mar 2007 Tomasz Lis adjusted to new core

 A list of supported elements follows. Please modify if you'll enhance something.
 Format support note - reading:
 - Full 32-bit vertices support
 - Full 32-bit faces support, face order limited to about LINE_MAX_LEN/10
 - One mesh supported (possible to extend)
 - No materials support
 - No textures support
 - No texture UV supported
 - No default view or cameras supported
 - No environment or lights support
 - No shapes supported
 Format support note - writing:
 - Full 32-bit vertices support
 - Full 32-bit faces support, unlimited face order
 - One mesh supported (possible to extend)
 - No materials support
 - No textures support
 - No texture UV supported
 - No default view or cameras supported
 - No environment or lights support
 - No shapes supported


Discussion:
A Movie.BYU surface geometry file contains 4 groups of data.

The first group of data is a single line, containing 4 integers,
each one left justified in 8 columns.  The integers are:

PART_NUM, VERTEX_NUM, POLY_NUM, EDGE_NUM,

that is, the number of parts or objects, the number of vertices or nodes,
the number of polygons or faces, and the number of edges.

The second group of data is a single line, containing 2 integers,
each one left justified in 8 columnes.  The integers are:

POLY1, POLY2,

the starting and ending polygon numbers.  Presumably, this means
that the polygons are labeled POLY1, POLY1+1, ..., POLY2, comprising
a total of POLY_NUM polygons.

The third group is the X, Y and Z coordinates of all the vertices.
These may be written using a FORTRAN format of 6E12.5, which
crams two sets of (X,Y,Z) data onto each line, with each real value
written in an exponential format with 5 places after the decimal.
However, it is generally possible to write the XYZ coordinate data
for each vertex on a separate line.

The fourth group defines the polygons in terms of the vertex indices.
For each polygon, the vertices that make up the polygon are listed in
counterclockwise order.  The last vertex listed is given with a negative
sign to indicate the end of the list.  All the vertices for all the
polygons are listed one after the other, using a format that puts
up to 10 left-justified integers on a line, with each integer occupying
8 spaces.

Example:

1       8       6      24
1       6
0.00000E+00 0.00000E+00 0.00000E+00
1.00000E+00 0.00000E+00 0.00000E+00
1.00000E+00 2.00000E+00 0.00000E+00
0.00000E+00 2.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 1.00000E+00
1.00000E+00 0.00000E+00 1.00000E+00
1.00000E+00 2.00000E+00 1.00000E+00
0.00000E+00 2.00000E+00 1.00000E+00
4       3       2      -1
5       6       7      -8
1       5       8      -4
4       8       7      -3
3       7       6      -2
2       6       5      -1

Copying and copyrights:
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 2 of the License, or
   (at your option) any later version.