imaging::BsplineShape Class Reference
[Shape Module]

Class for shapes determined by boundary spline curves in the plane. More...

#include <BsplineShape.hpp>

Inheritance diagram for imaging::BsplineShape:

imaging::ShapeInterface imaging::DiscretizableShapeInterface< 2 >

List of all members.

Public Member Functions

 BsplineShape (const BsplineShape &source)
 BsplineShape (const PeriodicBspline< ublas::fixed_vector< float_t, 2 > > &curve)
const BsplineShapeoperator= (const BsplineShape &source)
virtual std::auto_ptr
< BoundaryDiscretizer< 2 > > 
boundary_discretizer (size_t n_points) const
void exponential (const ublas::vector< float_t > &vector, ShapeInterface &shape) const
void logarithm (const ShapeInterface &shape, ublas::vector< float_t > &vector) const
size_t dimension () const
const PeriodicBspline
< ublas::fixed_vector< float_t, 2 > > & 
curve () const

Static Public Attributes

static const size_t SHAPE_DIMENSION = 2


Detailed Description

Class for shapes determined by boundary spline curves in the plane.

This class implements shapes in the plane which are determined by a B-spline boundary curve.


Constructor & Destructor Documentation

imaging::BsplineShape::BsplineShape ( const BsplineShape source  )  [inline]

Copy constructor.

imaging::BsplineShape::BsplineShape ( const PeriodicBspline< ublas::fixed_vector< float_t, 2 > > &  curve  )  [inline]

Constructs a B-spline shape from the a B-spline curve.


Member Function Documentation

const BsplineShape& imaging::BsplineShape::operator= ( const BsplineShape source  )  [inline]

Copy assignement.

References _curve.

std::auto_ptr< BoundaryDiscretizer< 2 > > imaging::BsplineShape::boundary_discretizer ( size_t  n_points  )  const [virtual]

Returns a boundary discretizer for this shape.

Implements imaging::DiscretizableShapeInterface< 2 >.

void imaging::BsplineShape::exponential ( const ublas::vector< float_t > &  vector,
ShapeInterface shape 
) const [virtual]

Computes the Riemannian exponential of vector with respect to *this and stores the result in shape. In other words, shape is the projection of the tangent vector vector in the tangent space at the *this shape on the shape manifold.

Implements imaging::ShapeInterface.

References _curve.

void imaging::BsplineShape::logarithm ( const ShapeInterface shape,
ublas::vector< float_t > &  vector 
) const [virtual]

Computes the Riemannian logarithm of shape with respect to *this and stores the result in vector. In other words, vector is the projection of shape on the tangent space at the *this shape on the shape manifold.

Implements imaging::ShapeInterface.

References _curve.

size_t imaging::BsplineShape::dimension (  )  const [inline, virtual]

Returns the parametric dimension of the shape object. This is the same as the dimension of the shape manifold the shape belongs to. It should not be confused with the spatial dimension N.

Implements imaging::ShapeInterface.

const PeriodicBspline< ublas::fixed_vector<float_t, 2> >& imaging::BsplineShape::curve (  )  const [inline]

Returns the boundary curve of the shape.

Referenced by imaging::operator<<().


Member Data Documentation

The spatial dimension of the shape class. N is 2 for planar shapes and 3 for volumes.

Reimplemented from imaging::DiscretizableShapeInterface< 2 >.


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

Generated on Tue Feb 10 10:01:31 2009 for imaging2 by  doxygen 1.5.5