00001 /* 00002 * Collision cylinder header 00003 * 00004 * This file is part of the "SoftPixel Engine" (Copyright (c) 2008 by Lukas Hermanns) 00005 * See "SoftPixelEngine.hpp" for license information. 00006 */ 00007 00008 #ifndef __SP_COLLISION_CYLINDER_H__ 00009 #define __SP_COLLISION_CYLINDER_H__ 00010 00011 00012 #include "Base/spStandard.hpp" 00013 #include "SceneGraph/Collision/spCollisionLineBased.hpp" 00014 00015 00016 namespace sp 00017 { 00018 namespace scene 00019 { 00020 00021 00026 class SP_EXPORT CollisionCylinder : public CollisionLineBased 00027 { 00028 00029 public: 00030 00031 CollisionCylinder(CollisionMaterial* Material, SceneNode* Node, f32 Radius, f32 Height); 00032 ~CollisionCylinder(); 00033 00034 /* Functions */ 00035 00036 s32 getSupportFlags() const; 00037 00038 bool checkIntersection(const dim::line3df &Line, SIntersectionContact &Contact) const; 00039 bool checkIntersection(const dim::line3df &Line, bool ExcludeCorners = false) const; 00040 00041 }; 00042 00043 00044 } // /namespace scene 00045 00046 } // /namespace sp 00047 00048 00049 #endif 00050 00051 00052 00053 // ================================================================================