]> Dogcows Code - chaz/yoink/blobdiff - src/Moof/Aabb.cc
cade lab fixes
[chaz/yoink] / src / Moof / Aabb.cc
index d81c971f78947d61a0df5d5b0de4344c46f93b16..692ec3622db5435ef04695ba132552df8ef231c4 100644 (file)
 
 *******************************************************************************/
 
-#include <Moof/Aabb.hh>
-#include <Moof/Camera.hh>
+#include "Aabb.hh"
+#include "Frustum.hh"
+#include "OpenGL.hh"
+#include "Texture.hh"
 
 
 namespace Mf {
 
 
-void Aabb::draw(Scalar alpha) const
+       /*
+void Aabb::getOctant(Aabb& octant, int num) const
 {
-       Scalar vertices[] = {min[0], min[1], min[2],
-                                                min[0], max[1], min[2],
-                                                max[0], max[1], min[2],
-                                                max[0], min[1], min[2],
-                                                min[0], max[1], max[2],
-                                                min[0], min[1], max[2],
-                                                max[0], min[1], max[2],
-                                                max[0], max[1], max[2]};
-
-       GLubyte indices[] = {0, 1, 2, 3,
-                                                1, 2, 7, 4,
-                                                3, 0, 5, 6,
-                                                2, 3, 6, 7,
-                                                5, 0, 1, 4,
-                                                4, 5, 6, 7};
-
-       glEnableClientState(GL_VERTEX_ARRAY);
-       glVertexPointer(3, GL_SCALAR, 0, vertices);
-
-       glDrawElements(GL_QUADS, sizeof(indices), GL_UNSIGNED_BYTE, indices);
+       Vector3 mid = getCenter();
+
+       switch (num)
+       {
+               case 0:
+                       octant.init(Vector3(min[0], min[1], mid[2]),
+                                               Vector3(mid[0], mid[1], max[2]));
+                       break;
+
+               case 1:
+                       octant.init(Vector3(mid[0], min[1], mid[2]),
+                                               Vector3(max[0], mid[1], max[2]));
+                       break;
+
+               case 2:
+                       octant.init(mid, max);
+                       break;
+
+               case 3:
+                       octant.init(Vector3(min[0], mid[1], mid[2]),
+                                               Vector3(mid[0], max[1], max[2]));
+                       break;
+
+               case 4:
+                       octant.init(min, mid);
+                       break;
+
+               case 5:
+                       octant.init(Vector3(mid[0], min[1], min[2]),
+                                               Vector3(max[0], mid[1], mid[2]));
+                       break;
+
+               case 6:
+                       octant.init(Vector3(mid[0], mid[1], min[2]),
+                                               Vector3(max[0], max[1], mid[2]));
+                       break;
+
+               case 7:
+                       octant.init(Vector3(min[0], mid[1], min[2]),
+                                               Vector3(mid[0], max[1], mid[2]));
+                       break;
+       }
 }
+*/
+
 
-bool Aabb::isVisible(const Camera& cam) const
-{
-       return cam.getFrustum().checkAabb(*this);
-}
 
 
 } // namespace Mf
This page took 0.017404 seconds and 4 git commands to generate.