12 #ifndef DtOsgParticleRibbon_H_
13 #define DtOsgParticleRibbon_H_
21 class DrawElementsUInt;
37 float expansionRate,
float maxLength = 2000);
40 virtual void update(
double dt,
double simTime);
44 virtual void setAlphaVelocity(
float alphaVelocity);
48 virtual void setTextureRepeat(
float textureRepeat);
54 virtual void setNewParticlesVisible(
bool enable);
61 virtual void addParticle(osg::Vec3d
const& left, osg::Vec3d
const& right,
65 virtual float currentSegmentLength();
68 virtual void extendCurrentSegment(osg::Vec3d
const& left,
69 osg::Vec3d
const& right,
double simTime);
72 virtual osg::Drawable* getDrawable();
75 virtual int particleIndexAtOffset(
int offset);
78 virtual void updateParticles(
double dt);
81 virtual void updateGeometry(
double dt);
84 virtual osg::Vec2 getTextureCoordinateFor(
int pointIndex,
float vScale);
87 virtual osg::Geode* createGeode();