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:
[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 , CovariantCovariantVector , Matrix
Definition at line 64 of file itkCovariantVector.h.
Member Typedef Documentation
template<class T, unsigned int NVectorDimension = 3> |
typedef FixedArray<T, NVectorDimension> itk::CovariantVector< T, NVectorDimension >::BaseArray
|
|
template<class T, unsigned int NVectorDimension = 3> |
typedef Self itk::CovariantVector< T, NVectorDimension >::CovariantVectorType
|
|
template<class T, unsigned int NVectorDimension = 3> |
typedef CovariantVector itk::CovariantVector< T, NVectorDimension >::Self
|
|
template<class T, unsigned int NVectorDimension = 3> |
typedef FixedArray<T,NVectorDimension> itk::CovariantVector< T, NVectorDimension >::Superclass
|
|
template<class T, unsigned int NVectorDimension = 3> |
typedef T itk::CovariantVector< T, NVectorDimension >::ValueType
|
|
Constructor & Destructor Documentation
template<class T, unsigned int NVectorDimension = 3> |
itk::CovariantVector< T, NVectorDimension >::CovariantVector |
( |
|
) |
[inline] |
|
template<class T, unsigned int NVectorDimension = 3> |
itk::CovariantVector< T, NVectorDimension >::CovariantVector |
( |
const Self & |
r |
) |
[inline] |
|
template<class T, unsigned int NVectorDimension = 3> |
itk::CovariantVector< T, NVectorDimension >::CovariantVector |
( |
const ValueType |
r[Dimension] |
) |
[inline] |
|
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] |
|
template<class T, unsigned int NVectorDimension = 3> |
vnl_vector<T> itk::CovariantVector< T, NVectorDimension >::Get_vnl_vector |
( |
void |
|
) |
const |
|
|
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 |
|
) |
|
|
template<class T, unsigned int NVectorDimension = 3> |
unsigned int itk::CovariantVector< T, NVectorDimension >::GetCovariantVectorDimension |
( |
|
) |
[inline, static] |
|
template<class T, unsigned int NVectorDimension = 3> |
ValueType itk::CovariantVector< T, NVectorDimension >::GetNorm |
( |
void |
|
) |
const |
|
|
Returns the Euclidean Norm of the vector |
template<class T, unsigned int NVectorDimension = 3> |
ValueType itk::CovariantVector< T, NVectorDimension >::GetSquaredNorm |
( |
void |
|
) |
const |
|
|
Returns vector's Squared Euclidean Norm |
template<class T, unsigned int NVectorDimension = 3> |
itk::CovariantVector< T, NVectorDimension >::itkStaticConstMacro |
( |
Dimension |
, |
|
|
unsigned |
int, |
|
|
NVectorDimension |
|
|
) |
|
|
template<class T, unsigned int NVectorDimension = 3> |
ValueType itk::CovariantVector< T, NVectorDimension >::operator * |
( |
const Vector< T, NVectorDimension > & |
vec |
) |
const |
|
|
operator *. Performs the scalar product with a vector (contravariant). This scalar product is invariant under affine transformations |
template<class T, unsigned int NVectorDimension = 3> |
ValueType itk::CovariantVector< T, NVectorDimension >::operator * |
( |
const Self & |
vec |
) |
const |
|
|
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.
|
template<class T, unsigned int NVectorDimension = 3> |
Self itk::CovariantVector< T, NVectorDimension >::operator * |
( |
const ValueType & |
val |
) |
const |
|
|
Scalar operator *. Scale the elements of a vector by a scalar. Return a new vector. |
template<class T, unsigned int NVectorDimension = 3> |
const Self& itk::CovariantVector< T, NVectorDimension >::operator *= |
( |
const ValueType & |
value |
) |
|
|
|
Scalar operator *=. Scales elements by a scalar. |
template<class T, unsigned int NVectorDimension = 3> |
Self itk::CovariantVector< T, NVectorDimension >::operator+ |
( |
const Self & |
vec |
) |
const |
|
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 Self & |
vec |
) |
const |
|
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 |
) |
|
|
template<class T, unsigned int NVectorDimension = 3> |
Self itk::CovariantVector< T, NVectorDimension >::operator/ |
( |
const ValueType & |
val |
) |
const |
|
|
Scalar operator/. Scale (divide) the elements of a vector by a scalar. Return a new vector. |
template<class T, unsigned int NVectorDimension = 3> |
const Self& itk::CovariantVector< T, NVectorDimension >::operator/= |
( |
const ValueType & |
value |
) |
|
|
|
Scalar operator/=. Scales (divides) elements by a scalar. |
template<class T, unsigned int NVectorDimension = 3> |
CovariantVector& itk::CovariantVector< T, NVectorDimension >::operator= |
( |
const ValueType |
r[Dimension] |
) |
|
|
|
Pass-through assignment operator for the Array base class. |
template<class T, unsigned int NVectorDimension = 3> |
CovariantVector& itk::CovariantVector< T, NVectorDimension >::operator= |
( |
const Self & |
r |
) |
|
|
|
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 |
|
template<class T, unsigned int NVectorDimension = 3> |
void itk::CovariantVector< T, NVectorDimension >::Set_vnl_vector |
( |
const vnl_vector< T > & |
|
) |
|
|
The documentation for this class was generated from the following file:
Generated at Fri May 21 01:23:53 2004 for ITK by
1.2.15 written by Dimitri van Heesch,
© 1997-2000