Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

GBE::GReparentInfluence Class Reference

Influence with reparenting information for all affected elements. More...

#include <GReparentInfluence.h>

Inheritance diagram for GBE::GReparentInfluence:

Inheritance graph
[legend]
Collaboration diagram for GBE::GReparentInfluence:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 GReparentInfluence (const GCS::GElementID &source, const GCS::GEnergy &energy, const GCS::GElementID &reparented_element, const GCS::GElementID &new_parent, const GCS::GVector3 &move_distance, const GCS::GVector3 &rotate)
virtual ~GReparentInfluence ()
const GCS::GElementIDgetReparentedElement ()
const GCS::GElementIDgetNewParent ()
const GCS::GVector3getMoveDistance ()
const GCS::GVector3getRotate ()

Protected Attributes

const GCS::GElementID ReparentedElement
const GCS::GElementID NewParent
const GCS::GVector3 MoveDistance
const GCS::GVector3 Rotate

Detailed Description

Influence with reparenting information for all affected elements.

Author:
Raphael Langerhorst
Elements that receive such an influence have to update their parent information according to the new parent given by the influence. These influences are sent by the parent of an element if this parent detects that the child has either left this parent or entered another child in terms of position/size. See GReparentAgent for details.

See also:
GReparentAgent


Constructor & Destructor Documentation

GBE::GReparentInfluence::GReparentInfluence const GCS::GElementID source,
const GCS::GEnergy energy,
const GCS::GElementID reparented_element,
const GCS::GElementID new_parent,
const GCS::GVector3 move_distance,
const GCS::GVector3 rotate
 

Constructor.

GBE::GReparentInfluence::~GReparentInfluence  )  [virtual]
 

Virtual destructor.


Member Function Documentation

const GVector3 & GBE::GReparentInfluence::getMoveDistance  ) 
 

Returns:
the relative position change in order to keep the same absolute position.

const GElementID & GBE::GReparentInfluence::getNewParent  ) 
 

Returns:
the ID of the new parent.

const GElementID & GBE::GReparentInfluence::getReparentedElement  ) 
 

Returns:
the ID of the element that receives a new parent.

const GVector3 & GBE::GReparentInfluence::getRotate  ) 
 

Returns:
the relative rotation change in order to keep the same absolute position and rotation.


Member Data Documentation

const GCS::GVector3 GBE::GReparentInfluence::MoveDistance [protected]
 

Positions and rotations are relative to the current parent. The reparented element should stay at the same absolute position, thus it needs to modify its relative position because the parent changed. MoveDistance tells the reparented element how much the relative position changes.

const GCS::GElementID GBE::GReparentInfluence::NewParent [protected]
 

The ID of the new parent.

const GCS::GElementID GBE::GReparentInfluence::ReparentedElement [protected]
 

The element that receives a new parent.

const GCS::GVector3 GBE::GReparentInfluence::Rotate [protected]
 

Positions and rotations are relative to the current parent. The reparented element should stay at the same absolute position and keep it's rotation, thus it needs to modify its relative rotation because the parent changed. Rotate tells the reparented element how much the relative rotation changes.

Note:
The position of the reparented element is also rotated around the new parent.


The documentation for this class was generated from the following files:
Generated on Thu Oct 21 21:18:16 2004 for G System by doxygen 1.3.6