Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members
CCsg3D.h
Go to the documentation of this file.00001 #ifndef __CCsg3D_h__ 00002 #define __CCsg3D_h__ 00003 00005 // MarSTD version 2004 - (c)2004 - Marcel Smit // 00006 // // 00007 // [email protected] // 00008 // [email protected] // 00009 // // 00010 // This code may not be used in a commercial product without my // 00011 // permission. If you redistribute it, this message must remain // 00012 // intact. If you use this code, some acknowledgement would be // 00013 // appreciated. ;-) // 00015 00017 00018 00019 00020 #include "CBsp.h" 00021 #include "CPlane.h" 00022 #include "CPoly.h" 00023 00024 //--------------------------------------------------------------------------- 00025 00027 00035 class CCsg3D 00036 { 00037 00038 private: 00039 00040 CCsg3D(); 00041 00042 public: 00043 00044 ~CCsg3D(); 00045 00046 public: 00047 00051 static CCsg3D& I() 00052 { 00053 static CCsg3D csg3D; 00054 return csg3D; 00055 } 00056 00057 public: 00058 00059 void addition(CMesh* mesh1, CMesh* mesh2, CMesh* out); 00060 void subtraction(CMesh* mesh1, CMesh* mesh2, CMesh* out); 00061 void intersection(CMesh* mesh1, CMesh* mesh2, CMesh* out); 00062 void exclusiveOr(CMesh* mesh1, CMesh* mesh2, CMesh* out); 00063 00064 private: 00065 00066 void clip(CMesh* mesh, CMesh* clipMesh, CMesh* out, CMesh* in, int polyClipPriority); 00067 void clip(CMesh* mesh, CBsp* bsp, CMesh* out, CMesh* in, int polyClipPriority); 00068 00069 }; 00070 00071 #endif
Generated on Tue Feb 8 21:59:02 2005 for MarSTDv2004 by
