(unfinished - no information available)
IV format information and examples from John Burkardt
Author: John Burkardt
Change: 04 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:
- unknown
Format support note - writing:
- Full 32-bit vertices support
- Full 32-bit faces support, unlimited face order
- No meshes support
- Partial materials support (untested)
- One texture support
- Texture UV support (per vertex)
- No camera/view support
- No Environment or lights support
- No shapes support (disabled because of error)
NOTE: support of this format is unfinished, it probably won't work.
Example:
#Inventor V2.0 ascii
Separator {
Info {
string "Inventor file generated by IVCON.
Original data in file cube.iv."
}
Separator {
LightModel {
model PHONG
}
MatrixTransform { matrix
0.9 0.0 0.0 0.0
0.0 -0.9 0.0 0.0
0.0 0.0 -1.5 0.0
0.0 0.0 0.0 1.0
}
Material {
ambientColor 0.2 0.2 0.2
diffuseColor [
0.8 0.8 0.8,
0.7 0.1 0.1,
0.1 0.8 0.2,
]
emissiveColor 0.0 0.0 0.0
specularColor 0.0 0.0 0.0
shininess 0.2
transparency [
0.0, 0.5, 1.0,
]
}
Texture2 {
filename "fred.rgb"
wrapS REPEAT
wrapT REPEAT
model MODULATE
blendColor 0.0 0.0 0.0
}
MaterialBinding {
value PER_VERTEX_INDEXED
}
NormalBinding {
value PER_VERTEX_INDEXED
}
TextureCoordinateBinding {
value PER_VERTEX_INDEXED
}
ShapeHints {
vertexOrdering COUNTERCLOCKWISE
shapeType UNKNOWN_SHAPE_TYPE
faceType CONVEX
creaseAngle 6.28319
}
Coordinate3 {
point [
8.59816 5.55317 -3.05561,
8.59816 2.49756 0.000000E+00,
...etc...
2.48695 2.49756 -3.05561,
]
}
Normal {
vector [
0.71 0.71 0.0,
...etc...
0.32 0.32 0.41,
]
}
TextureCoordinate2 {
point [
0.0 1.0,
0.1, 0.8,
...etc...
0.4 0.7,
]
}
IndexedLineSet {
coordIndex [
0, 1, 2, -1,
3, 4, 5, -1,
7, 8, 9, -1,
...etc...
189, 190, 191, -1,
]
materialIndex [
0, 0, 0, -1,
1, 1, 1, -1,
2, 2, 2, -1,
...etc...
64, 64, 64, -1,
]
}
IndexedFaceSet {
coordIndex [
0, 1, 2, -1,
3, 4, 5, -1,
7, 8, 9, -1,
...etc...
189, 190, 191, -1,
]
materialIndex [
0, 0, 0, -1,
1, 1, 1, -1,
2, 2, 2, -1,
...etc...
64, 64, 64, -1,
]
normalIndex [
0, 0, 0, -1,
1, 1, 1, -1,
2, 2, 2, -1,
...etc...
64, 64, 64, -1,
]
textureCoordIndex [
0, 0, 0, -1,
1, 1, 1, -1,
2, 2, 2, -1,
...etc...
64, 64, 64, -1,
]
}
IndexedTriangleStripSet {
vertexProperty VertexProperty {
vertex [ x y z,
...
x y z ]
normal [ x y z,
...
x y z ]
materialBinding OVERALL
normalBinding PER_VERTEX_INDEXED
}
coordIndex [
i, j, k, l, m, -1,
n, o, p, q, r, s, t, u, -1,
v, w, x, -1
..., -1 ]
normalIndex -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.