Panda3D

Loading...
Searching...
No Matches
boxEmitter.h
Go to the documentation of this file.
1/**
2 * PANDA 3D SOFTWARE
3 * Copyright (c) Carnegie Mellon University. All rights reserved.
4 *
5 * All use of this software is subject to the terms of the revised BSD
6 * license. You should have received a copy of this license along
7 * with this source code in a file named "LICENSE."
8 *
9 * @file boxEmitter.h
10 * @author charles
11 * @date 2000-06-22
12 */
13
14#ifndef BOXEMITTER_H
15#define BOXEMITTER_H
16
17#include "baseParticleEmitter.h"
18
19/**
20 * Describes a voluminous box region in which particles are generated.
21 */
22 class EXPCL_PANDA_PARTICLESYSTEM BoxEmitter : public BaseParticleEmitter {
23PUBLISHED:
24 BoxEmitter();
25 BoxEmitter(const BoxEmitter &copy);
26 virtual ~BoxEmitter();
27
28 virtual BaseParticleEmitter *make_copy();
29
30 INLINE void set_min_bound(const LPoint3& vmin);
31 INLINE void set_max_bound(const LPoint3& vmax);
32
33 INLINE LPoint3 get_min_bound() const;
34 INLINE LPoint3 get_max_bound() const;
35
36 virtual void output(std::ostream &out) const;
37 virtual void write(std::ostream &out, int indent=0) const;
38
39 private:
40 LPoint3 _vmin;
41 LPoint3 _vmax;
42
43 // CUSTOM EMISSION PARAMETERS none
44
45 virtual void assign_initial_position(LPoint3& pos);
46 virtual void assign_initial_velocity(LVector3& vel);
47};
48
49#include "boxEmitter.I"
50
51#endif // BOXEMITTER_H
baseParticleEmitter.h
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
boxEmitter.I
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
BaseParticleEmitter::write
virtual void write(std::ostream &out, int indent=0) const
Write a string representation of this instance to <out>.
Definition baseParticleEmitter.cxx:92
BaseParticleEmitter::output
virtual void output(std::ostream &out) const
Write a string representation of this instance to <out>.
Definition baseParticleEmitter.cxx:82
BoxEmitter::get_max_bound
LPoint3 get_max_bound() const
boundary accessor
Definition boxEmitter.I:42
BoxEmitter::get_min_bound
LPoint3 get_min_bound() const
boundary accessor
Definition boxEmitter.I:34
BoxEmitter::set_max_bound
void set_max_bound(const LPoint3 &vmax)
boundary assignment
Definition boxEmitter.I:26
BoxEmitter::BoxEmitter
BoxEmitter()
constructor
Definition boxEmitter.cxx:20
BoxEmitter::set_min_bound
void set_min_bound(const LPoint3 &vmin)
boundary assignment
Definition boxEmitter.I:18
BoxEmitter::make_copy
virtual BaseParticleEmitter * make_copy()
copier
Definition boxEmitter.cxx:47
indent
std::ostream & indent(std::ostream &out, int indent_level)
A handy function for doing text formatting.
Definition indent.cxx:20