shape_doc 0.1
parametric_curve< C, V > Class Template Reference

#include <parametric_curve.hpp>

Inheritance diagram for parametric_curve< C, V >:
curve< V > SHAPE_OFV curve_rational< C, V >

List of all members.

Public Types

Public Member Functions


Detailed Description

template<class C, class V>
class mmx::shape::parametric_curve< C, V >

Definition at line 44 of file parametric_curve.hpp.


Member Typedef Documentation

typedef bounding_box<C, REF_OF(V) > BoundingBox

Reimplemented in bspline_curve< K >, and curve_rational< C, V >.

Definition at line 49 of file parametric_curve.hpp.

typedef curve< REF_OF(V) > Curve

Definition at line 48 of file parametric_curve.hpp.

typedef point<C, REF_OF(V) > Point

Reimplemented in bspline_curve< K >, and curve_rational< C, V >.

Definition at line 47 of file parametric_curve.hpp.

typedef point_set<C, REF_OF(V) >::PointIterator PointIterator

Definition at line 50 of file parametric_curve.hpp.

typedef C Scalar

Reimplemented in curve_rational< C, V >.

Definition at line 46 of file parametric_curve.hpp.


Constructor & Destructor Documentation

parametric_curve ( void  ) [inline]

Definition at line 52 of file parametric_curve.hpp.

{} ;
parametric_curve ( const BoundingBox  box) [inline]

Definition at line 53 of file parametric_curve.hpp.

: Curve(box) {}
virtual ~parametric_curve ( void  ) [inline, virtual]

Definition at line 54 of file parametric_curve.hpp.

{} ;

Member Function Documentation

virtual Seq<Point *> critical_points ( void  ) [pure virtual]

Implemented in curve_rational< C, V >.

virtual Point* eval ( const double &  t) const [pure virtual]
virtual void eval ( Point ,
Scalar   
) const [pure virtual]

Implemented in curve_rational< C, V >.

virtual Seq<Point *> extremal_points ( void  ) [pure virtual]

Implemented in curve_rational< C, V >.

virtual Point* operator() ( double  t) const [inline, virtual]

Definition at line 61 of file parametric_curve.hpp.

{ return this->eval(t); }
void sample ( Point res,
const Scalar t,
int  n 
) const [virtual]

Definition at line 86 of file parametric_curve.hpp.

References mmx::eval().

                                                     {
  for ( Point * o = res; o != res + n; o++, t++  )
    this->eval(*o,*t);
}
void sample ( PointIterator  p,
int  n 
) const [virtual]

Definition at line 76 of file parametric_curve.hpp.

References mmx::eval().

                                         {
  assert(n>1);
  Scalar h=(this->tmax() - this->tmin())/(n-1), t=tmin();
  for (int i=0; i<n; i++, p++) {
    this->eval(*p, t);   // SEGFAULT ?
    t+=h;
  }
}
virtual void set_range ( double  tmin,
double  tmax 
) [pure virtual]

Implemented in curve_rational< C, V >.

virtual Seq<Point *> singular_points ( void  ) [pure virtual]

Implemented in curve_rational< C, V >.

virtual void subdivide ( parametric_curve< C, V > *&  a,
parametric_curve< C, V > *&  b,
double  t 
) const [pure virtual]
virtual double tmax ( void  ) const [pure virtual]

Implemented in curve_rational< C, V >.

virtual double tmin ( void  ) const [pure virtual]

Implemented in curve_rational< C, V >.


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