15 #ifndef MOVINGPARTMATRIX_H
16 #define MOVINGPARTMATRIX_H
18 #include "pandabase.h"
20 #include "movingPart.h"
21 #include "animChannel.h"
22 #include "animChannelFixed.h"
37 INLINE MovingPartMatrix(
PartGroup *parent,
const string &name,
39 virtual ~MovingPartMatrix();
42 virtual void get_blend_value(
const PartBundle *root);
48 INLINE MovingPartMatrix();
57 return get_class_type();
59 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
65 static void init_type() {
68 register_type(_type_handle,
"MovingPartMatrix",
76 #include "movingPartMatrix.I"
A basic node of the scene graph or data graph.
This is the base class for all three-component vectors and points.
Base class for objects that can be written to and read from Bam files.
Parent class for all animation channels.
This template class is a special kind of AnimChannel that always returns just one fixed value...
This is a 4-by-4 transform matrix.
virtual bool apply_freeze_matrix(const LVecBase3 &pos, const LVecBase3 &hpr, const LVecBase3 &scale)
Freezes this particular joint so that it will always hold the specified transform.
An instance of this class is passed to the Factory when requesting it to do its business and construc...
virtual bool apply_control(PandaNode *node)
Specifies a node to influence this particular joint so that it will always hold the node's transform...
static void register_with_read_factory()
Factory method to generate a PartGroup object.
This is a particular kind of MovingPart that accepts a matrix each frame.
This is the root of a MovingPart hierarchy.
TypeHandle is the identifier used to differentiate C++ class types.
virtual AnimChannelBase * make_default_channel() const
Creates and returns a new AnimChannel that is not part of any hierarchy, but that returns the default...
This is the base class for PartRoot and MovingPart.