Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

GeomNode Class Reference

#include <geomNode.h>

Inheritance diagram for GeomNode:

PandaNode TypedWritable Namable BoundedObject ReferenceCount TypedObject List of all members.

Public Member Functions

virtual ~GeomNode ()
virtual PandaNodemake_copy () const
virtual void apply_attribs_to_vertices (const AccumulatedAttribs &attribs, int attrib_types, GeomTransformer &transformer)
virtual void xform (const LMatrix4f &mat)
virtual PandaNodecombine_with (PandaNode *other)
virtual CPT (TransformState) calc_tight_bounds(LPoint3f &min_point
INLINE Geomget_geom (int n) const
INLINE const RenderStateget_geom_state (int n) const
INLINE void set_geom_state (int n, const RenderState *state)
INLINE int add_geom (Geom *geom, const RenderState *state=RenderState::make_empty())
void add_geoms_from (const GeomNode *other)
INLINE void remove_geom (int n)
INLINE void remove_all_geoms ()
void write_geoms (ostream &out, int indent_level) const
void write_verbose (ostream &out, int indent_level) const
virtual void output (ostream &out) const
virtual bool is_geom_node () const
virtual void write_datagram (BamWriter *manager, Datagram &dg)
virtual TypeHandle get_type () const
virtual TypeHandle force_init_type ()

Static Public Member Functions

void register_with_read_factory ()
TypeHandle get_class_type ()
void init_type ()

Public Attributes

virtual LPoint3f & max_point
virtual LPoint3f bool & found_any
virtual LPoint3f bool const
TransformState *transform 
const
PUBLISHED __pad1__: INLINE int get_num_geoms() const

Protected Member Functions

 GeomNode (const GeomNode &copy)
virtual BoundingVolumerecompute_internal_bound ()
void fillin (DatagramIterator &scan, BamReader *manager)

Static Protected Member Functions

TypedWritablemake_from_bam (const FactoryParams &params)

Private Types

typedef pvector< GeomEntryGeoms
typedef CycleDataReader< CDataCDReader
typedef CycleDataWriter< CDataCDWriter

Private Attributes

PUBLISHED __pad0__: GeomNode(const string &name)
PipelineCycler< CData_cycler

Static Private Attributes

TypeHandle _type_handle

Friends

class PandaNode::Children
class GeomTransformer

Member Typedef Documentation

typedef CycleDataReader<CData> GeomNode::CDReader [private]
 

Reimplemented from PandaNode.

Definition at line 102 of file geomNode.h.

typedef CycleDataWriter<CData> GeomNode::CDWriter [private]
 

Reimplemented from PandaNode.

Definition at line 103 of file geomNode.h.

typedef pvector<GeomEntry> GeomNode::Geoms [private]
 

Definition at line 86 of file geomNode.h.


Constructor & Destructor Documentation

GeomNode::GeomNode const GeomNode &  copy  )  [protected]
 

Definition at line 130 of file geomNode.cxx.

References _cycler.

Referenced by make_copy(), and make_from_bam().

GeomNode::~GeomNode  )  [virtual]
 

Definition at line 142 of file geomNode.cxx.


Member Function Documentation

INLINE int GeomNode::add_geom Geom geom,
const RenderState state = RenderState::make_empty()
 

Referenced by TextNode::assemble_row(), LineSegs::create(), event_T(), Spotlight::fill_viz_geom(), SpriteParticleRenderer::init_geoms(), SparkleParticleRenderer::init_geoms(), PointParticleRenderer::init_geoms(), LineParticleRenderer::init_geoms(), WindowFramework::load_default_model(), Character::r_copy_char(), setup_projtex(), setup_spotlight(), shader_keys(), and TextNode::tack_on_accent().

void GeomNode::add_geoms_from const GeomNode *  other  ) 
 

Definition at line 321 of file geomNode.cxx.

References _cycler, and BoundedObject::mark_bound_stale().

Referenced by combine_with().

