Detailed Description
This class provides an interface to retrieve what new node will
replace an existing one during the local edit process.
An instance of this class is passed in the function
ILockedContainerUpdate::PreReplacement and
ILockedContainerUpdate::PostReplacement.
- See also:
-
ILockedContainerUpdate Here's a possible example of a fake
class that maintains the distance between two nodes that needs to
recalculate this distance during the container update process.
/code class ReplacedNodeExample : public
ILockedContainerUpdate { ... INode *mNode1; //one node INode *mNode2; //another node float
mDistanceBetween; //distance between them that's calculated once
the nodes get set. } void
ReplacedNodeExample::PreReplacement(INode *sourceNode, Animatable *sourceAnim, INode *masterNode, Animatable *masterAnim,
IContainerUpdateReplacedNode *man, MSTR &log) { INode *newNode1 =
man->NewNode(mNode1); if mNode1 is a reference no need to do
mNode1 = newNode1 or SetReference(newNode1)... INode *newNode2 = man->NewNode(mNode2);
calculate new distance between. if(newNode1 && newNode2)
//they may have gotten deleted mDistanceBetween =
Distance(newNode1.GetTrans() - newNode2.GetTrans()); }
/endcode
#include <ILockedContainerUpdate.h>
List of all
members.
Public Member Functions
|
virtual |
~IContainerUpdateReplacedNode () |
|
Deconstructor.
|
virtual
INode * |
NewNode (INode
*masterNode)=0 |
|
This functions returns what node will
replace the master node in the scene during the container update
process.
|
Constructor & Destructor Documentation
Member Function Documentation
virtual INode* NewNode |
( |
INode * |
masterNode |
) |
[pure virtual] |
This functions returns what node will replace the master node in
the scene during the container update process.
- Parameters:
-
[in] |
masterNode |
The node that we are querying to see how it will get
replaced. |
- Returns:
- The node that replaces the master node. If it's the same as the
masterNode parameter then that node isn't replaced, and if returns
NULL the node is deleted, otherwise it will return a different node
than the masterNode parameter.
IContainerUpdateReplacedNode
IContainerUpdateReplacedNode IContainerUpdateReplacedNode
IContainerUpdateReplacedNode IContainerUpdateReplacedNode
IContainerUpdateReplacedNode IContainerUpdateReplacedNode
IContainerUpdateReplacedNode IContainerUpdateReplacedNode
IContainerUpdateReplacedNode
IContainerUpdateReplacedNode
IContainerUpdateReplacedNode IContainerUpdateReplacedNode
IContainerUpdateReplacedNode IContainerUpdateReplacedNode
IContainerUpdateReplacedNode IContainerUpdateReplacedNode
IContainerUpdateReplacedNode IContainerUpdateReplacedNode
IContainerUpdateReplacedNode