00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef TANGENTRINGEMITTER_H
00016 #define TANGENTRINGEMITTER_H
00017
00018 #include "baseParticleEmitter.h"
00019
00020
00021
00022
00023
00024
00025
00026 class EXPCL_PANDAPHYSICS TangentRingEmitter : public BaseParticleEmitter {
00027 PUBLISHED:
00028 TangentRingEmitter();
00029 TangentRingEmitter(const TangentRingEmitter ©);
00030 virtual ~TangentRingEmitter();
00031
00032 virtual BaseParticleEmitter *make_copy();
00033
00034 INLINE void set_radius(PN_stdfloat r);
00035 INLINE void set_radius_spread(PN_stdfloat spread);
00036
00037 INLINE PN_stdfloat get_radius() const;
00038 INLINE PN_stdfloat get_radius_spread() const;
00039
00040 virtual void output(ostream &out) const;
00041 virtual void write(ostream &out, int indent=0) const;
00042
00043 private:
00044 PN_stdfloat _radius;
00045 PN_stdfloat _radius_spread;
00046
00047
00048
00049
00050
00051
00052 PN_stdfloat _x;
00053 PN_stdfloat _y;
00054
00055
00056 virtual void assign_initial_position(LPoint3& pos);
00057 virtual void assign_initial_velocity(LVector3& vel);
00058 };
00059
00060 #include "tangentRingEmitter.I"
00061
00062 #endif // TANGENTRINGEMITTER_H