#ifndef _LINE_WALK_MODULE
#define _LINE_WALK_MODULE

#include "ofMain.h"
#include "ofVec3f.h"
#include "graphicsModuleBase.h"

#define MAX_LENGTH 8000


class lineWalkModule : public graphicsModuleBase {
	
	public:
		
		lineWalkModule();
		
		void 		setup();
		void 		reset();
	 	void 		update();
		void 		draw();
		bool 		bAmIdone();
		
		ofVec3f		getStartPosition();
		float		getStartAngle();
		
		
		bool		rotating[MAX_LENGTH];
		float		degrees[MAX_LENGTH];
		float		angle1;
		float		angle2;

		float		startDegrees[MAX_LENGTH];
		bool		pause[MAX_LENGTH];

		float 		pct;
		int			radius[MAX_LENGTH];
		int			count[MAX_LENGTH];
		
		ofImage		img;
		//ofSoundPlayer SND;
		
		ofVec3f		startPos[MAX_LENGTH];
		ofVec3f		currentPos[MAX_LENGTH];
		ofVec3f 	pos[MAX_LENGTH];
		ofVec3f		leadingPoint;				
		ofVec3f		dst;
		ofVec3f		vel;
		ofVec3f		angle;
		
		int			lineCount;
		int 		framecount;	// so we don't do a new point every frame...				
		ofVec3f		trail[MAX_LENGTH];
};

#endif	