]> Dogcows Code - chaz/yoink/blobdiff - src/moof/frustum.cc
remove some unused stlplus modules
[chaz/yoink] / src / moof / frustum.cc
index aaeceb094fb4ecacc2e2c2fbf1d49835eb345c74..c525c1a42cec0181d66d17982b43db21ec0d5ecf 100644 (file)
@@ -1,13 +1,11 @@
 
-/*]  Copyright (c) 2009-2010, Charles McGarvey  [**************************
+/*]  Copyright (c) 2009-2011, Charles McGarvey  [*****************************
 **]  All rights reserved.
 *
-* vi:ts=4 sw=4 tw=75
-*
 * Distributable under the terms and conditions of the 2-clause BSD license;
 * see the file COPYING for a complete text of the license.
 *
-**************************************************************************/
+*****************************************************************************/
 
 #include "aabb.hh"
 #include "frustum.hh"
@@ -20,72 +18,55 @@ namespace moof {
 void frustum::init(const matrix4& modelview, const matrix4& projection)
 {
        scalar planes[6][4];
-
        extract_frustum_planes(modelview, projection, planes, z_clip_neg_one);
 
-       planes_[0] = plane(planes[0][0], planes[0][1],
-                                          planes[0][2], planes[0][3]);
-       planes_[1] = plane(planes[1][0], planes[1][1],
-                                          planes[1][2], planes[1][3]);
-       planes_[2] = plane(planes[2][0], planes[2][1],
-                                          planes[2][2], planes[2][3]);
-       planes_[3] = plane(planes[3][0], planes[3][1],
-                                          planes[3][2], planes[3][3]);
-       planes_[4] = plane(planes[4][0], planes[4][1],
-                                          planes[4][2], planes[4][3]);
-       planes_[5] = plane(planes[5][0], planes[5][1],
-                                          planes[5][2], planes[5][3]);
+       planes_[0] = plane(planes[0][0], planes[0][1], planes[0][2], planes[0][3]);
+       planes_[1] = plane(planes[1][0], planes[1][1], planes[1][2], planes[1][3]);
+       planes_[2] = plane(planes[2][0], planes[2][1], planes[2][2], planes[2][3]);
+       planes_[3] = plane(planes[3][0], planes[3][1], planes[3][2], planes[3][3]);
+       planes_[4] = plane(planes[4][0], planes[4][1], planes[4][2], planes[4][3]);
+       planes_[5] = plane(planes[5][0], planes[5][1], planes[5][2], planes[5][3]);
 }
 
 void frustum::init(const matrix4& modelview, scalar fovy, scalar aspect,
-                                  scalar abutting, scalar distant)
+               scalar abutting, scalar distant)
 {
        matrix4 projection;
-
-       matrix_perspective_yfov_RH(projection, fovy, aspect, abutting,
-                                                                       distant, z_clip_neg_one);
-
+       matrix_perspective_yfov_RH(projection,
+                       fovy, aspect, abutting, distant, z_clip_neg_one);
        init(modelview, projection);
 }
 
 frustum::collision frustum::contains(const aabb<3>& aabb) const
 {
-       vector3 corners[8];
-       int nTotalInside = 0;
-
+       int     total = 0;
+       vector3 corners[8];
        aabb.get_corners(corners);
 
        for (int i = 0; i < 6; ++i)
        {
-               int nInside = 8;
-
+               int num = 8;
                for (int j = 0; j < 8; ++j)
                {
                        if (planes_[i].intersects(corners[j]) == plane::negative)
-                       {
-                               --nInside;
-                       }
+                               --num;
                }
-
-               if (nInside == 0)      return outside;
-               else if (nInside == 8) ++nTotalInside;
+               if (num == 0) return outside;
+               else if (num == 8) ++total;
        }
 
-       if (nTotalInside == 6) return inside;
-       else                   return intersecting;
+       if (total == 6) return inside;
+       return intersecting;
 }
 
-
-frustum::collision frustum::contains(const sphere<3>& sphere) const
+frustum::collision frustum::contains(const sphere3& sphere) const
 {
        for (int i = 0; i < 6; ++i)
        {
                plane::halfspace halfspace = planes_[i].intersects(sphere);
-               
-               if (halfspace == plane::negative)       return outside;
+               if (halfspace == plane::negative) return outside;
                else if (halfspace == plane::intersecting) return intersecting;
        }
-
        return inside;
 }
 
This page took 0.020585 seconds and 4 git commands to generate.