Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

PropertyJoint Class Reference

Joint that controls an in-engine variable. More...

#include <joint.h>

Inheritance diagram for PropertyJoint::

Joint ParticleJoint List of all members.

Public Methods

 PropertyJoint (void)
 PropertyJoint (PuppetProperty aP, VECTOR_TYPE vBegin, VECTOR_TYPE vEnd, string &n, VECTOR_TYPE sup, HANDLE_TYPE pH)
 ~PropertyJoint (void)
 PropertyJoint destructor. More...

void Init (PuppetProperty aP, VECTOR_TYPE vBegin, VECTOR_TYPE vEnd, string &n, VECTOR_TYPE sup)
uint16 JointType (void)
 Returns id of PropertyJoint. More...

void Modify (JointPart part, float mVal)
 Assigns new value to abstract joint part. More...

void Modify (JointPart part, string &mVal)
void Modify (JointPart part, uint16 mVal)
void Modify (JointPart part, VECTOR_TYPE mVal)
void SetValue (float newValue)
 Sets the value of the property. More...


Protected Attributes

PuppetProperty affectedProperty
 The property the joint affects. More...

HANDLE_TYPE puppetHandle
 Handle of affected object. More...

VECTOR_TYPE value
 Current property value. More...

VECTOR_TYPE valueBeginRange
 One end of the range value can take.

VECTOR_TYPE valueEndRange
 The other end of the range value can take.


Detailed Description

Joint that controls an in-engine variable.

PropertyJoint is the joint used to control a propety of an object within the LithTech system A Node's position and scale, a light's color and radius, a particle system's size...all of these are LithTech properties. The possible properties one can affect are listed in the definition of the enum PuppetProperty.


Constructor & Destructor Documentation

PropertyJoint::~PropertyJoint void   
 

PropertyJoint destructor.

No memory needs to be explicitly de-allocated, so nothing happens here just yet.


Member Function Documentation

uint16 PropertyJoint::JointType void    [virtual]
 

Returns id of PropertyJoint.

Returns:
an integer reporting the joint type.
For PropertyJoint, the JointType function returns PROPERTYJOINT_NUM.

Reimplemented from Joint.

Reimplemented in ParticleJoint.

void PropertyJoint::Modify JointPart    part,
VECTOR_TYPE    mVal
[virtual]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters:
part  a JointPart
mVal  a VECTOR_TYPE

Reimplemented from Joint.

void PropertyJoint::Modify JointPart    part,
uint16    mVal
[virtual]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters:
part  a JointPart
mVal  a uint16

Reimplemented from Joint.

void PropertyJoint::Modify JointPart    part,
string &    mVal
[virtual]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Parameters:
part  a JointPart
mVal  a string

Reimplemented from Joint.

void PropertyJoint::Modify JointPart    part,
float    mVal
[virtual]
 

Assigns new value to abstract joint part.

Parameters:
part  a JointPart
mVal  a float
Modify takes in a part code and a new value, and modfies the indicates area of the joint in accordance with the new value. Use the JointPart enum to determine your choices ...any type submitted as mVal should be fine (b/c of the overloading)

Reimplemented from Joint.

void PropertyJoint::SetValue float    newValue [virtual]
 

Sets the value of the property.

Parameters:
newValue  a float between -100 and 100, inclusive.
In SetValue, newValue is used to determine where in the range between the two vectors valueBeginRange and valueEndRange value is placed. The interpolation between the two is simply linear at this point, though the interpolation style might be a useful thing to control in future versions.

Reimplemented from Joint.

Reimplemented in ParticleJoint.


Member Data Documentation

PuppetProperty PropertyJoint::affectedProperty [protected]
 

The property the joint affects.

Enum that determines the game-engine property that this joint affects...the actual effect should be apparant from the property's name.

HANDLE_TYPE PropertyJoint::puppetHandle [protected]
 

Handle of affected object.

Handle to the game-object (myHandle in the puppet) for property-changing codes.

VECTOR_TYPE PropertyJoint::value [protected]
 

Current property value.

The current representaiton of the joint value in vector form...a scalar property simply occupies the first slot of the vector. Perhaps generalizing the value (to include strings, or non-vector ranges) would be a valuable future step.


The documentation for this class was generated from the following file:
Generated on Tue Oct 16 13:42:10 2001 for The Stage by doxygen1.2.11 written by Dimitri van Heesch, © 1997-2001