ConvexPoly, Read me, April 2006


This package brings a scripting addition ConvexPoly.osax and sample files to handle three dimensional convex polyhedra. Complex 3D objects can be constructed and displayed using OpenGL and related softwares. However, the 3D engines produce bitmaps rather than vectorial representations, a possible drawback if you entend to publish your work. Convex polyhedra are simple enough 3D objects so that vectorial rendering is possible. This is the motivation for this osax with which you will get PDF documents of high quality.

You may construct predefined polyhedra such as the 5 Platonic solids, the 13 Archimedean solids and the 13 Catalan solids. Or you may define convex polyhedra by providing a list of vertices or a list of bounding planes. In the first case you get the convex hull of the vertices and in the second case you get the the (possibly empty) intersection of the half spaces defined by the planes.

Convex polyhedra may be translated, scaled or rotated using the corresponding commands. Intersections of convex polyhedra are also handled.

Projections of convex polyhedra in 2D are handled after setting an eye position and an up vector.

Users of Smile, regular edition or full edition: polyhedra may be viewed in a graphic window and saved in PDF format. You can rotate polyhedra and rotate light in real time.
Smile regular edition is a free script editor for AppleScript which can be downloaded at Satimage-software.


Mac OS 10.4 or + system with a script editor.


Important notice: if you have already installed a previous version of ConvexPoly.osax maybe you have a ConvexPolyLib context addition installed, in /Users/<login>/Library/Application support/Smile/Class scripts/Context additions. Please remove and delete this file.

The package contains:

  1. ConvexPoly.osax to be copied in ~/Library/ScriptingAdditions/ (for one user) or in /Library/ScriptingAdditions/ to be available to all users of your system. This OSAX handles calculations of convex polyhedra and their 2D projections in a plane.
  2. this Read me file.
  3. a Documentation file introducing the handlers and the commands provided by ConvexPoly.osax.
  4. a folder named Samples which contains examples of scripts.
ConvexPoly.osax is made by Fran├žois Delyon and Michel Duneau, Ecole Polytechnique, Palaiseau.