A deformable debris. More...
#include <softdebris.h>
Public Member Functions | |
SoftDebris (World *TheWorld) | |
Blank constructor. More... | |
SoftDebris (const String &Name, const Real Mass, World *TheWorld) | |
Class constructor. More... | |
SoftDebris (const XML::Node &SelfRoot, World *TheWorld) | |
XML constructor. More... | |
virtual | ~SoftDebris () |
Class destructor. | |
virtual void | _NotifyProxyDestroyed (WorldProxy *ToBeDestroyed) |
Notifies that a proxy belonging to this WorldObject is being forcibly destroyed, and it needs to update. More... | |
virtual void | _Update () |
Utility function for altering or checking the World Object every frame. More... | |
virtual void | AddToWorld () |
Adds the object to the World. More... | |
virtual String | GetDerivedSerializableName () const |
Gets the most derived serializable name of this WorldObject. More... | |
virtual Graphics::EntityProxy * | GetEntityProxy () const |
Gets a pointer to the graphics portion of this debris. More... | |
virtual Vector3 | GetLocation () const |
Gets this objects current location. More... | |
virtual Quaternion | GetOrientation () const |
Gets this objects current orientation. More... | |
virtual void | GetProxies (ProxyContainer &Proxies) |
Populates a container with all of the WorldProxies being used by this WorldObject. More... | |
virtual void | GetProxies (const UInt32 Types, ProxyContainer &Proxies) |
Populates a container with all the WorldProxies being used by this WorldObject specified in a provided mask. More... | |
virtual Vector3 | GetScale () const |
Gets the scaling currently being applied to this object. More... | |
virtual Physics::SoftProxy * | GetSoftProxy () const |
Gets a pointer to the physics portion of this debris. More... | |
virtual WorldObjectType | GetType () const |
Gets the type of the object instance. More... | |
virtual Boole | IsInWorld () const |
Gets whether or not this object is currently in the world. More... | |
virtual Boole | IsKinematic () const |
Checks of the object is kinematic. More... | |
virtual Boole | IsStatic () const |
Checks of the object is static. More... | |
virtual void | Pitch (const Real Angle) |
Rotate the object around the X axis. More... | |
virtual void | ProtoDeSerializeProperties (const XML::Node &SelfRoot) |
Take the data stored in an XML Node and overwrite the properties of this object with it. More... | |
virtual void | ProtoDeSerializeProxies (const XML::Node &SelfRoot) |
Take the data stored in an XML Node and overwrite the proxies of this object with it. More... | |
virtual void | ProtoSerializeProperties (XML::Node &SelfRoot) const |
Convert the properties of this class to an XML::Node ready for serialization. More... | |
virtual void | ProtoSerializeProxies (XML::Node &SelfRoot) const |
Convert the proxies of this class to an XML::Node ready for serialization. More... | |
virtual void | RemoveFromWorld () |
Removes the object from the World. More... | |
virtual void | Roll (const Real Angle) |
Rotate the object around the Z axis. More... | |
virtual void | Rotate (const Vector3 &Axis, const Real Angle) |
Rotates the object from it's existing rotation. More... | |
virtual void | Rotate (const Quaternion &Rotation) |
Rotates the object from it's existing rotation. More... | |
virtual void | Scale (const Vector3 &Scale) |
Scales the object from it's current size. More... | |
virtual void | Scale (const Real X, const Real Y, const Real Z) |
Scales the object from it's current size. More... | |
virtual void | SetLocation (const Vector3 &Loc) |
Sets the location of this object in parent space. More... | |
virtual void | SetLocation (const Real X, const Real Y, const Real Z) |
Sets the location of this object in parent space via Reals. More... | |
virtual void | SetOrientation (const Quaternion &Ori) |
Sets the orientation of this object in parent space. More... | |
virtual void | SetOrientation (const Real X, const Real Y, const Real Z, const Real W) |
Sets the orientation of this object in parent space via Reals. More... | |
virtual void | SetScale (const Vector3 &Sc) |
Sets the scaling to be applied to this object. More... | |
virtual void | SetScale (const Real X, const Real Y, const Real Z) |
Sets the scaling to be applied to this object via Reals. More... | |
virtual void | Translate (const Vector3 &Trans) |
Moves this object from it's current location. More... | |
virtual void | Translate (const Real X, const Real Y, const Real Z) |
Moves this object from it's current location. More... | |
virtual void | Yaw (const Real Angle) |
Rotate the object around the Y axis. More... | |
Public Member Functions inherited from Mezzanine::Debris | |
Debris (World *TheWorld) | |
Blank constructor. More... | |
Debris (const String &Name, World *TheWorld) | |
Class constructor. More... | |
virtual | ~Debris () |
Class destructor. | |
Public Member Functions inherited from Mezzanine::WorldObject | |
WorldObject (World *TheWorld) | |
Blank constructor. More... | |
WorldObject (const String &Name, World *TheWorld) | |
Class constructor. More... | |
virtual | ~WorldObject () |
Class destructor. | |
virtual void | _NotifyCollisionState (Physics::Collision *Col, const Physics::CollisionState State) |
Notifies this World Object of a collision that is occuring with it. More... | |
virtual const String & | GetName () const |
Gets the name of this object. More... | |
virtual World * | GetWorld () const |
Gets the world this object currently belongs to. More... | |
virtual void | ProtoDeSerialize (const XML::Node &SelfRoot) |
Take the data stored in an XML Node and overwrite this object with it. More... | |
virtual void | ProtoSerialize (XML::Node &ParentNode) const |
Convert this class to an XML::Node ready for serialization. More... | |
Public Member Functions inherited from Mezzanine::TransformableObject | |
virtual | ~TransformableObject () |
Class Destructor. | |
virtual Vector3 | ConvertGlobalToLocal (const Vector3 &Location) const |
Converts a point in global space to the same point in local space. More... | |
virtual Quaternion | ConvertGlobalToLocal (const Quaternion &Orientation) const |
Converts a rotation in global space to the same rotation in local space. More... | |
virtual Vector3 | ConvertLocalToGlobal (const Vector3 &Location) const |
Converts a point in local space to the same point in global space. More... | |
virtual Quaternion | ConvertLocalToGlobal (const Quaternion &Orientation) const |
Converts a rotation in local space to the same rotation in global space. More... | |
Static Public Member Functions | |
static String | GetSerializableName () |
Get the name of the the XML tag the proxy class will leave behind as its instances are serialized. More... | |
Static Public Member Functions inherited from Mezzanine::Debris | |
static String | GetSerializableName () |
Get the name of the the XML tag the proxy class will leave behind as its instances are serialized. More... | |
Static Public Member Functions inherited from Mezzanine::WorldObject | |
static String | GetSerializableName () |
Get the name of the the XML tag the proxy class will leave behind as its instances are serialized. More... | |
Protected Member Functions | |
virtual void | CreateSoftDebris (const Real Mass) |
Common construction method for SoftDebris. More... | |
virtual void | DestroySoftDebris () |
Destruction method for RigidDebris. More... | |
Protected Attributes | |
Graphics::EntityProxy * | EntProx |
A pointer to the graphics representation of this debris. More... | |
Physics::SoftProxy * | SofProx |
A pointer to the physics representation of this debris. More... | |
Protected Attributes inherited from Mezzanine::WorldObject | |
CollisionContainer | CurrentCollisions |
This member stores all existing collision events referencing this object. More... | |
String | ObjectName |
The name of the object. More... | |
World * | ParentWorld |
This is the world this object belongs to and will be inserted in/removed from. More... | |
Additional Inherited Members | |
Public Types inherited from Mezzanine::WorldObject | |
typedef std::set< Physics::Collision * > | CollisionContainer |
Basic container type for the current collisions applied to this object. | |
typedef CollisionContainer::iterator | CollisionIterator |
Iterator type for the current collisions applied to this object. | |
typedef CollisionContainer::const_iterator | ConstCollisionIterator |
Const Iterator type for the current collisions applied to this object. | |
typedef ProxyContainer::const_iterator | ConstProxyIterator |
Const Iterator type for WorldProxy instances stored by this class. | |
typedef std::vector< WorldProxy * > | ProxyContainer |
Basic container type for WorldProxy storage by this class. | |
typedef ProxyContainer::iterator | ProxyIterator |
Iterator type for WorldProxy instances stored by this class. | |
A deformable debris.
Definition at line 62 of file softdebris.h.
Mezzanine::SoftDebris::SoftDebris | ( | World * | TheWorld | ) |
Blank constructor.
TheWorld | A pointer to the world this object belongs to. |
Definition at line 65 of file softdebris.cpp.
Class constructor.
Name | The name to be given to this object. |
Mass | The mass of the debris object. |
TheWorld | A pointer to the world this object belongs to. |
Definition at line 71 of file softdebris.cpp.
XML constructor.
SelfRoot | An XML::Node containing the data to populate this class with. |
TheWorld | A pointer to the world this object belongs to. |
Definition at line 77 of file softdebris.cpp.
|
virtual |
Notifies that a proxy belonging to this WorldObject is being forcibly destroyed, and it needs to update.
ToBeDestroyed | The WorldProxy that is marked for destruction. |
Implements Mezzanine::WorldObject.
Definition at line 371 of file softdebris.cpp.
|
virtual |
Utility function for altering or checking the World Object every frame.
Implements Mezzanine::WorldObject.
Definition at line 366 of file softdebris.cpp.
|
virtual |
Adds the object to the World.
Implements Mezzanine::WorldObject.
Definition at line 161 of file softdebris.cpp.
|
protectedvirtual |
Common construction method for SoftDebris.
Mass | The mass of the debris object. |
Definition at line 86 of file softdebris.cpp.
|
protectedvirtual |
Destruction method for RigidDebris.
Definition at line 101 of file softdebris.cpp.
|
virtual |
Gets the most derived serializable name of this WorldObject.
Reimplemented from Mezzanine::Debris.
Definition at line 357 of file softdebris.cpp.
|
virtual |
Gets a pointer to the graphics portion of this debris.
Definition at line 127 of file softdebris.cpp.
|
virtual |
Gets this objects current location.
Implements Mezzanine::TransformableObject.
Definition at line 194 of file softdebris.cpp.
|
virtual |
Gets this objects current orientation.
Implements Mezzanine::TransformableObject.
Definition at line 211 of file softdebris.cpp.
|
virtual |
Populates a container with all of the WorldProxies being used by this WorldObject.
Proxies | The container of proxies to be populated. |
Implements Mezzanine::WorldObject.
Definition at line 142 of file softdebris.cpp.
|
virtual |
Populates a container with all the WorldProxies being used by this WorldObject specified in a provided mask.
Types | The bitmask specifing the types of world proxies to populate the container with. |
Proxies | The container of proxies to be populated. |
Implements Mezzanine::WorldObject.
Definition at line 148 of file softdebris.cpp.
|
virtual |
Gets the scaling currently being applied to this object.
Implements Mezzanine::TransformableObject.
Definition at line 228 of file softdebris.cpp.
|
static |
Get the name of the the XML tag the proxy class will leave behind as its instances are serialized.
Definition at line 360 of file softdebris.cpp.
|
virtual |
Gets a pointer to the physics portion of this debris.
Definition at line 130 of file softdebris.cpp.
|
virtual |
Gets the type of the object instance.
Implements Mezzanine::WorldObject.
Definition at line 124 of file softdebris.cpp.
|
virtual |
Gets whether or not this object is currently in the world.
Implements Mezzanine::WorldObject.
Definition at line 133 of file softdebris.cpp.
|
virtual |
Checks of the object is kinematic.
Implements Mezzanine::WorldObject.
Definition at line 139 of file softdebris.cpp.
|
virtual |
Checks of the object is static.
Implements Mezzanine::WorldObject.
Definition at line 136 of file softdebris.cpp.
|
virtual |
Rotate the object around the X axis.
Angle | The angle to rotate this object in radians. |
Implements Mezzanine::TransformableObject.
Definition at line 251 of file softdebris.cpp.
|
virtual |
Take the data stored in an XML Node and overwrite the properties of this object with it.
SelfRoot | An XML::Node containing the data to populate this class with. |
Reimplemented from Mezzanine::Debris.
Definition at line 314 of file softdebris.cpp.
|
virtual |
Take the data stored in an XML Node and overwrite the proxies of this object with it.
SelfRoot | An XML::Node containing the data to populate this class with. |
Implements Mezzanine::WorldObject.
Definition at line 319 of file softdebris.cpp.
|
virtual |
Convert the properties of this class to an XML::Node ready for serialization.
SelfRoot | The root node containing all the serialized data for this instance. |
Reimplemented from Mezzanine::Debris.
Definition at line 291 of file softdebris.cpp.
|
virtual |
Convert the proxies of this class to an XML::Node ready for serialization.
SelfRoot | The root node containing all the serialized data for this instance. |
Implements Mezzanine::WorldObject.
Definition at line 296 of file softdebris.cpp.
|
virtual |
Removes the object from the World.
Implements Mezzanine::WorldObject.
Definition at line 170 of file softdebris.cpp.
|
virtual |
Rotate the object around the Z axis.
Angle | The angle to rotate this object in radians. |
Implements Mezzanine::TransformableObject.
Definition at line 257 of file softdebris.cpp.
Rotates the object from it's existing rotation.
Axis | The axis on which this object will be rotated. |
Angle | The angle to rotate this object in radians. |
Implements Mezzanine::TransformableObject.
Definition at line 263 of file softdebris.cpp.
|
virtual |
Rotates the object from it's existing rotation.
Rotation | The rotation to apply to this object. |
Implements Mezzanine::TransformableObject.
Definition at line 269 of file softdebris.cpp.
|
virtual |
Scales the object from it's current size.
Scale | A Vector3 representing the scaling to apply to this object. |
Implements Mezzanine::TransformableObject.
Definition at line 275 of file softdebris.cpp.
Scales the object from it's current size.
X | The scaling factor to apply on the X axis. |
Y | The scaling factor to apply on the Y axis. |
Z | The scaling factor to apply on the Z axis. |
Implements Mezzanine::TransformableObject.
Definition at line 281 of file softdebris.cpp.
|
virtual |
Sets the location of this object in parent space.
Loc | A Vector3 representing the location this object is to be set to. |
Implements Mezzanine::TransformableObject.
Definition at line 182 of file softdebris.cpp.
Sets the location of this object in parent space via Reals.
X | The position on the X axis where this object is to be set. |
Y | The position on the Y axis where this object is to be set. |
Z | The position on the Z axis where this object is to be set. |
Implements Mezzanine::TransformableObject.
Definition at line 188 of file softdebris.cpp.
|
virtual |
Sets the orientation of this object in parent space.
Ori | A Quaternion representing the rotation this object is to be set to. |
Implements Mezzanine::TransformableObject.
Definition at line 199 of file softdebris.cpp.
|
virtual |
Sets the orientation of this object in parent space via Reals.
X | The X component of the Axis. |
Y | The Y component of the Axis. |
Z | The Z component of the Axis. |
W | Rotation on the Axis X, Y and Z defined. |
Implements Mezzanine::TransformableObject.
Definition at line 205 of file softdebris.cpp.
|
virtual |
Sets the scaling to be applied to this object.
Sc | A Vector3 representing the amount of scaling to apply to this object. |
Implements Mezzanine::TransformableObject.
Definition at line 216 of file softdebris.cpp.
Sets the scaling to be applied to this object via Reals.
X | The scaling factor to apply on the X axis. |
Y | The scaling factor to apply on the Y axis. |
Z | The scaling factor to apply on the Z axis. |
Implements Mezzanine::TransformableObject.
Definition at line 222 of file softdebris.cpp.
|
virtual |
Moves this object from it's current location.
Trans | A Vector3 representing the amount of movement to apply to this object. |
Implements Mezzanine::TransformableObject.
Definition at line 233 of file softdebris.cpp.
Moves this object from it's current location.
X | The amount of movement to apply on the X axis. |
Y | The amount of movement to apply on the Y axis. |
Z | The amount of movement to apply on the Z axis. |
Implements Mezzanine::TransformableObject.
Definition at line 239 of file softdebris.cpp.
|
virtual |
Rotate the object around the Y axis.
Angle | The angle to rotate this object in radians. |
Implements Mezzanine::TransformableObject.
Definition at line 245 of file softdebris.cpp.
|
protected |
A pointer to the graphics representation of this debris.
Definition at line 67 of file softdebris.h.
|
protected |
A pointer to the physics representation of this debris.
Definition at line 70 of file softdebris.h.