![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
For testing purposes, here are some simplified versions of some of the meshes above. The filenames indicate how many triangles there are in the mesh.
![]() | ![]() |
The following models are all manifolds with exactly 1 boundary loop.
![]() | ![]() | ![]() | ![]() | ![]() |
The file format used here is a very limited subset of the Wavefront OBJ format. The files consist of a series of lines:
# Any line starting with a '#' character is a comment
v x1 y1 z1
v x2 y2 x2
.
.
.
f i1 j1 k1
f i2 j2 k2
.
.
.
Each v
line defines a new vertex. Vertices are implicitly
numbered by their order of appearance starting with 1.
Each f
line defines a triangle by giving the integer IDs of the
vertices which forms its 3 corners.
You can generate infinitely many more examples using the Maya software installed in the CSIL labs.
Here are a few very simple examples to illustrate how actual meshes look when written in OBJ format.
This is a simple tetrahedron with 1 corner at the origin and with the other 3 vertices in the positive x, y, and z directions.
v 1.0 0.0 0.0
v 0.0 1.0 0.0
v 0.0 0.0 1.0
v 0.0 0.0 0.0
f 2 4 3
f 4 2 1
f 3 1 2
f 1 3 4
This is the standard cube covering [0,1]^3. Note that it’s been triangulated.
# Vertices on the bottom of the cube (z=0)
v 0 0 0
v 1 0 0
v 0 1 0
v 1 1 0
# Vertices on the top of the cube (z=1)
v 0 0 1
v 1 0 1
v 0 1 1
v 1 1 1
# Triangles on the bottom
f 1 4 2
f 1 3 4
# Triangles on the top
f 5 6 8
f 5 8 7
# All the remaining sides
f 1 2 6
f 1 6 5
f 2 4 8
f 2 8 6
f 4 3 7
f 4 7 8
f 3 1 5
f 3 5 7