Panda3D
Public Member Functions | Static Public Member Functions | List of all members
AnimChannelMatrixXfmTable Class Reference

An animation channel that issues a matrix each frame, read from a table such as might have been read from an egg file. The table actually consists of nine sub-tables, each representing one component of the transform: scale, rotate, translate. More...

Inheritance diagram for AnimChannelMatrixXfmTable:
AnimChannelACMatrixSwitchType AnimChannelBase AnimGroup TypedWritableReferenceCount Namable TypedWritable ReferenceCount MemoryBase TypedObject MemoryBase MemoryBase

Public Member Functions

 __init__ (AnimGroup parent, str name)
 
 clearAllTables ()
 Removes all the tables from the channel, and resets it to its initial state. More...
 
 clearTable (char table_id)
 Removes the indicated table from the definition. More...
 
CPTAStdfloat getTable (char table_id)
 Returns a pointer to the indicated subtable's data, if it exists, or NULL if it does not. More...
 
bool hasTable (char table_id)
 Returns true if the indicated subtable has been assigned. More...
 
 setTable (char table_id, const CPTAStdfloat table)
 Assigns the indicated table. table_id is one of 'i', 'j', 'k', for scale, 'a', 'b', 'c' for shear, 'h', 'p', 'r', for rotation, and 'x', 'y', 'z', for translation. The new table must have either zero, one, or get_num_frames() frames. More...
 
- Public Member Functions inherited from AnimChannelACMatrixSwitchType
 getHpr (int frame, LVecBase3 hpr)
 
 getPos (int frame, LVecBase3 pos)
 
 getQuat (int frame, LQuaternion quat)
 
 getScale (int frame, LVecBase3 scale)
 
 getShear (int frame, LVecBase3 shear)
 
 getValue (int frame, LMatrix4 value)
 
 getValueNoScaleShear (int frame, LMatrix4 value)
 These transform-component methods only have meaning for matrix types. More...
 
TypeHandle getValueType ()
 
- Public Member Functions inherited from AnimChannelBase
TypeHandle getType ()
 
- Public Member Functions inherited from AnimGroup
 __init__ (AnimGroup parent, str name)
 Creates the AnimGroup, and adds it to the indicated parent. The only way to delete it subsequently is to delete the entire hierarchy. More...
 
AnimGroup findChild (str name)
 Returns the first descendant found with the indicated name, or NULL if no such descendant exists. This method searches the entire graph beginning at this AnimGroup; see also get_child_named(). More...
 
AnimGroup getChild (int n)
 Returns the nth child of the group. More...
 
AnimGroup getChildNamed (str name)
 Returns the first child found with the indicated name, or NULL if no such child exists. This method searches only the children of this particular AnimGroup; it does not recursively search the entire graph. See also find_child(). More...
 
list getChildren ()
 
int getNumChildren ()
 Returns the number of child nodes of the group. More...
 
 output (Ostream out)
 Writes a one-line description of the group. More...
 
 sortDescendants ()
 Sorts the children nodes at each level of the hierarchy into alphabetical order. This should be done after creating the hierarchy, to guarantee that the correct names will match up together when the AnimBundle is later bound to a PlayerRoot. More...
 
 write (Ostream out, int indent_level)
 Writes a brief description of the group and all of its descendants. More...
 
- Public Member Functions inherited from TypedWritable
object __reduce__ ()
 
object __reduce_persist__ (object pickler)
 
str encodeToBamStream ()
 Converts the TypedWritable object into a single stream of data using a BamWriter, and returns that data as a string string. Returns empty string on failure. More...
 
bool encodeToBamStream (String data, BamWriter writer)
 Converts the TypedWritable object into a single stream of data using a BamWriter, and stores that data in the indicated string. Returns true on success, false on failure. More...
 
UpdateSeq getBamModified ()
 Returns the current bam_modified counter. This counter is normally incremented automatically whenever the object is modified. More...
 
 markBamModified ()
 Increments the bam_modified counter, so that this object will be invalidated and retransmitted on any open bam streams. This should normally not need to be called by user code; it should be called internally when the object has been changed in a way that legitimately requires its retransmission to any connected clients. More...
 
