00001 #ifndef STREAMLINE_H
00002 #define STREAMLINE_H
00003
00004 #include "vec3.h"
00005 #include <vector>
00006 #include <list>
00007
00008 using namespace std;
00009
00010 class StreamlineGrid;
00011
00013 class StreamLine
00014 {
00015 public:
00016 StreamLine(StreamlineGrid*, const vec3&);
00017 ~StreamLine();
00018
00019 vec3& getStartSample() { return this->startSample; };
00020
00021 bool getNextSeed(vec3*);
00022
00023 bool addSample(const vec3);
00024
00025 void finalize();
00026
00027 private:
00028 vec3 startSample;
00029 StreamlineGrid* grid;
00030
00031 vector<vec3> samples;
00032 list<vec3> potentialSeeds;
00033 };
00034
00035 #endif