00001 #pragma once 00002 #ifndef BL7_G2_COLLISIONBOX_H 00003 #define BL7_G2_COLLISIONBOX_H 00004 00005 #include "../core.h" 00006 00007 #include "./Box.h" 00008 #include "./CollisionGeometry.h" 00009 00010 #include <MathLabs/Matrix2x3.h> 00011 00012 00013 00014 namespace bl7 { 00015 namespace geometry2 { 00016 00017 00018 00022 class BODYLABS_API CollisionBox 00023 : public Box 00024 , public CollisionGeometry 00025 { 00026 00027 // ############################################################################# 00028 // Construction / Destruction 00029 // ############################################################################# 00030 public: 00032 CollisionBox(void) 00033 : Box() 00034 { } 00035 00037 ~CollisionBox(void) 00038 { } 00039 00041 CollisionBox(const CollisionBox& rhs) 00042 : Box( rhs ) 00043 { } 00044 00046 CollisionBox& operator = (const CollisionBox& rhs) 00047 { 00048 Box::operator = ( rhs ); 00049 return *this; 00050 } 00051 00053 CollisionBox(const ml7::Vector2& center, const ml7::Vector2& half_width) 00054 : Box( center, half_width ) 00055 { } 00056 00058 CollisionBox(const float x1, const float y1, const float x2, const float y2) 00059 : Box( x1, y1, x2, y2 ) 00060 { } 00061 00062 00063 00064 // ############################################################################# 00065 // Attributes 00066 // ############################################################################# 00067 public: 00068 00069 }; // class BODYLABS_API CollisionBox 00070 00071 00072 00073 } // namespace geometry2 00074 } // namespace bl7 00075 00076 #endif // BL7_G2_COLLISIONBOX_H
1.6.1