OFF Files
Most of my 3D graphics programs
use OFF files for input and/or output. The file format is used by the Unix
program Geomview, and the name stands for
Object File Format. The file format details as described by Geomview are
locally archived here.
Sample Code
When I was a teaching assistant for an Introduction to Computer Graphics course
at ASU, I wrote sample code for loading and saving OFF files within the
Visual C++/MFC framework. The sample code only reads and writes the
simplest type of OFF file and is intended as a first step for students
that will be writing their own code to handle the creation of data
structures appropriate for their own needs. Each text document briefly
explains the code, then shows the code as fit into the Serialize function
of the MFC Doc class.
OFF Datafiles
The OFF files available here are assumed to be public domain. Many
are those that are packaged with Geomview as samples. Most of the rest of the files
here were created by myself. These are freely available for use.
- Letters.zip - 8KB - 26 files - Each letter
of the alphabet in a separate object file. I coded these by hand.
- Numbers.zip - 4KB - 10 files - Each arabic numeral
in a separate object file. I coded these by hand. Preview Available
- Geometry.zip - 33KB - 29 files - Geometric
figures. Platonic solids are included.
- Models.zip - 260KB - 20 files - More complex
objects.
- CCOff.zip - 34KB - 10 files - Examples of application
of Catmull-Clark subdivision to four different base meshes from Geometry.off.
Links
The following websites contain collections of OFF files:
- The Princeton Shape Benchmark
, intended to be used for testing and developing shape-based retrieval and
analysis algorithms, consists of 1,814 OFF files.
The following programs of mine on Holmes3D.net use or work with OFF files
- RoffView is an OFF viewing
tool I wrote. Can combine multiple OFF files into a single file, and can export in several formats.
- OFF Tools
is a set of several Java applications that do small operations on
OFF files. Includes tessellation, subdivision surfaces, and a Bezier patch to OFF
convertor.
- MeshMan
is a mesh manipulation program by that works with OFF files. Includes
subdivision surfaces, decimation, tessellation, matrix transforms, and various types
of display.
- Yar is a raytracer that
renders OFF files (Triangles only).
The following websites contain programs that work with OFF files:
- Geomview,
an interactive viewing program for Unix. Widely used for visualization.
- JavaView,
a visualization tool similar to Geomview.
- IVCON,
a 3D graphics file convertor. Can read and write a wide variety of formats,
including OFF files. Source included.
- ADMesh,
a program that converts unconnected triangle meshes from STL files into
OFF, VRML, or DXF formats, among other useful operations.
- DXtoOFF,
a program that converts DirectX .X files to OFF files.