MezzanineEngine 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
Mezzanine::TransformableChildObject Class Referenceabstract

This is an interface for all child 3D objects that can have their full transforms manipulated. More...

#include <transformableobject.h>

+ Inheritance diagram for Mezzanine::TransformableChildObject:

Public Member Functions

virtual ~TransformableChildObject ()
 Class Destructor.
 
virtual Vector3 GetLocation () const =0
 Gets this objects current location. More...
 
virtual Quaternion GetOrientation () const =0
 Gets this objects current orientation. More...
 
virtual Vector3 GetScale () const =0
 Gets the scaling currently being applied to this object. More...
 
virtual void Pitch (const Real Angle, const Mezzanine::TransformSpace Space=Mezzanine::TS_Parent)=0
 Rotate the object around the X axis. More...
 
virtual void Roll (const Real Angle, const Mezzanine::TransformSpace Space=Mezzanine::TS_Parent)=0
 Rotate the object around the Z axis. More...
 
virtual void Rotate (const Vector3 &Axis, const Real Angle, const Mezzanine::TransformSpace Space=Mezzanine::TS_Parent)=0
 Rotates the object from it's existing rotation. More...
 
virtual void Rotate (const Quaternion &Rotation, const Mezzanine::TransformSpace Space=Mezzanine::TS_Parent)=0
 Rotates the object from it's existing rotation. More...
 
virtual void Scale (const Vector3 &Scale)=0
 Scales the object from it's current size. More...
 
virtual void Scale (const Real X, const Real Y, const Real Z)=0
 Scales the object from it's current size. More...
 
virtual void SetLocation (const Vector3 &Loc)=0
 Sets the location of this object in parent space. More...
 
virtual void SetLocation (const Real X, const Real Y, const Real Z)=0
 Sets the location of this object in parent space via Reals. More...
 
virtual void SetOrientation (const Quaternion &Ori)=0
 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)=0
 Sets the orientation of this object in parent space via Reals. More...
 
virtual void SetScale (const Vector3 &Sc)=0
 Sets the scaling to be applied to this object. More...
 
virtual void SetScale (const Real X, const Real Y, const Real Z)=0
 Sets the scaling to be applied to this object via Reals. More...
 
virtual void Translate (const Vector3 &Trans, const Mezzanine::TransformSpace Space=Mezzanine::TS_Parent)=0
 Moves this object from it's current location. More...
 
virtual void Translate (const Real X, const Real Y, const Real Z, const Mezzanine::TransformSpace Space=Mezzanine::TS_Parent)=0
 Moves this object from it's current location. More...
 
virtual void Yaw (const Real Angle, const Mezzanine::TransformSpace Space=Mezzanine::TS_Parent)=0
 Rotate the object around the Y axis. More...
 

Detailed Description

This is an interface for all child 3D objects that can have their full transforms manipulated.

Unlike TransformableObject, this interface has added parameters to it's methods for defining which transform space the operation is to occur in.

Definition at line 166 of file transformableobject.h.

Member Function Documentation

virtual Vector3 Mezzanine::TransformableChildObject::GetLocation ( ) const
pure virtual

Gets this objects current location.

Returns
Returns Vector3 representing the current rotation of this object in parent space.

Implemented in Mezzanine::Graphics::Bone.

virtual Quaternion Mezzanine::TransformableChildObject::GetOrientation ( ) const
pure virtual

Gets this objects current orientation.

Returns
Returns a Quaternion representing the current orientation of this object in parent space.

Implemented in Mezzanine::Graphics::Bone.

virtual Vector3 Mezzanine::TransformableChildObject::GetScale ( ) const
pure virtual

Gets the scaling currently being applied to this object.

Returns
Returns a Vector3 representing the amount this object is being scaled.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Pitch ( const Real  Angle,
const Mezzanine::TransformSpace  Space = Mezzanine::TS_Parent 
)
pure virtual

Rotate the object around the X axis.

Parameters
AngleThe angle to rotate this object in radians.
SpaceThe transform space in which to apply this rotation.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Roll ( const Real  Angle,
const Mezzanine::TransformSpace  Space = Mezzanine::TS_Parent 
)
pure virtual

Rotate the object around the Z axis.

Parameters
AngleThe angle to rotate this object in radians.
SpaceThe transform space in which to apply this rotation.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Rotate ( const Vector3 Axis,
const Real  Angle,
const Mezzanine::TransformSpace  Space = Mezzanine::TS_Parent 
)
pure virtual