void GeomNode::apply_attribs_to_vertices const AccumulatedAttribs attribs,
int  attrib_types,
GeomTransformer transformer
[virtual]
 

Reimplemented from PandaNode.

Definition at line 172 of file geomNode.cxx.

References GeomTransformer::apply_state(), DCAST, ColorAttrib::get_color(), ColorAttrib::get_color_type(), TexMatrixAttrib::get_mat(), ColorScaleAttrib::get_scale(), NULL, GeomTransformer::set_color(), ColorAttrib::T_flat, GeomTransformer::transform_colors(), GeomTransformer::transform_texcoords(), GeomTransformer::transform_vertices(), SceneGraphReducer::TT_color, SceneGraphReducer::TT_color_scale, SceneGraphReducer::TT_other, SceneGraphReducer::TT_tex_matrix, and SceneGraphReducer::TT_transform.

PandaNode * GeomNode::combine_with PandaNode other  )  [virtual]
 

Reimplemented from PandaNode.

Definition at line 249 of file geomNode.cxx.

References add_geoms_from(), PandaNode::combine_with(), DCAST, get_class_type(), and TypedObject::is_exact_type().

virtual GeomNode::CPT TransformState   )  [virtual]
 

Reimplemented from PandaNode.

void GeomNode::fillin DatagramIterator scan,
BamReader manager
[protected]
 

Reimplemented from PandaNode.

Definition at line 482 of file geomNode.cxx.

References _cycler, PandaNode::fillin(), and BamReader::read_cdata().

Referenced by make_from_bam().

virtual TypeHandle GeomNode::force_init_type void   )  [inline, virtual]
 

Reimplemented from PandaNode.

Definition at line 125 of file geomNode.h.

TypeHandle GeomNode::get_class_type void   )  [inline, static]
 

Reimplemented from PandaNode.

Definition at line 114 of file geomNode.h.

Referenced by Builder::build(), combine_with(), EggLoader::make_node(), ReportGeoms::reached_node(), register_with_read_factory(), and EggLoader::reparent_decals().

INLINE Geom* GeomNode::get_geom int  n  )  const
 

Referenced by SceneGraphAnalyzer::collect_statistics(), CollisionTraverser::compare_collider_to_geom_node(), GraphicsStateGuardian::draw_geom_node(), GLGraphicsStateGuardian::draw_geom_node(), CRGraphicsStateGuardian::draw_geom_node(), StaticTextFont::find_character_gsets(), GLGraphicsStateGuardian::prepare_geom_node(), CRGraphicsStateGuardian::prepare_geom_node(), DXGraphicsStateGuardian7::prepare_texture(), Character::r_copy_char(), NodePath::r_force_recompute_bounds(), ReportGeoms::reached_node(), ProjectionScreen::recompute_geom_node(), and SpriteParticleRenderer::set_from_node().

INLINE const RenderState* GeomNode::get_geom_state int  n  )  const
 

Referenced by SceneGraphAnalyzer::collect_statistics(), StaticTextFont::find_character_gsets(), NodePath::r_adjust_all_priorities(), Character::r_copy_char(), NodePath::r_find_all_textures(), NodePath::r_find_texture(), and NodePath::r_prepare_scene().

virtual TypeHandle GeomNode::get_type void   )  const [inline, virtual]
 

Reimplemented from PandaNode.

Definition at line 122 of file geomNode.h.

void GeomNode::init_type void   )  [inline, static]
 

Reimplemented from PandaNode.

Definition at line 117 of file geomNode.h.

References PandaNode::get_class_type(), PandaNode::init_type(), and register_type().

Referenced by init_libpgraph().

bool GeomNode::is_geom_node  )  const [virtual]
 

Reimplemented from PandaNode.

Definition at line 395 of file geomNode.cxx.

PandaNode * GeomNode::make_copy  )  const [virtual]
 

Reimplemented from PandaNode.

Definition at line 155 of file geomNode.cxx.

References GeomNode().

TypedWritable * GeomNode::make_from_bam const FactoryParams params  )  [static, protected]
 

