29 for (ci = begin(); ci != end(); ++ci) {
44 write(std::ostream &out,
int indent_level)
const {
45 test_under_integrity();
47 switch (get_table_type()) {
62 indent(out, indent_level) <<
"}\n";
73 if (cmp_nocase_uh(
string,
"table") == 0) {
75 }
else if (cmp_nocase_uh(
string,
"bundle") == 0) {
92 r_transform(
const LMatrix4d &mat,
const LMatrix4d &inv,
93 CoordinateSystem to_cs) {
111 LMatrix4d mat1 = mat;
112 LMatrix4d inv1 = inv;
116 mat1.set_row(3, LVector3d(0.0, 0.0, 0.0));
117 inv1.set_row(3, LVector3d(0.0, 0.0, 0.0));
120 for (ci = begin(); ci != end(); ++ci) {
123 child->r_transform(mat, inv, to_cs);
125 child->r_transform(mat1, inv1, to_cs);
132 EggGroupNode::r_transform(mat, inv, to_cs);
140 std::ostream &operator << (std::ostream &out, EggTable::TableType t) {
142 case EggTable::TT_invalid:
143 return out <<
"invalid table";
144 case EggTable::TT_table:
145 return out <<
"table";
146 case EggTable::TT_bundle:
147 return out <<
"bundle";
150 nassertr(
false, out);
151 return out <<
"(**invalid**)";
static TableType string_table_type(const std::string &string)
Returns the TableType value associated with the given string representation, or TT_invalid if the str...
void write_header(std::ostream &out, int indent_level, const char *egg_keyword) const
Writes the first line of the egg object, e.g.
virtual void write(std::ostream &out, int indent_level) const
Writes the table and all of its children to the indicated output stream in Egg format.
bool has_transform() const
Returns true if the table contains a transform description, false otherwise.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual void write(std::ostream &out, int indent_level) const
Writes the group and all of its children to the indicated output stream in Egg format.
std::ostream & indent(std::ostream &out, int indent_level)
A handy function for doing text formatting.
virtual bool is_anim_matrix() const
Returns true if this node represents a table of animation transformation data, false otherwise.
A base class for things that may be directly added into the egg hierarchy.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
TypeHandle is the identifier used to differentiate C++ class types.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.