AnimChannelMatrixXfmTable

class AnimChannelMatrixXfmTable

Bases: AnimChannel< ACMatrixSwitchType >

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.

Inheritance diagram

Inheritance diagram of AnimChannelMatrixXfmTable

explicit AnimChannelMatrixXfmTable(AnimGroup *parent, std::string const &name)

Used only for bam loader.

Creates a new AnimChannelMatrixXfmTable, just like this one, without copying any children. The new copy is added to the indicated parent. Intended to be called by make_copy() only.

void clear_all_tables(void)

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

void clear_table(char table_id)

Removes the indicated table from the definition.

static TypeHandle get_class_type(void)
CPTA_stdfloat get_table(char table_id) const

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

bool has_table(char table_id) const

Returns true if the indicated subtable has been assigned.

bool is_valid_id(char table_id)

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

void set_table(char table_id, CPTA_stdfloat const &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.