Rotates the object from it's existing rotation.

Note
This method has an additive effect with the objects current rotation. Unlike "SetOrientation" this method does not replace the existing orientation with what you provide.
Parameters
AxisThe axis on which this object will be rotated.
AngleThe angle to rotate this object in radians.
SpaceThe transform space in which to apply this rotation.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Rotate ( const Quaternion Rotation,
const Mezzanine::TransformSpace  Space = Mezzanine::TS_Parent 
)
pure virtual

Rotates the object from it's existing rotation.

Note
This method has an additive effect with the objects current rotation. Unlike "SetOrientation" this method does not replace the existing orientation with what you provide.
Parameters
RotationThe rotation to apply to this object.
SpaceThe transform space in which to apply this rotation.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Scale ( const Vector3 Scale)
pure virtual

Scales the object from it's current size.

Note
This method has an additive effect with the objects' current scaling. Unlike "SetScale" this method does not replace the existing scale with what you provide.
Parameters
ScaleA Vector3 representing the scaling to apply to this object.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Scale ( const Real  X,
const Real  Y,
const Real  Z 
)
pure virtual

Scales the object from it's current size.

Note
This method has an additive effect with the objects' current scaling. Unlike "SetScale" this method does not replace the existing scale with what you provide.
Parameters
XThe scaling factor to apply on the X axis.
YThe scaling factor to apply on the Y axis.
ZThe scaling factor to apply on the Z axis.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::SetLocation ( const Vector3 Loc)
pure virtual

Sets the location of this object in parent space.

Parameters
LocationA Vector3 representing the location this object is to be set to.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::SetLocation ( const Real  X,
const Real  Y,
const Real  Z 
)
pure virtual

Sets the location of this object in parent space via Reals.

Parameters
XThe position on the X axis where this object is to be set.
YThe position on the Y axis where this object is to be set.
ZThe position on the Z axis where this object is to be set.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::SetOrientation ( const Quaternion Ori)
pure virtual

Sets the orientation of this object in parent space.

Parameters
OrientationA Quaternion representing the rotation this object is to be set to.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::SetOrientation ( const Real  X,
const Real  Y,
const Real  Z,
const Real  W 
)
pure virtual

Sets the orientation of this object in parent space via Reals.

Parameters
XThe X component of the Axis.
YThe Y component of the Axis.
ZThe Z component of the Axis.
WRotation on the Axis X, Y and Z defined.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::SetScale ( const Vector3 Sc)
pure virtual

Sets the scaling to be applied to this object.

Parameters
ScaleA Vector3 representing the amount of scaling to apply to this object.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::SetScale ( const Real  X,
const Real  Y,
const Real  Z 
)
pure virtual

Sets the scaling to be applied to this object via Reals.

Parameters
XThe scaling factor to apply on the X axis.
YThe scaling factor to apply on the Y axis.
ZThe scaling factor to apply on the Z axis.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Translate ( const Vector3 Trans,
const Mezzanine::TransformSpace  Space = Mezzanine::TS_Parent 
)
pure virtual

Moves this object from it's current location.

Note
This method has an additive effect with the objects current location. Unlike "SetLocation" this method does not replace the existing location with what you provide.
Parameters
TransA Vector3 representing the amount of movement to apply to this object.
SpaceThe transform space in which to apply this translation.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Translate ( const Real  X,
const Real  Y,
const Real  Z,
const Mezzanine::TransformSpace  Space = Mezzanine::TS_Parent 
)
pure virtual

Moves this object from it's current location.

Note
This method has an additive effect with the objects current location. Unlike "SetLocation" this method does not replace the existing location with what you provide.
Parameters
XThe amount of movement to apply on the X axis.
YThe amount of movement to apply on the Y axis.
ZThe amount of movement to apply on the Z axis.
SpaceThe transform space in which to apply this translation.

Implemented in Mezzanine::Graphics::Bone.

virtual void Mezzanine::TransformableChildObject::Yaw ( const Real  Angle,
const Mezzanine::TransformSpace  Space = Mezzanine::TS_Parent 
)
pure virtual

Rotate the object around the Y axis.

Parameters
AngleThe angle to rotate this object in radians.
SpaceThe transform space in which to apply this rotation.

Implemented in Mezzanine::Graphics::Bone.


The documentation for this class was generated from the following file: