48 INLINE
void set_active(
bool active);
49 INLINE
bool is_active()
const;
50 MAKE_PROPERTY(active, is_active, set_active);
52 INLINE
void set_scene(
const NodePath &scene);
53 INLINE
const NodePath &get_scene()
const;
54 MAKE_PROPERTY(scene, get_scene, set_scene);
56 INLINE
size_t get_num_display_regions()
const;
58 MAKE_SEQ(get_display_regions, get_num_display_regions, get_display_region);
59 MAKE_SEQ_PROPERTY(display_regions, get_num_display_regions, get_display_region);
61 INLINE
void set_camera_mask(
DrawMask mask);
62 INLINE
DrawMask get_camera_mask()
const;
63 MAKE_PROPERTY(camera_mask, get_camera_mask, set_camera_mask);
65 INLINE
void set_cull_center(
const NodePath &cull_center);
66 INLINE
const NodePath &get_cull_center()
const;
67 MAKE_PROPERTY(cull_center, get_cull_center, set_cull_center);
71 MAKE_PROPERTY(cull_bounds, get_cull_bounds, set_cull_bounds);
73 INLINE
void set_lod_center(
const NodePath &lod_center);
74 INLINE
const NodePath &get_lod_center()
const;
75 MAKE_PROPERTY(lod_center, get_lod_center, set_lod_center);
77 INLINE
void set_initial_state(
const RenderState *state);
79 MAKE_PROPERTY(initial_state, get_initial_state, set_initial_state);
81 INLINE
void set_tag_state_key(
const std::string &tag_state_key);
82 INLINE
const std::string &get_tag_state_key()
const;
83 MAKE_PROPERTY(tag_state_key, get_tag_state_key, set_tag_state_key);
85 INLINE
void set_lod_scale(PN_stdfloat value);
86 INLINE PN_stdfloat get_lod_scale()
const;
87 MAKE_PROPERTY(lod_scale, get_lod_scale, set_lod_scale);
89 void set_tag_state(
const std::string &tag_state,
const RenderState *state);
90 void clear_tag_state(
const std::string &tag_state);
91 void clear_tag_states();
92 bool has_tag_state(
const std::string &tag_state)
const;
93 CPT(
RenderState) get_tag_state(
const std::string &tag_state)
const;
94 MAKE_MAP_PROPERTY(tag_states, has_tag_state, get_tag_state,
95 set_tag_state, clear_tag_state);
98 bool clear_aux_scene_data(
const NodePath &node_path);
100 void list_aux_scene_data(std::ostream &out)
const;
101 int cleanup_aux_scene_data(
Thread *current_thread = Thread::get_current_thread());
102 MAKE_MAP_PROPERTY(aux_scene_data, get_aux_scene_data, get_aux_scene_data,
103 set_aux_scene_data, clear_aux_scene_data);
116 PN_stdfloat _lod_scale;
122 std::string _tag_state_key;
144 static void init_type() {
145 LensNode::init_type();
147 LensNode::get_class_type());
150 return get_class_type();
152 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
This is a base class for a generic data structure that can be attached per- instance to the camera,...
A basic node of the scene graph or data graph.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is our own Panda specialization on the default STL map.
A base class for any number of different kinds of lenses, linear and otherwise.
This is the fundamental interface for extracting binary objects from a Bam file, as generated by a Ba...
A node that contains a Lens.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Base class for objects that can be written to and read from Bam files.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is the fundamental interface for writing binary objects to a Bam file, to be extracted later by ...
This is our own Panda specialization on the default STL list.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This is an abstract class for any volume in any sense which can be said to define the locality of ref...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
static void register_with_read_factory()
Tells the BamReader how to create objects of type LensNode.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A perspective-type lens: a normal camera.
An instance of this class is passed to the Factory when requesting it to do its business and construc...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This represents a unique collection of RenderAttrib objects that correspond to a particular renderabl...
A thread; that is, a lightweight process.
virtual PandaNode * make_copy() const
Returns a newly-allocated Node that is a shallow copy of this one.
virtual void write_datagram(BamWriter *manager, Datagram &dg)
Writes the contents of this object to the datagram for shipping out to a Bam file.
A rectangular subregion within a window for rendering into.
A class to retrieve the individual data elements previously stored in a Datagram.
virtual int complete_pointers(TypedWritable **plist, BamReader *manager)
Receives an array of pointers, one for each time manager->read_pointer() was called in fillin().
TypeHandle is the identifier used to differentiate C++ class types.
virtual bool safe_to_transform() const
Returns true if it is generally safe to transform this particular kind of PandaNode by calling the xf...
A node that can be positioned around in the scene graph to represent a point of view for rendering a ...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
An ordered list of data elements, formatted in memory for transmission over a socket or writing to a ...
NodePath is the fundamental system for disambiguating instances, and also provides a higher-level int...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
virtual bool safe_to_flatten() const
Returns true if it is generally safe to flatten out this particular kind of PandaNode by duplicating ...