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