File: Bezier.h
    1| #ifndef _Bezier_h
    2| #define _Bezier_h
    3| 
    4| #include "Path.h"
    5| #include <vector>
    6| 
    7| namespace Paths
    8| {
    9| 
   10| //.
   11| //. The Bezier class. It implements a bezier curve
   12| //. for the given order.
   13| //.
   14| template <size_t Order>
   15| class Bezier : public Path
   16| {
   17| public:
   18|   //. Create a new Bezier.
   19|   Bezier();
   20| 
   21|   //. @group Manipulators {
   22| 
   23|   //. Add a new control point.
   24|   void add_control_point(const Vertex &);
   25| 
   26|   //. Remove the control point at index i.
   27|   void remove_control_point(size_t i);
   28|   //. }
   29|   virtual void draw();
   30| private:
   31|   //. The data...
   32|   std::vector<Vertex_controls;
   33| };
   34| 
   35| }
   36| 
   37| #endif