Describes a complete tree of max nodes for conversion. More...
#include "maxNodeTree.h"
Public Member Functions | |
bool | build_complete_hierarchy (INode *root, ULONG *selection_list, int len) |
Walks through the complete Max hierarchy and builds up the corresponding tree. More... | |
MaxNodeDesc * | build_joint (INode *max_node, MaxNodeDesc *node_joint) |
Returns a pointer to the node corresponding to the indicated INode object, creating it first if necessary. More... | |
MaxNodeDesc * | build_node (INode *max_node) |
Returns a pointer to the node corresponding to the indicated INode object, creating it first if necessary. More... | |
void | clear_egg (EggData *egg_data, EggGroupNode *egg_root, EggGroupNode *skeleton_node) |
Removes all of the references to generated egg structures from the tree, and prepares the tree for generating new egg structures. More... | |
MaxNodeDesc * | find_joint (INode *max_node) |
The recursive implementation of build_node(). More... | |
MaxNodeDesc * | find_node (INode *max_node) |
The recursive implementation of build_node(). More... | |
EggXfmSAnim * | get_egg_anim (MaxNodeDesc *node_desc) |
Returns the anim table corresponding to the joint for the indicated node. More... | |
EggGroup * | get_egg_group (MaxNodeDesc *node_desc) |
Returns the EggGroupNode corresponding to the group or joint for the indicated node. More... | |
EggTable * | get_egg_table (MaxNodeDesc *node_desc) |
Returns the EggTable corresponding to the joint for the indicated node. More... | |
MaxNodeDesc * | get_node (int n) const |
Returns the nth node in the hierarchy, in an arbitrary ordering. More... | |
int | get_num_nodes () const |
Returns the total number of nodes in the hierarchy, not counting the root node. More... | |
Public Attributes | |
bool | _export_mesh |
PN_stdfloat | _fps |
MaxNodeDesc * | _root |
Describes a complete tree of max nodes for conversion.
Definition at line 23 of file maxNodeTree.h.
bool MaxNodeTree::build_complete_hierarchy | ( | INode * | root, |
ULONG * | selection_list, | ||
int | len | ||
) |
Walks through the complete Max hierarchy and builds up the corresponding tree.
Definition at line 88 of file maxNodeTree.cxx.
MaxNodeDesc * MaxNodeTree::build_joint | ( | INode * | max_node, |
MaxNodeDesc * | node_joint | ||
) |
Returns a pointer to the node corresponding to the indicated INode object, creating it first if necessary.
Definition at line 49 of file maxNodeTree.cxx.
References MaxNodeDesc::from_INode().
Referenced by build_node().
MaxNodeDesc * MaxNodeTree::build_node | ( | INode * | max_node | ) |
Returns a pointer to the node corresponding to the indicated INode object, creating it first if necessary.
Definition at line 34 of file maxNodeTree.cxx.
References build_joint(), MaxNodeDesc::from_INode(), and MaxNodeDesc::is_node_joint().
Referenced by find_joint().
void MaxNodeTree::clear_egg | ( | EggData * | egg_data, |
EggGroupNode * | egg_root, | ||
EggGroupNode * | skeleton_node | ||
) |
Removes all of the references to generated egg structures from the tree, and prepares the tree for generating new egg structures.
Definition at line 129 of file maxNodeTree.cxx.
MaxNodeDesc * MaxNodeTree::find_joint | ( | INode * | max_node | ) |
The recursive implementation of build_node().
Definition at line 319 of file maxNodeTree.cxx.
References build_node(), find_node(), and MaxNodeDesc::is_node_joint().
MaxNodeDesc * MaxNodeTree::find_node | ( | INode * | max_node | ) |
The recursive implementation of build_node().
Definition at line 297 of file maxNodeTree.cxx.
Referenced by find_joint().
EggXfmSAnim * MaxNodeTree::get_egg_anim | ( | MaxNodeDesc * | node_desc | ) |
Returns the anim table corresponding to the joint for the indicated node.
Creates the table node if it has not already been created.
Definition at line 223 of file maxNodeTree.cxx.
References get_egg_table().
EggGroup * MaxNodeTree::get_egg_group | ( | MaxNodeDesc * | node_desc | ) |
Returns the EggGroupNode corresponding to the group or joint for the indicated node.
Creates the group node if it has not already been created.
Definition at line 142 of file maxNodeTree.cxx.
EggTable * MaxNodeTree::get_egg_table | ( | MaxNodeDesc * | node_desc | ) |
Returns the EggTable corresponding to the joint for the indicated node.
Creates the table node if it has not already been created.
Definition at line 188 of file maxNodeTree.cxx.
Referenced by get_egg_anim().
MaxNodeDesc * MaxNodeTree::get_node | ( | int | n | ) | const |
Returns the nth node in the hierarchy, in an arbitrary ordering.
Definition at line 119 of file maxNodeTree.cxx.
int MaxNodeTree::get_num_nodes | ( | ) | const |
Returns the total number of nodes in the hierarchy, not counting the root node.
Definition at line 111 of file maxNodeTree.cxx.