Reimplemented from PandaNode.

Definition at line 463 of file geomNode.cxx.

References fillin(), GeomNode(), params, and parse_params().

Referenced by register_with_read_factory().

void GeomNode::output ostream &  out  )  const [virtual]
 

Reimplemented from PandaNode.

Definition at line 378 of file geomNode.cxx.

References PandaNode::output().

BoundingVolume * GeomNode::recompute_internal_bound  )  [protected, virtual]
 

Reimplemented from PandaNode.

Definition at line 408 of file geomNode.cxx.

References _cycler, BoundingVolume::around(), NULL, and PandaNode::recompute_internal_bound().

void GeomNode::register_with_read_factory  )  [static]
 

Reimplemented from PandaNode.

Definition at line 438 of file geomNode.cxx.

References get_class_type(), BamReader::get_factory(), make_from_bam(), and Factory< TypedWritable >::register_factory().

Referenced by init_libpgraph().

INLINE void GeomNode::remove_all_geoms  ) 
 

Referenced by SpriteParticleRenderer::init_geoms(), SparkleParticleRenderer::init_geoms(), PointParticleRenderer::init_geoms(), LineParticleRenderer::init_geoms(), and Character::r_copy_char().

INLINE void GeomNode::remove_geom int  n  ) 
 

INLINE void GeomNode::set_geom_state int  n,
const RenderState state
 

Referenced by NodePath::r_adjust_all_priorities().

void GeomNode::write_datagram BamWriter manager,
Datagram dg
[virtual]
 

Reimplemented from PandaNode.

Definition at line 449 of file geomNode.cxx.

References _cycler, BamWriter::write_cdata(), and PandaNode::write_datagram().

void GeomNode::write_geoms ostream &  out,
int  indent_level
const
 

Definition at line 342 of file geomNode.cxx.

References _cycler, indent(), and PandaNode::write().

void GeomNode::write_verbose ostream &  out,
int  indent_level
const
 

Definition at line 360 of file geomNode.cxx.

References _cycler, indent(), and PandaNode::write().

void GeomNode::xform const LMatrix4f &  mat  )  [virtual]
 

Reimplemented from PandaNode.

Definition at line 228 of file geomNode.cxx.

References GeomTransformer::transform_vertices().


Friends And Related Function Documentation

friend class GeomTransformer [friend]
 

Definition at line 131 of file geomNode.h.

friend class PandaNode::Children [friend]
 

Reimplemented from PandaNode.

Definition at line 130 of file geomNode.h.


Member Data Documentation

PUBLISHED GeomNode::__pad0__ [private]
 

Reimplemented from PandaNode.

Definition at line 40 of file geomNode.h.

PUBLISHED GeomNode::__pad1__
 

Reimplemented from PandaNode.

Definition at line 58 of file geomNode.h.

PipelineCycler<CData> GeomNode::_cycler [private]
 

Reimplemented from PandaNode.

Definition at line 101 of file geomNode.h.

Referenced by add_geoms_from(), GeomTransformer::apply_state(), fillin(), GeomNode(), recompute_internal_bound(), GeomTransformer::set_color(), GeomTransformer::transform_colors(), GeomTransformer::transform_texcoords(), GeomTransformer::transform_vertices(), write_datagram(), write_geoms(), and write_verbose().

TypeHandle GeomNode::_type_handle [static, private]
 

Reimplemented from PandaNode.

Definition at line 29 of file geomNode.cxx.

virtual LPoint3f bool const TransformState* transform GeomNode::const
 

Reimplemented from PandaNode.

Definition at line 53 of file geomNode.h.

virtual LPoint3f bool& GeomNode::found_any
 

Reimplemented from PandaNode.

Definition at line 53 of file geomNode.h.

virtual LPoint3f& GeomNode::max_point
 

Reimplemented from PandaNode.

Definition at line 53 of file geomNode.h.


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 00:12:21 2003 for Panda by doxygen1.3