Main Page
Groups
Namespace List
Class Hierarchy
Alphabetical List
Compound List
File
List
Namespace Members
Compound Members
File Members
Concepts
A templated class holding a n-Dimensional covariant vector.
More...
#include <itkCovariantVector.h>
Inheritance diagram for itk::CovariantVector< T, NVectorDimension >:
[legend]Collaboration diagram for itk::CovariantVector< T, NVectorDimension >:
[legend]List of all members.
Detailed Description
template<class T, unsigned int NVectorDimension = 3>
class itk::CovariantVector< T, NVectorDimension >
A templated class holding a n-Dimensional covariant vector.
CovariantVector is a templated class that holds a single vector (i.e., an array of values). CovariantVector can be used as the data type held at each pixel in an Image or at each vertex of an Mesh. The template parameter T can be any data type that behaves like a primitive (or atomic) data type (int, short, float, complex). The NVectorDimension defines the number of components in the vector array.
CovariantVector is not a dynamically extendible array like std::vector. It is intended to be used like a mathematical vector.
If you wish a simpler pixel types, you can use Scalar, which represents a single data value at a pixel. There is also the more complex type ScalarCovariantVector, which supports (for a given pixel) a single scalar value plus an array of vector values. (The scalar and vectors can be of different data type.)
CovariantVector is the type that should be used for representing normals to surfaces and gradients of functions. AffineTransform transform covariant vectors different than vectors.
- See also:
- Image
Mesh
Point
Vector
Matrix
Definition at line 64 of file itkCovariantVector.h.
Member Typedef Documentation
Constructor & Destructor Documentation
Member Function Documentation
template<class T, unsigned int NVectorDimension = 3> |
template<typename TCoordRepB> |
void itk::CovariantVector< T, NVectorDimension >::CastFrom |
( |
const CovariantVector< TCoordRepB, NVectorDimension > & |
pa |
) |
[inline] |
|
|
Get a vnl_vector with a copy of the internal memory block |
template<class T, unsigned int NVectorDimension = 3> |
vnl_vector_ref<T> itk::CovariantVector< T, NVectorDimension >::Get_vnl_vector |
( |
void |
|
) |
|
|
|
Get a vnl_vector_ref referencing the same memory block |
template<class T, unsigned int NVectorDimension = 3> |
unsigned int itk::CovariantVector< T, NVectorDimension >::GetCovariantVectorDimension |
( |
|
) |
[inline, static] |
|
|
Returns the Euclidean Norm of the vector |
|
Returns vector's Squared Euclidean Norm |
template<class T, unsigned int NVectorDimension = 3> |
itk::CovariantVector< T, NVectorDimension >::itkStaticConstMacro |
( |
Dimension |
, |
|
|
unsigned |
int, |
|
|
NVectorDimension |
|
|
) |
|
|
|
operator*. Performs the scalar product with a vector (contravariant). This scalar product is invariant under affine transformations |
|
CovariantVector operator*. Performs the inner product of two covariant vectors. - Warning:
- This is equivalent to the scalar product only if the reference system has orthogonal axis and equal scales.
|
|
Scalar operator*. Scale the elements of a vector by a scalar. Return a new vector. |
|
Scalar operator*=. Scales elements by a scalar. |
template<class T, unsigned int NVectorDimension = 3> |
const Self& itk::CovariantVector< T, NVectorDimension >::operator+= |
( |
const Self & |
vec |
) |
|
|
template<class T, unsigned int NVectorDimension = 3> |
Self itk::CovariantVector< T, NVectorDimension >::operator- |
( |
|
) |
const |
|
|
CovariantVector negation. Negate all the elements of a vector. Return a new vector |
template<class T, unsigned int NVectorDimension = 3> |
const Self& itk::CovariantVector< T, NVectorDimension >::operator-= |
( |
const Self & |
vec |
) |
|
|
|
Scalar operator/. Scale (divide) the elements of a vector by a scalar. Return a new vector. |
|
Scalar operator/=. Scales (divides) elements by a scalar. |
|
Pass-through assignment operator for the Array base class. |
|
Pass-through assignment operator for the Array base class. |
template<class T, unsigned int NVectorDimension = 3> |
void itk::CovariantVector< T, NVectorDimension >::PrintSelf |
( |
std::ostream & |
os, |
|
|
Indent |
indent |
|
) |
const |
|
|
Set a vnl_vector_ref referencing the same memory block |
The documentation for this class was generated from the following file:
Generated at Sun Apr 1 03:00:24 2007 for ITK by
1.3.8 written by Dimitri van Heesch,
© 1997-2000