Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

LinearPath.h

00001 #ifndef LINEARPATH_H
00002 #define LINEARPATH_H
00003 
00004 #include <string>
00005 #include <vector>
00006 #include "ConMath.h"
00007 
00008 
00009 #include "path.h"
00010 #include "config.h"
00011 #include "entity.h"
00012 
00013 /*
00014   LinearPath is a descendent to Path that linearly interpolates between its
00015   CONTROL points. Since it is virtuall identical to its ancestor, little new code is
00016   needed. The reason why it exists is so that there is a class which formally asserts
00017   that the path is a continuous linear interpolation between its CONTROL points.
00018 
00019   LinearPath therefore can be built from a ConStruct.
00020 */
00021 
00022 class LinearPath : public Path {
00023 public:
00024 
00025   //AddPoint is a function for adding CONTROL points
00026   void AddPoint(const Vector& v);
00027   Point Index(const int i) const;
00028   int NumPoints() const{ return samples->s.size();}
00029   
00030   //*****************************
00031   //AUXILIARY
00032   //*****************************
00033   //Stores the path in a ConStruct and outputs to a file
00034   ConStruct toConstruct() const;
00035 
00036   LinearPath();
00037   //use a Path's SAMPLE points as CONTROL points
00038   LinearPath(const Path& path);
00039   LinearPath(const ConStruct& init);
00040   ~LinearPath();
00041 
00042 };
00043 #endif

Generated on Fri Jan 12 14:15:02 2007 for Construct by  doxygen 1.4.3-20050530