Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_SOLIDSPACE_H__
00020 #define __CS_SOLIDSPACE_H__
00021
00022 #include "csextern.h"
00023 #include "csgeom/box.h"
00024 #include "csgeom/trimeshtools.h"
00025
00032 class csSolidSpaceNode;
00033 struct iTriangleMesh;
00034
00040 class CS_CRYSTALSPACE_EXPORT csSolidSpace
00041 {
00042 private:
00043 csBox3 root_bbox;
00044 csSolidSpaceNode* root;
00045 csVector3 minsize;
00046
00047 bool CheckBox (const csBox3& bbox, csSolidSpaceNode* node,
00048 csVector3* vertices,
00049 csTriangleMinMax* tris, size_t tri_count,
00050 csPlane3* planes);
00051
00052 public:
00056 csSolidSpace (const csBox3& bbox, const csVector3& minsize);
00057
00058 ~csSolidSpace ();
00059
00064 void AddClosedObject (iTriangleMesh* object);
00065 };
00066
00069 #endif // __CS_SOLIDSPACE_H__
00070