A cone physics shape. More...
#include <collisionshape.h>
Public Member Functions | |
ConeCollisionShape (const String &Name, const Real &Radius, const Real &Height, const Vector3 &UpAxis) | |
Class Constructor. More... | |
ConeCollisionShape (const String &Name, const Real &Radius, const Real &Height, StandardAxis UpAxis) | |
Class Constructor. More... | |
ConeCollisionShape (const String &Name, btConeShape *BulletShape) | |
Internal Constructor. More... | |
ConeCollisionShape (XML::Node OneNode) | |
DeSerializing Constructor. More... | |
virtual | ~ConeCollisionShape () |
Class Destructor. | |
virtual btConeShape * | GetBulletConeShape () const |
Gets a pointer to the upcasted internal shape. More... | |
virtual Real | GetCleanHeight () const |
Gets the height of the cone, as originally passed in. More... | |
virtual Real | GetCleanRadius () const |
Gets the radius of the cone, as originally passed in. More... | |
virtual Real | GetHeight () const |
Gets the height of the cone, as used for collision checking. More... | |
Real | GetHeightScaling () const |
Which axis is up defines which axis is used to scale height. More... | |
virtual Real | GetRadius () const |
Gets the radius of the cone, as used for collision checking. More... | |
Real | GetRadiusScaling () const |
Which axis is up defines which 2 axis are used to scale the radius. More... | |
virtual CollisionShape::ShapeType | GetType () const |
Gets the type of Collision shape this is. More... | |
virtual Vector3 | GetUpAxis () const |
Gets which axis this cone is oriented along. More... | |
virtual StandardAxis | GetUpStandardAxis () const |
Gets which axis this cone is oriented along. More... | |
virtual void | ProtoDeSerialize (const XML::Node &OneNode) |
Take the data stored in an XML and overwrite this instance of this object with it. More... | |
virtual void | ProtoSerialize (XML::Node &CurrentRoot) const |
Convert this class to an XML::Node ready for serialization. More... | |
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 | GetSerializableName () |
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 | GetSerializableName () |
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 | GetSerializableName () |
Get the name of the the XML tag this class will leave behind as its instances are serialized. More... | |
Protected Member Functions | |
void | Construct (const String &Name, const Real &Radius, const Real &Height, StandardAxis UpAxis) |
Performe shared contructor work. More... | |
Vector3 | GetAxisMathBS () const |
Simulate some messed up the physics library does. More... | |
Protected Member Functions inherited from Mezzanine::Physics::PrimitiveCollisionShape | |
void | SetPointers (btConvexInternalShape *Shape) |
Sets the internal pointers on the base classes. | |
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 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 cone physics shape.
Keep in mind when building a cone shape, the provided radius is for the base of the cone, but the pivot point of the shape is still at it's center and not it's base. Like Capsules and Cylinders, Cones can be aligned to any of the 3 linear axes(X, Y, or Z).
Definition at line 59 of file conecollisionshape.h.
Mezzanine::Physics::ConeCollisionShape::ConeCollisionShape | ( | const String & | Name, |
const Real & | Radius, | ||
const Real & | Height, | ||
const Vector3 & | UpAxis | ||
) |
Class Constructor.
Name | The name of this Shape. |
Radius | The radius of the base of the Cone. |
Height | The height of the Cone. |
UpAxis | Which axis the Cone is to be oriented along. Typical usage is for a capsule to be oriented on the Y axis(0,1,0), which would make it stand upright. |
Definition at line 95 of file conecollisionshape.cpp.
Mezzanine::Physics::ConeCollisionShape::ConeCollisionShape | ( | const String & | Name, |
const Real & | Radius, | ||
const Real & | Height, | ||
StandardAxis | UpAxis | ||
) |
Class Constructor.
Name | The name of this Shape. |
Radius | The radius of the base of the Cone. |
Height | The height of the Cone. |
UpAxis | Which axis the Cone is to be oriented along. Uses StandardAxis enum, Axis_Y to make a vertical capsule |
Definition at line 98 of file conecollisionshape.cpp.
Mezzanine::Physics::ConeCollisionShape::ConeCollisionShape | ( | const String & | Name, |
btConeShape * | BulletShape | ||
) |
Internal Constructor.
Name | The name of this Shape. |
BulletShape | The internal shape this shape is based on. |
Definition at line 123 of file conecollisionshape.cpp.
Mezzanine::Physics::ConeCollisionShape::ConeCollisionShape | ( | XML::Node | OneNode | ) |
DeSerializing Constructor.
OneNode | The node to use for constructing this shape |
Definition at line 101 of file conecollisionshape.cpp.
|
protected |
Performe shared contructor work.
Name | The name of this Shape. |
Radius | The radius of the base of the Cone. |
Height | The height of the Cone. |
UpAxis | Which axis the Cone is to be oriented along. Uses StandardAxis enum, Axis_Y to make a vertical capsule |
Definition at line 56 of file conecollisionshape.cpp.
|
protected |
Simulate some messed up the physics library does.
Definition at line 68 of file conecollisionshape.cpp.
|
virtual |
Gets a pointer to the upcasted internal shape.
Definition at line 173 of file conecollisionshape.cpp.
|
virtual |
Gets the height of the cone, as originally passed in.
Definition at line 150 of file conecollisionshape.cpp.
|
virtual |
Gets the radius of the cone, as originally passed in.
Definition at line 145 of file conecollisionshape.cpp.
|
virtual |
Gets the height of the cone, as used for collision checking.
Definition at line 140 of file conecollisionshape.cpp.
Real Mezzanine::Physics::ConeCollisionShape::GetHeightScaling | ( | ) | const |
Which axis is up defines which axis is used to scale height.
Definition at line 158 of file conecollisionshape.cpp.
|
virtual |
Gets the radius of the cone, as used for collision checking.
Definition at line 135 of file conecollisionshape.cpp.
Real Mezzanine::Physics::ConeCollisionShape::GetRadiusScaling | ( | ) | const |
Which axis is up defines which 2 axis are used to scale the radius.
Definition at line 155 of file conecollisionshape.cpp.
|
static |
Get the name of the the XML tag this class will leave behind as its instances are serialized.
Definition at line 232 of file conecollisionshape.cpp.
|
virtual |
Gets the type of Collision shape this is.
Implements Mezzanine::Physics::PrimitiveCollisionShape.
Definition at line 168 of file conecollisionshape.cpp.
|
virtual |
Gets which axis this cone is oriented along.
Definition at line 161 of file conecollisionshape.cpp.
|
virtual |
Gets which axis this cone is oriented along.
Definition at line 164 of file conecollisionshape.cpp.
|
virtual |
Take the data stored in an XML and overwrite this instance of this object with it.
OneNode | and XML::Node containing the data. |
Reimplemented from Mezzanine::Physics::PrimitiveCollisionShape.
Definition at line 214 of file conecollisionshape.cpp.
|
virtual |
Convert this class to an XML::Node ready for serialization.
CurrentRoot | The point in the XML hierarchy that all this collision shape should be appended to. |
Reimplemented from Mezzanine::Physics::PrimitiveCollisionShape.
Definition at line 176 of file conecollisionshape.cpp.