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

RopeNode Class Reference

#include <ropeNode.h>

Inheritance diagram for RopeNode:

PandaNode TypedWritable Namable BoundedObject ReferenceCount TypedObject List of all members.

Public Types

enum  UVMode { UV_none, UV_parametric, UV_distance, UV_distance2 }

Public Member Functions

virtual void output (ostream &out) const
virtual void write (ostream &out, int indent_level=0) const
virtual PandaNodemake_copy () const
virtual bool safe_to_transform () const
virtual bool has_cull_callback () const
virtual bool cull_callback (CullTraverser *trav, CullTraverserData &data)
INLINE void set_curve (NurbsCurveEvaluator *curve)
INLINE NurbsCurveEvaluatorget_curve () const
INLINE void set_render_mode (RenderMode render_mode)
INLINE RenderMode get_render_mode () const
INLINE void set_uv_mode (UVMode uv_mode)
INLINE UVMode get_uv_mode () const
INLINE void set_uv_scale (const LVecBase2f &uv_scale)
INLINE const LVecBase2f & get_uv_scale () const
INLINE void set_num_segs (int num_segs)
INLINE int get_num_segs () const
INLINE void set_thickness (float thickness)
INLINE float get_thickness () const
void reset_bound (const NodePath &rel_to)
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

PUBLISHED __pad1__: enum RenderMode { RM_thread
PUBLISHED RM_billboard

Protected Member Functions

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

Static Protected Member Functions

TypedWritablemake_from_bam (const FactoryParams &params)

Private Types

typedef CycleDataReader< CDataCDReader
typedef CycleDataWriter< CDataCDWriter

Private Member Functions

BoundingVolumedo_recompute_bound (const NodePath &rel_to)
void render_thread (CullTraverser *trav, CullTraverserData &data, NurbsCurveResult *result)
void render_billboard (CullTraverser *trav, CullTraverserData &data, NurbsCurveResult *result)

Private Attributes

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

Static Private Attributes

TypeHandle _type_handle

Member Typedef Documentation

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

Reimplemented from PandaNode.

Definition at line 135 of file ropeNode.h.

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

Reimplemented from PandaNode.

Definition at line 136 of file ropeNode.h.


Member Enumeration Documentation

enum RopeNode::UVMode
 

Enumeration values:
UV_none 
UV_parametric 
UV_distance 
UV_distance2 

Definition at line 65 of file ropeNode.h.

Referenced by render_billboard(), and render_thread().


Constructor & Destructor Documentation

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

Definition at line 86 of file ropeNode.cxx.

References _cycler.

Referenced by make_copy(), and make_from_bam().


Member Function Documentation

bool RopeNode::cull_callback CullTraverser trav,
CullTraverserData data
[virtual]
 

Reimplemented from PandaNode.

Definition at line 152 of file ropeNode.cxx.

References data, get_curve(), get_num_segs(), get_render_mode(), PandaNode::PT(), render_billboard(), render_thread(), and RM_billboard.

BoundingVolume * RopeNode::do_recompute_bound const NodePath rel_to  )  [private]
 

Definition at line 229 of file ropeNode.cxx.

References GeometricBoundingVolume::around(), DCAST_INTO_R, get_curve(), NurbsCurveEvaluator::get_vertices(), NULL, and PandaNode::recompute_internal_bound().

Referenced by recompute_internal_bound(), and reset_bound().

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

Reimplemented from PandaNode.

Definition at line 527 of file ropeNode.cxx.

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

Referenced by make_from_bam().

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

Reimplemented from PandaNode.

Definition at line 158 of file ropeNode.h.

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

Reimplemented from PandaNode.

Definition at line 147 of file ropeNode.h.

Referenced by register_with_read_factory().

INLINE NurbsCurveEvaluator* RopeNode::get_curve  )  const
 

Referenced by cull_callback(), do_recompute_bound(), output(), and write().

INLINE int RopeNode::get_num_segs  )  const
 

Referenced by cull_callback(), render_billboard(), and render_thread().

INLINE RenderMode RopeNode::get_render_mode  )  const
 

Referenced by cull_callback().

INLINE float RopeNode::get_thickness  )  const
 

Referenced by render_billboard(), and render_thread().

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

Reimplemented from PandaNode.

Definition at line 155 of file ropeNode.h.

INLINE UVMode RopeNode::get_uv_mode  )  const
 

Referenced by render_billboard(), and render_thread().

INLINE const LVecBase2f& RopeNode::get_uv_scale  )  const
 

Referenced by render_billboard(), and render_thread().

bool RopeNode::has_cull_callback  )  const [virtual]
 

Reimplemented from PandaNode.

Definition at line 128 of file ropeNode.cxx.

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

