claw 1.9.0
 
Loading...
Searching...
No Matches
claw::math::curve< C, Traits > Class Template Reference

Implementation of the Bézier curve. More...

#include <curve.hpp>

Classes

class  control_point
 The control_point class describes a control point of the curve, with the direction of the curve before and after the point. More...
 
class  section
 A section is a part of the curve between two control points. More...
 

Public Types

typedef C coordinate_type
 The type of the coordinates of the curve.
 
typedef Traits traits_type
 The traits provide an access to the properties of the coordinates.
 
typedef traits_type::value_type value_type
 The type of the components of the coordinates.
 
typedef control_point_list::iterator iterator
 The type of the iterator on the control points of the curve.
 
typedef control_point_list::const_iterator const_iterator
 The type of the iterator on the control points of the curve.
 

Public Member Functions

void push_back (const control_point &p)
 
void push_front (const control_point &p)
 
void insert (const iterator &pos, const control_point &p)
 
section get_section (const const_iterator &pos) const
 
std::vector< typename section::resolved_pointget_point_at_x (value_type x, bool off_domain=false) const
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 

Detailed Description

template<typename C, typename Traits = coordinate_traits<C>>
class claw::math::curve< C, Traits >

Implementation of the Bézier curve.

The curve is made of a sequence of points, each of which having a direction telling how the curve enters the point and how to leave.

Author
Julien Jorge

Definition at line 49 of file curve.hpp.

Member Typedef Documentation

◆ const_iterator

template<typename C, typename Traits = coordinate_traits<C>>
typedef control_point_list::const_iterator claw::math::curve< C, Traits >::const_iterator

The type of the iterator on the control points of the curve.

Definition at line 110 of file curve.hpp.

◆ coordinate_type

template<typename C, typename Traits = coordinate_traits<C>>
typedef C claw::math::curve< C, Traits >::coordinate_type

The type of the coordinates of the curve.

Definition at line 53 of file curve.hpp.

◆ iterator

template<typename C, typename Traits = coordinate_traits<C>>
typedef control_point_list::iterator claw::math::curve< C, Traits >::iterator

The type of the iterator on the control points of the curve.

Definition at line 106 of file curve.hpp.

◆ traits_type

template<typename C, typename Traits = coordinate_traits<C>>
typedef Traits claw::math::curve< C, Traits >::traits_type

The traits provide an access to the properties of the coordinates.

Definition at line 57 of file curve.hpp.

◆ value_type

template<typename C, typename Traits = coordinate_traits<C>>
typedef traits_type::value_type claw::math::curve< C, Traits >::value_type

The type of the components of the coordinates.

Definition at line 60 of file curve.hpp.


The documentation for this class was generated from the following file: