14 #ifndef MAYANODEDESC_H
15 #define MAYANODEDESC_H
25 #include <maya/MDagPath.h>
26 #include <maya/MFnDagNode.h>
43 MayaNodeDesc *parent =
nullptr,
const std::string &name = std::string());
68 void tag_recursively();
69 void untag_recursively();
71 void tag_joint_recursively();
74 void mark_joint_parent();
75 void check_pseudo_joints(
bool joint_above);
76 void check_blend_shapes(
const MFnDagNode &node,
77 const std::string &attrib_name);
96 JointType _joint_type;
99 double _switch_in, _switch_out;
108 static void init_type() {
109 ReferenceCount::init_type();
110 Namable::init_type();
112 ReferenceCount::get_class_type(),
113 Namable::get_class_type());
The main glue of the egg hierarchy, this corresponds to the <Group>, <Instance>, and <Joint> type nod...
This corresponds to an <Xfm$Anim_S$> entry, which is a collection of up to nine <S$Anim> entries that...
A handle to a Maya blend shape description.
Describes a single instance of a node in the Maya scene graph, relating it to the corresponding egg s...
bool is_joint_tagged() const
Returns true if the node has been joint_tagged to be converted, false otherwise.
bool has_object_type(std::string object_type) const
Returns true if this node or any of its parent has_object_type of object_type.
const MDagPath & get_dag_path() const
Returns the dag path associated with this node.
void from_dag_path(const MDagPath &dag_path, MayaToEggConverter *converter)
Indicates an association between the MayaNodeDesc and some Maya instance.
MayaBlendDesc * get_blend_desc(int n) const
Returns the nth MayaBlendDesc object that affects the geometry in this node.
bool is_joint() const
Returns true if the node should be treated as a joint by the converter.
int get_num_blend_descs() const
Returns the number of unique MayaBlendDesc objects (and hence the number of morph sliders) that affec...
bool has_dag_path() const
Returns true if a Maya dag path has been associated with this node, false otherwise.
bool is_joint_parent() const
Returns true if the node is the parent or ancestor of a joint.
bool is_tagged() const
Returns true if the node has been tagged to be converted, false otherwise.
Describes a complete tree of maya nodes for conversion.
This class supervises the construction of an EggData structure from a single Maya file,...
A base class for all things which can have a name.
A base class for all things that want to be reference-counted.
TypeHandle is the identifier used to differentiate C++ class types.
This is our own Panda specialization on the default STL vector.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...