//--------------------------------CONSTRUCTORS----------------------------------// /** * Constructs a BooleanModeller object to apply boolean operation in two solids. * Makes preliminary calculations * * @param solid1 first solid where boolean operations will be applied * @param solid2 second solid where boolean operations will be applied */ public BooleanModeller(Solid solid1, Solid solid2) { //representation to apply boolean operations Object1 = new Object3D(solid1); Object2 = new Object3D(solid2); //split the faces so that none of them intercepts each other Object1.SplitFaces(Object2); Object2.SplitFaces(Object1); //classify faces as being inside or outside the other solid Object1.ClassifyFaces(Object2); Object2.ClassifyFaces(Object1); }