Reimplemented from PandaNode.

Definition at line 150 of file ropeNode.h.

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

Referenced by ConfigureFn().

PandaNode * RopeNode::make_copy  )  const [virtual]
 

Reimplemented from PandaNode.

Definition at line 101 of file ropeNode.cxx.

References RopeNode().

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

Reimplemented from PandaNode.

Definition at line 508 of file ropeNode.cxx.

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

Referenced by register_with_read_factory().

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

Reimplemented from PandaNode.

Definition at line 180 of file ropeNode.cxx.

References get_curve(), and PandaNode::output().

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

Reimplemented from PandaNode.

Definition at line 219 of file ropeNode.cxx.

References do_recompute_bound(), and PandaNode::NodePath.

void RopeNode::register_with_read_factory  )  [static]
 

Reimplemented from PandaNode.

Definition at line 483 of file ropeNode.cxx.

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

Referenced by ConfigureFn().

void RopeNode::render_billboard CullTraverser trav,
CullTraverserData data,
NurbsCurveResult result
[private]
 

Definition at line 340 of file ropeNode.cxx.

References Colorf, PandaNode::CPT(), data, NurbsCurveResult::eval_segment_point(), G_OVERALL, G_PER_VERTEX, CullTraverser::get_camera_transform(), CullTraverser::get_cull_handler(), NurbsCurveResult::get_num_segments(), get_num_segs(), NurbsCurveResult::get_segment_t(), get_thickness(), get_uv_mode(), get_uv_scale(), length, PandaNode::PT(), PointerToArray< Colorf >::push_back(), PointerToArray< int >::push_back(), PointerToArray< TexCoordf >::push_back(), PointerToArray< Vertexf >::push_back(), CullHandler::record_object(), t, TexCoordf, UV_distance, UV_distance2, UV_none, UV_parametric, UVMode, and Vertexf.

Referenced by cull_callback().

void RopeNode::render_thread CullTraverser trav,
CullTraverserData data,
NurbsCurveResult result
[private]
 

Definition at line 260 of file ropeNode.cxx.

References Colorf, data, NurbsCurveResult::eval_segment_point(), G_OVERALL, G_PER_VERTEX, CullTraverser::get_cull_handler(), NurbsCurveResult::get_num_segments(), get_num_segs(), NurbsCurveResult::get_segment_t(), get_thickness(), get_uv_mode(), get_uv_scale(), PandaNode::PT(), PointerToArray< Colorf >::push_back(), PointerToArray< int >::push_back(), PointerToArray< TexCoordf >::push_back(), PointerToArray< Vertexf >::push_back(), CullHandler::record_object(), t, TexCoordf, UV_distance, UV_distance2, UV_none, UV_parametric, and UVMode.

Referenced by cull_callback().

void RopeNode::reset_bound const NodePath rel_to  ) 
 

Definition at line 205 of file ropeNode.cxx.

References PandaNode::changed_internal_bound(), and do_recompute_bound().

bool RopeNode::safe_to_transform  )  const [virtual]
 

Reimplemented from PandaNode.

Definition at line 114 of file ropeNode.cxx.

INLINE void RopeNode::set_curve NurbsCurveEvaluator curve  ) 
 

INLINE void RopeNode::set_num_segs int  num_segs  ) 
 

INLINE void RopeNode::set_render_mode RenderMode  render_mode  ) 
 

INLINE void RopeNode::set_thickness float  thickness  ) 
 

INLINE void RopeNode::set_uv_mode UVMode  uv_mode  ) 
 

INLINE void RopeNode::set_uv_scale const LVecBase2f &  uv_scale  ) 
 

void RopeNode::write ostream &  out,
int  indent_level = 0
const [virtual]
 

Reimplemented from PandaNode.

Definition at line 191 of file ropeNode.cxx.

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

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

Reimplemented from PandaNode.

Definition at line 494 of file ropeNode.cxx.

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


Member Data Documentation

PUBLISHED RopeNode::__pad0__ [private]
 

Reimplemented from PandaNode.

Definition at line 41 of file ropeNode.h.

PUBLISHED RopeNode::__pad1__
 

Reimplemented from PandaNode.

Definition at line 58 of file ropeNode.h.

PipelineCycler<CData> RopeNode::_cycler [private]
 

Reimplemented from PandaNode.

Definition at line 134 of file ropeNode.h.

Referenced by fillin(), RopeNode(), and write_datagram().

TypeHandle RopeNode::_type_handle [static, private]
 

Reimplemented from PandaNode.

Definition at line 31 of file ropeNode.cxx.

PUBLISHED RopeNode::RM_billboard
 

Definition at line 58 of file ropeNode.h.

Referenced by cull_callback().


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