00001 #ifndef PLANE_TRI_H 00002 00003 #define PLANE_TRI_H 00004 00059 namespace ConvexDecomposition 00060 { 00061 00062 00063 enum PlaneTriResult 00064 { 00065 PTR_FRONT, 00066 PTR_BACK, 00067 PTR_SPLIT, 00068 }; 00069 00070 PlaneTriResult planeTriIntersection(const double *plane, // the plane equation in Ax+By+Cz+D format 00071 const double *triangle, // the source position triangle. 00072 unsigned int tstride, // stride in bytes between vertices of the triangle. 00073 double epsilon, // the co-planer epsilon value. 00074 double *front, // the triangle in front of the 00075 unsigned int &fcount, // number of vertices in the 'front' triangle. 00076 double *back, // the triangle in back of the plane 00077 unsigned int &bcount); // the number of vertices in the 'back' triangle. 00078 00079 }; 00080 00081 00082 #endif