artofillusion.object
Class CSGModeller

java.lang.Object
  extended by artofillusion.object.CSGModeller

public class CSGModeller
extends java.lang.Object

This class is used by CSGObject. It performs the actual work of applying boolean operators to create meshes based on the original objects. This is based on the algorithm described in

D. H. Laidlaw, W. B. Trumbore, and J. F. Hughes. "Constructive Solid Geometry for Polyhedral Objects." SIGGRAPH Proceedings, 1986, p.161.

with some simplifications due to the fact that we only permit triangles, rather than arbitrary convex polygons.


Constructor Summary
CSGModeller(TriangleMesh obj1, TriangleMesh obj2, CoordinateSystem coords1, CoordinateSystem coords2)
           
 
Method Summary
 TriangleMesh getMesh(int op, Texture texture)
          Get a triangle mesh representing the union, intersection, or difference of the two objects.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CSGModeller

public CSGModeller(TriangleMesh obj1,
                   TriangleMesh obj2,
                   CoordinateSystem coords1,
                   CoordinateSystem coords2)
Method Detail

getMesh

public TriangleMesh getMesh(int op,
                            Texture texture)
Get a triangle mesh representing the union, intersection, or difference of the two objects.

Parameters:
op - the operation to perform (one of the constants defined by CSGObject)


Copyright © 1999-2011 by Peter Eastman.