A box physics shape. More...
#include <collisionshape.h>
Public Member Functions | |
BoxCollisionShape (const String &Name, const Vector3 &HalfExtents) | |
Class Constructor. More... | |
BoxCollisionShape (const String &Name, btBoxShape *BulletShape) | |
Internal Constructor. More... | |
BoxCollisionShape (XML::Node OneNode) | |
DeSerializing Constructor. More... | |
virtual | ~BoxCollisionShape () |
Class Destructor. | |
virtual btBoxShape * | GetBulletBoxShape () const |
virtual Vector3 | GetCleanHalfExtents () const |
Gets the half extents used to construct this box. More... | |
virtual Vector3 | GetHalfExtents () const |
Gets the current half extents used in collision checking. More... | |
virtual Vector3 | GetHalfExtentsWithMargin () const |
Gets the half extents with padding, this is the size the shape will appear to be. More... | |
virtual CollisionShape::ShapeType | GetType () const |
Gets the type of Collision shape this is. More... | |
virtual bool | IsInside (const Vector3 &Location, const Real &Tolerance) const |
Checks to see if a point in local space is inside this shape. More... | |
virtual void | ProtoDeSerialize (const XML::Node &OneNode) |
virtual void | ProtoSerialize (XML::Node &CurrentRoot) const |
Public Member Functions inherited from Mezzanine::Physics::PrimitiveCollisionShape | |
PrimitiveCollisionShape () | |
Class Constructor. | |
virtual | ~PrimitiveCollisionShape () |
Class Destructor. | |
virtual btConvexInternalShape * | GetBulletConvexShape () const |
Public Member Functions inherited from Mezzanine::Physics::CollisionShape | |
CollisionShape () | |
Class Constructor. | |
virtual | ~CollisionShape () |
Class Destructor. | |
virtual btCollisionShape * | _GetInternalShape () const |
Gets the internal shape pointer this collision shape is based on. More... | |
virtual void | _SetShapeName (const String &NewName) |
Sets the name of this collision shape. More... | |
virtual Real | GetMargin () const |
Gets the amount of padding currently being applied to the collision shape. More... | |
virtual const String & | GetName () const |
Gets the name of this shape. More... | |
virtual Vector3 | GetScaling () const |
Gets the current scaling being applied to the collision shape. More... | |
virtual void | SetMargin (const Real &Margin) |
Sets the padding that will be applied when checking for collisions. More... | |
virtual void | SetScaling (const Vector3 &Scaling) |
Scales the collision shape on each of it's axes. More... | |
Static Public Member Functions | |
static String | SerializableName () |
Get the name of the the XML tag this class will leave behind as its instances are serialized. More... | |
Static Public Member Functions inherited from Mezzanine::Physics::PrimitiveCollisionShape | |
static String | SerializableName () |
Get the name of the the XML tag this class will leave behind as its instances are serialized. More... | |
Static Public Member Functions inherited from Mezzanine::Physics::CollisionShape | |
static String | SerializableName () |
Get the name of the the XML tag this class will leave behind as its instances are serialized. More... | |
Additional Inherited Members | |
Public Types inherited from Mezzanine::Physics::CollisionShape | |
enum | ShapeType { ST_Box = 0, ST_Capsule = 1, ST_Compound = 2, ST_Cone = 3, ST_ConvexHull = 4, ST_Cylinder = 5, ST_MultiSphere = 6, ST_Sphere = 7, ST_DynamicTriMesh = 8, ST_Heightfield = 9, ST_Plane = 10, ST_Soft = 11, ST_StaticTriMesh = 12 } |
This enum describes what kind of shape you are currently working with. More... | |
Protected Member Functions inherited from Mezzanine::Physics::PrimitiveCollisionShape | |
void | SetPointers (btConvexInternalShape *Shape) |
Sets the internal pointers on the base classes. | |
Protected Attributes inherited from Mezzanine::Physics::CollisionShape | |
String | Name |
Storage for the name of this class instance. | |
btCollisionShape * | ShapeBase |
A pointer to the bullet collision this uses. | |
A box physics shape.
This is exactly what it sounds like. A primitive shape of a box that is constructed by it's half extents. Half extents can't be negative, but otherwise can be any value. The margin value is subtracted from the total size rather than added for this shape.
Definition at line 60 of file boxcollisionshape.h.
Mezzanine::Physics::BoxCollisionShape::BoxCollisionShape | ( | const String & | Name, |
const Vector3 & | HalfExtents | ||
) |
Class Constructor.
Name | The name of this shape. |
HalfExtents | A vector3 representing half the shapes size on each axis. |
Definition at line 56 of file boxcollisionshape.cpp.
Mezzanine::Physics::BoxCollisionShape::BoxCollisionShape | ( | const String & | Name, |
btBoxShape * | BulletShape | ||
) |
Internal Constructor.
Name | The name of this shape. |
BulletShape | The internal shape this shape is based on. |
Definition at line 62 of file boxcollisionshape.cpp.
Mezzanine::Physics::BoxCollisionShape::BoxCollisionShape | ( | XML::Node | OneNode) |
DeSerializing Constructor.
OneNode | The node to use for constructing this shape |
Definition at line 68 of file boxcollisionshape.cpp.
|
virtual |
Definition at line 118 of file boxcollisionshape.cpp.
|
virtual |
Gets the half extents used to construct this box.
Definition at line 93 of file boxcollisionshape.cpp.
|
virtual |
Gets the current half extents used in collision checking.
Definition at line 98 of file boxcollisionshape.cpp.
|
virtual |
Gets the half extents with padding, this is the size the shape will appear to be.
Definition at line 103 of file boxcollisionshape.cpp.
|
virtual |
Gets the type of Collision shape this is.
Implements Mezzanine::Physics::PrimitiveCollisionShape.
Definition at line 113 of file boxcollisionshape.cpp.
|
virtual |
Checks to see if a point in local space is inside this shape.
Location | The specified point to perform the check. |
Tolerance | The amount of leeway to give in the check. If the distance from the specified point is equal or less then the Tolerance provided then this will return true. |
Definition at line 108 of file boxcollisionshape.cpp.
|
virtual |
Reimplemented from Mezzanine::Physics::PrimitiveCollisionShape.
Definition at line 142 of file boxcollisionshape.cpp.
|
virtual |
Reimplemented from Mezzanine::Physics::PrimitiveCollisionShape.
Definition at line 121 of file boxcollisionshape.cpp.
|
static |
Get the name of the the XML tag this class will leave behind as its instances are serialized.
Definition at line 160 of file boxcollisionshape.cpp.