- Public Member Functions inherited from TypedObject
TypeHandle getType ()
 Derived classes should override this function to return get_class_type(). More...
 
int getTypeIndex ()
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. This is equivalent to get_type().get_index(). More...
 
bool isExactType (TypeHandle handle)
 Returns true if the current object is the indicated type exactly. More...
 
bool isOfType (TypeHandle handle)
 Returns true if the current object is or derives from the indicated type. More...
 
- Public Member Functions inherited from ReferenceCount
int getRefCount ()
 Returns the current reference count. More...
 
 ref ()
 Explicitly increments the reference count. User code should avoid using ref() and unref() directly, which can result in missed reference counts. Instead, let a PointerTo object manage the reference counting automatically. More...
 
bool testRefCountIntegrity ()
 Does some easy checks to make sure that the reference count isn't completely bogus. Returns true if ok, false otherwise. More...
 
bool testRefCountNonzero ()
 Does some easy checks to make sure that the reference count isn't zero, or completely bogus. Returns true if ok, false otherwise. More...
 
bool unref ()
 Explicitly decrements the reference count. Note that the object will not be implicitly deleted by unref() simply because the reference count drops to zero. (Having a member function delete itself is problematic.) However, see the helper function unref_delete(). More...
 
- Public Member Functions inherited from Namable
 __init__ (const Namable copy)
 
 __init__ (str initial_name)
 
 clearName ()
 Resets the Namable's name to empty. More...
 
str getName ()
 
bool hasName ()
 Returns true if the Namable has a nonempty name set, false if the name is empty. More...
 
Namable operator= (const Namable other)
 
 output (Ostream out)
 Outputs the Namable. This function simply writes the name to the output stream; most Namable derivatives will probably redefine this. More...
 
 setName (str name)
 

Static Public Member Functions

static TypeHandle getClassType ()
 
static bool isValidId (char table_id)
 Returns true if the given letter is one of the nine valid table id's. More...
 
- Static Public Member Functions inherited from AnimChannelACMatrixSwitchType
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from AnimChannelBase
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from AnimGroup
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedWritableReferenceCount
static TypedWritableReferenceCount decodeFromBamStream (str data, BamReader reader)
 Reads the string created by a previous call to encode_to_bam_stream(), and extracts and returns the single object on that string. Returns NULL on error. More...
 
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedWritable
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedObject
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from ReferenceCount
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from Namable
static TypeHandle getClassType ()
 

Additional Inherited Members

- Public Types inherited from AnimChannelACMatrixSwitchType
typedef LMatrix4f LMatrix4
 

Detailed Description

An animation channel that issues a matrix each frame, read from a table such as might have been read from an egg file. The table actually consists of nine sub-tables, each representing one component of the transform: scale, rotate, translate.

Member Function Documentation

◆ __init__()

__init__ ( AnimGroup  parent,
str  name 
)

◆ clearAllTables()

clearAllTables ( )

Removes all the tables from the channel, and resets it to its initial state.

◆ clearTable()

clearTable ( char  table_id)

Removes the indicated table from the definition.

◆ getClassType()

static TypeHandle getClassType ( )
static

◆ getTable()

CPTAStdfloat getTable ( char  table_id)

Returns a pointer to the indicated subtable's data, if it exists, or NULL if it does not.

◆ hasTable()

bool hasTable ( char  table_id)

Returns true if the indicated subtable has been assigned.

◆ isValidId()

static bool isValidId ( char  table_id)
static

Returns true if the given letter is one of the nine valid table id's.

◆ setTable()

setTable ( char  table_id,
const CPTAStdfloat  table 
)

Assigns the indicated table. table_id is one of 'i', 'j', 'k', for scale, 'a', 'b', 'c' for shear, 'h', 'p', 'r', for rotation, and 'x', 'y', 'z', for translation. The new table must have either zero, one, or get_num_frames() frames.