P3D: A Lisp-based format for representing general 3D models

The primary design goal for P3D has been to produce a metafile format which can support the needs of scientific visualization while remaining compatible with a wide range of common renderers. To this end, rendering features which are available on only a few renderers and cannot easily be emulated have been excluded from P3D. P3D is based on the Common Lisp programming language with a small number of extensions for the description of geometry. The programmability of P3D greatly eases the task of adapting existing model generators to produce P3D, in the same fashion that the programmability of the Postscript page description language eases the task of modifying code to generate Postscript. Further, programmability allows knowledge of the particular scientific domain of the model to be incorporated into the metafile. This method provides easy representation of directed acyclic graphs and complete programmability to facilitate interfaces to new model generators, without the introduction of a new and unfamiliar language.<<ETX>>