Panda3D
geomParticleRenderer.I
1 // Filename: geomParticleRenderer.I
2 // Created by: charles (05Jul00)
3 //
4 ////////////////////////////////////////////////////////////////////
5 //
6 // PANDA 3D SOFTWARE
7 // Copyright (c) Carnegie Mellon University. All rights reserved.
8 //
9 // All use of this software is subject to the terms of the revised BSD
10 // license. You should have received a copy of this license along
11 // with this source code in a file named "LICENSE."
12 //
13 ////////////////////////////////////////////////////////////////////
14 
15 ////////////////////////////////////////////////////////////////////
16 // Function : set_geom_node
17 // Access : public
18 ////////////////////////////////////////////////////////////////////
19 
20 // we're forcing a pool resize to remove every node in the vector.
21 // this is because nodes are reference-counted, and we have to
22 // explicitly remove them from the node they were previously parented
23 // to.
24 
25 INLINE void GeomParticleRenderer::
26 set_geom_node(PandaNode *node) {
27  nassertv(node != (PandaNode *)NULL);
28  _geom_node = node;
29  resize_pool(_pool_size);
30 }
31 
32 ////////////////////////////////////////////////////////////////////
33 // Function : GeomParticleRenderer::set_x_scale_flag
34 // Access : public
35 ////////////////////////////////////////////////////////////////////
36 INLINE void GeomParticleRenderer::
37 set_x_scale_flag(bool animate_x_ratio) {
38  _animate_x_ratio = animate_x_ratio;
39  init_geoms();
40 }
41 
42 ////////////////////////////////////////////////////////////////////
43 // Function : GeomParticleRenderer::set_y_scale_flag
44 // Access : public
45 ////////////////////////////////////////////////////////////////////
46 INLINE void GeomParticleRenderer::
47 set_y_scale_flag(bool animate_y_ratio) {
48  _animate_y_ratio = animate_y_ratio;
49  init_geoms();
50 }
51 
52 ////////////////////////////////////////////////////////////////////
53 // Function : GeomParticleRenderer::set_z_scale_flag
54 // Access : public
55 ////////////////////////////////////////////////////////////////////
56 INLINE void GeomParticleRenderer::
57 set_z_scale_flag(bool animate_z_ratio) {
58  _animate_z_ratio = animate_z_ratio;
59  init_geoms();
60 }
61 
62 ////////////////////////////////////////////////////////////////////
63 // Function : GeomParticleRenderer::set_initial_x_scale
64 // Access : public
65 ////////////////////////////////////////////////////////////////////
66 INLINE void GeomParticleRenderer::
67 set_initial_x_scale(PN_stdfloat initial_x_scale) {
68  _initial_x_scale = initial_x_scale;
69  init_geoms();
70 }
71 
72 ////////////////////////////////////////////////////////////////////
73 // Function : GeomParticleRenderer::set_final_x_scale
74 // Access : public
75 ////////////////////////////////////////////////////////////////////
76 INLINE void GeomParticleRenderer::
77 set_final_x_scale(PN_stdfloat final_x_scale) {
78  _final_x_scale = final_x_scale;
79  init_geoms();
80 }
81 
82 ////////////////////////////////////////////////////////////////////
83 // Function : GeomParticleRenderer::set_initial_y_scale
84 // Access : public
85 ////////////////////////////////////////////////////////////////////
86 INLINE void GeomParticleRenderer::
87 set_initial_y_scale(PN_stdfloat initial_y_scale) {
88  _initial_y_scale = initial_y_scale;
89  init_geoms();
90 }
91 
92 ////////////////////////////////////////////////////////////////////
93 // Function : GeomParticleRenderer::set_final_y_scale
94 // Access : public
95 ////////////////////////////////////////////////////////////////////
96 INLINE void GeomParticleRenderer::
97 set_final_y_scale(PN_stdfloat final_y_scale) {
98  _final_y_scale = final_y_scale;
99  init_geoms();
100 }
101 
102 ////////////////////////////////////////////////////////////////////
103 // Function : GeomParticleRenderer::set_initial_z_scale
104 // Access : public
105 ////////////////////////////////////////////////////////////////////
106 INLINE void GeomParticleRenderer::
107 set_initial_z_scale(PN_stdfloat initial_z_scale) {
108  _initial_z_scale = initial_z_scale;
109  init_geoms();
110 }
111 
112 ////////////////////////////////////////////////////////////////////
113 // Function : GeomParticleRenderer::set_final_z_scale
114 // Access : public
115 ////////////////////////////////////////////////////////////////////
116 INLINE void GeomParticleRenderer::
117 set_final_z_scale(PN_stdfloat final_z_scale) {
118  _final_z_scale = final_z_scale;
119  init_geoms();
120 }
121 
122 ////////////////////////////////////////////////////////////////////
123 // Function : get_geom_node
124 // Access : public
125 ////////////////////////////////////////////////////////////////////
126 INLINE PandaNode *GeomParticleRenderer::
127 get_geom_node() {
128  return _geom_node;
129 }
130 
131 ////////////////////////////////////////////////////////////////////
132 // Function : get_color_interpolation_manager
133 // Access : public
134 ////////////////////////////////////////////////////////////////////
135 INLINE ColorInterpolationManager* GeomParticleRenderer::
136 get_color_interpolation_manager() const {
137  return _color_interpolation_manager;
138 }
139 
140 ////////////////////////////////////////////////////////////////////
141 // Function : GeomParticleRenderer::get_x_scale_flag
142 // Access : public
143 ////////////////////////////////////////////////////////////////////
144 INLINE bool GeomParticleRenderer::
145 get_x_scale_flag() const {
146  return _animate_x_ratio;
147 }
148 
149 ////////////////////////////////////////////////////////////////////
150 // Function : GeomParticleRenderer::get_y_scale_flag
151 // Access : public
152 ////////////////////////////////////////////////////////////////////
153 INLINE bool GeomParticleRenderer::
154 get_y_scale_flag() const {
155  return _animate_y_ratio;
156 }
157 
158 ////////////////////////////////////////////////////////////////////
159 // Function : GeomParticleRenderer::get_z_scale_flag
160 // Access : public
161 ////////////////////////////////////////////////////////////////////
162 INLINE bool GeomParticleRenderer::
163 get_z_scale_flag() const {
164  return _animate_z_ratio;
165 }
166 
167 ////////////////////////////////////////////////////////////////////
168 // Function : GeomParticleRenderer::get_initial_x_scale
169 // Access : public
170 ////////////////////////////////////////////////////////////////////
171 INLINE PN_stdfloat GeomParticleRenderer::
172 get_initial_x_scale() const {
173  return _initial_x_scale;
174 }
175 
176 ////////////////////////////////////////////////////////////////////
177 // Function : GeomParticleRenderer::get_final_x_scale
178 // Access : public
179 ////////////////////////////////////////////////////////////////////
180 INLINE PN_stdfloat GeomParticleRenderer::
181 get_final_x_scale() const {
182  return _final_x_scale;
183 }
184 
185 ////////////////////////////////////////////////////////////////////
186 // Function : GeomParticleRenderer::get_initial_y_scale
187 // Access : public
188 ////////////////////////////////////////////////////////////////////
189 INLINE PN_stdfloat GeomParticleRenderer::
190 get_initial_y_scale() const {
191  return _initial_y_scale;
192 }
193 
194 ////////////////////////////////////////////////////////////////////
195 // Function : GeomParticleRenderer::get_final_y_scale
196 // Access : public
197 ////////////////////////////////////////////////////////////////////
198 INLINE PN_stdfloat GeomParticleRenderer::
199 get_final_y_scale() const {
200  return _final_y_scale;
201 }
202 
203 ////////////////////////////////////////////////////////////////////
204 // Function : GeomParticleRenderer::get_initial_z_scale
205 // Access : public
206 ////////////////////////////////////////////////////////////////////
207 INLINE PN_stdfloat GeomParticleRenderer::
208 get_initial_z_scale() const {
209  return _initial_z_scale;
210 }
211 
212 ////////////////////////////////////////////////////////////////////
213 // Function : GeomParticleRenderer::get_final_z_scale
214 // Access : public
215 ////////////////////////////////////////////////////////////////////
216 INLINE PN_stdfloat GeomParticleRenderer::
217 get_final_z_scale() const {
218  return _final_z_scale;
219 }
A basic node of the scene graph or data graph.
Definition: pandaNode.h:72
High level class for color interpolation.