Public Types | Public Member Functions

IOrientConstRotation Class Reference

Search for all occurrences

Detailed Description

See also:
Class Control, Class FPMixinInterface.

Description:
This class is available in release 4.0 and later only.

The Orientation Constraint matches the orientation of an object to its target without affecting its position. Multiple weighted targets are supported. This class is an interface to the parameters of this controllers. You can obtain a pointer to the list control interface using; GetIOrientConstInterface(cd). This macro will return (IOrientConstRotation*)(CD)->GetFPInterface(ORIENT_CONSTRAINT_INTERFACE).

ORIENT_ROT_PBLOCK_REF may be used to access the orientation constraint controller's references:

All methods of this class are Implemented by the System.

#include <istdplug.h>

Inheritance diagram for IOrientConstRotation:
Inheritance graph
[legend]

List of all members.

Public Types

enum   {
  get_num_targets, get_node, get_target_weight, set_target_weight,
  append_target, delete_target
}

Public Member Functions

BEGIN_FUNCTION_MAP  FN_0 (get_num_targets, TYPE_INT, GetNumTargets)
  FN_1 (get_node, TYPE_INODE, GetNode, TYPE_INDEX)
  FN_1 (get_target_weight, TYPE_FLOAT, GetTargetWeight, TYPE_INDEX)
  FN_2 (set_target_weight, TYPE_BOOL, SetTargetWeight, TYPE_INDEX, TYPE_FLOAT)
  FN_2 (append_target, TYPE_BOOL, AppendTarget, TYPE_INODE, TYPE_FLOAT)
  FN_1 (delete_target, TYPE_BOOL, DeleteTarget, TYPE_INDEX)
END_FUNCTION_MAP FPInterfaceDesc GetDesc ()
virtual int  GetNumTargets ()=0
virtual INode GetNode (int targetNumber)=0
virtual float  GetTargetWeight (int targetNumber)=0
virtual BOOL  SetTargetWeight (int targetNumber, float weight)=0
virtual BOOL  AppendTarget (INode *target, float weight=50.0)=0
virtual BOOL  DeleteTarget (int selection)=0

Member Enumeration Documentation

anonymous enum

Member Function Documentation

BEGIN_FUNCTION_MAP FN_0 ( get_num_targets  ,
TYPE_INT  ,
GetNumTargets   
)
FN_1 ( get_node  ,
TYPE_INODE  ,
GetNode  ,
TYPE_INDEX   
)
FN_1 ( get_target_weight  ,
TYPE_FLOAT  ,
GetTargetWeight  ,
TYPE_INDEX   
)
FN_2 ( set_target_weight  ,
TYPE_BOOL  ,
SetTargetWeight  ,
TYPE_INDEX  ,
TYPE_FLOAT   
)
FN_2 ( append_target  ,
TYPE_BOOL  ,
AppendTarget  ,
TYPE_INODE  ,
TYPE_FLOAT   
)
FN_1 ( delete_target  ,
TYPE_BOOL  ,
DeleteTarget  ,
TYPE_INDEX   
)
END_FUNCTION_MAP FPInterfaceDesc* GetDesc ( ) [virtual]
Remarks:
Returns a pointer to the class which contains the interface metadata.

Implements FPInterface.

virtual int GetNumTargets ( ) [pure virtual]
Remarks:
Returns the number of target nodes in the orientation target list.
virtual INode* GetNode ( int  targetNumber ) [pure virtual]
Remarks:
Gets one of the orientation nodes that the orientation constraint controller targets, specified by targetNumber.
Parameters:
int targetNumber

The node number in the orientation target list to be obtained.
virtual float GetTargetWeight ( int  targetNumber ) [pure virtual]
Remarks:
Gets the weight of one of the orientation nodes that the orientation constraint controller targets, specified by targetNumber.
Parameters:
int targetNumber

The node number in the orientation target list to set.
Returns:
Returns the orientation target weight if the targetNumber is relevant, 0.0f otherwise.
virtual BOOL SetTargetWeight ( int  targetNumber,
float  weight 
) [pure virtual]
Remarks:
Sets the weight of one of the orientation nodes that the orientation constraint controller follows, specified by targetNumber.
Parameters:
int targetNumber

The node number in the orientation target list whose weight is to be set.

float weight

The weight to set.
Returns:
TRUE if there is more than one orientation target in the list and you are trying to set weight, FALSE otherwise.
virtual BOOL AppendTarget ( INode target,
float  weight = 50.0 
) [pure virtual]
Remarks:
Appends the current orientation target list by one and appends the current orient_targ_wtlist (orientation target weightlist) by one.
Parameters:
INode *target

The node that is to be appended to the current orientation target list.

float weight=50.0

This is the weight that is to be assigned to the newly appended orientation target. The default weight is 50.0.
Returns:
TRUE if the target was appended, otherwise FALSE.
virtual BOOL DeleteTarget ( int  selection ) [pure virtual]
Remarks:
This method allows you to delete a specified target.
Parameters:
int selection

The node number in the orientation target list to delete.
Returns:
TRUE if successful, otherwise FALSE.

IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation
IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation IOrientConstRotation