#define NP 6000 #define AGE 200 #define STREAM 1 #define ORTHO 2 class vecField; class Circ; class Renderer { public: Renderer(int w, int h); void Draw(int cond); void traceParticle(int i); void DrawOver(); bool AdvectionCrossing(float &cx, float &cy); // why cbr? void updateParms(float &cx, float &cy, float &dx, float &dy); void updateCursor(float rx,float ry, float &dx, float &dy); private: void initParticles(); void traceParticle(float *xt, float *yt); int Width, Height; vecField *VF; float x[NP], y[NP]; // The particles start positions float **PathsX, **PathsY; // A set of traces Circ *circle; float parm1,parm2,parm3; float cursX,cursY; };