Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitk::Vector< TCoordRep, NVectorDimension > Class Template Reference

MITK vector type extending itk::Vector with additional constructors and conversions. More...

#include <mitkVector.h>

Inheritance diagram for mitk::Vector< TCoordRep, NVectorDimension >:
Collaboration diagram for mitk::Vector< TCoordRep, NVectorDimension >:

Public Member Functions

 Vector ()
 Default constructor. More...
 
 Vector (const mitk::Vector< TCoordRep, NVectorDimension > &r)
 Copy constructor. More...
 
Vector< TCoordRep, NVectorDimension > & operator= (const Vector< TCoordRep, NVectorDimension > &r)
 
 Vector (const itk::Vector< TCoordRep, NVectorDimension > &r)
 Constructor to convert from itk::Vector to mitk::Vector. More...
 
 Vector (const TCoordRep r[NVectorDimension])
 Constructor to convert an array to mitk::Vector. More...
 
 Vector (const TCoordRep &v)
 
 Vector (const vnl_vector< TCoordRep > &vnlVector)
 Constructor for vnl_vectors. More...
 
 Vector (const vnl_vector_fixed< TCoordRep, NVectorDimension > &vnlVectorFixed)
 Constructor for vnl_vector_fixed. More...
 
template<typename... Args, typename = std::enable_if_t<(sizeof...(Args) == NVectorDimension)>>
 Vector (Args... args)
 
template<typename ArrayType >
void FillVector (const ArrayType &array)
 Copy elements from an array into this vector. More...
 
template<typename ArrayType >
void ToArray (ArrayType array) const
 Copy the values stored in this vector into an array. More...
 
 operator vnl_vector< TCoordRep > () const
 User-defined conversion of mitk::Vector to vnl_vector. More...
 

Detailed Description

template<class TCoordRep, unsigned int NVectorDimension = 3>
class mitk::Vector< TCoordRep, NVectorDimension >

MITK vector type extending itk::Vector with additional constructors and conversions.

Provides constructors from vnl_vector, vnl_vector_fixed, and variadic arguments, as well as conversion operators and utility methods for copying to/from array types.

Template Parameters
TCoordRepCoordinate representation type (e.g. double, float).
NVectorDimensionNumber of dimensions (default: 3).

Definition at line 38 of file mitkVector.h.

Constructor & Destructor Documentation

◆ Vector() [1/8]

template<class TCoordRep , unsigned int NVectorDimension = 3>
mitk::Vector< TCoordRep, NVectorDimension >::Vector ( )
inlineexplicit

Default constructor.

Definition at line 42 of file mitkVector.h.

◆ Vector() [2/8]

template<class TCoordRep , unsigned int NVectorDimension = 3>
mitk::Vector< TCoordRep, NVectorDimension >::Vector ( const mitk::Vector< TCoordRep, NVectorDimension > &  r)
inlineexplicit

Copy constructor.

Definition at line 45 of file mitkVector.h.

◆ Vector() [3/8]

template<class TCoordRep , unsigned int NVectorDimension = 3>
mitk::Vector< TCoordRep, NVectorDimension >::Vector ( const itk::Vector< TCoordRep, NVectorDimension > &  r)
inline

Constructor to convert from itk::Vector to mitk::Vector.

Definition at line 60 of file mitkVector.h.

◆ Vector() [4/8]

template<class TCoordRep , unsigned int NVectorDimension = 3>
mitk::Vector< TCoordRep, NVectorDimension >::Vector ( const TCoordRep  r[NVectorDimension])
inline

Constructor to convert an array to mitk::Vector.

Parameters
[in]rThe array.
Attention
Must have NVectorDimension valid arguments!

Definition at line 70 of file mitkVector.h.

◆ Vector() [5/8]

template<class TCoordRep , unsigned int NVectorDimension = 3>
mitk::Vector< TCoordRep, NVectorDimension >::Vector ( const TCoordRep &  v)
inline

Constructor to initialize entire vector to one value.

Definition at line 78 of file mitkVector.h.

◆ Vector() [6/8]

template<class TCoordRep , unsigned int NVectorDimension = 3>
mitk::Vector< TCoordRep, NVectorDimension >::Vector ( const vnl_vector< TCoordRep > &  vnlVector)
inline

Constructor for vnl_vectors.

Exceptions
mitk::ExceptionIf vnl_vector.size() != NVectorDimension.

Definition at line 83 of file mitkVector.h.

References mitkThrow.

◆ Vector() [7/8]

template<class TCoordRep , unsigned int NVectorDimension = 3>
mitk::Vector< TCoordRep, NVectorDimension >::Vector ( const vnl_vector_fixed< TCoordRep, NVectorDimension > &  vnlVectorFixed)
inline

Constructor for vnl_vector_fixed.

Definition at line 99 of file mitkVector.h.

◆ Vector() [8/8]

template<class TCoordRep , unsigned int NVectorDimension = 3>
template<typename... Args, typename = std::enable_if_t<(sizeof...(Args) == NVectorDimension)>>
mitk::Vector< TCoordRep, NVectorDimension >::Vector ( Args...  args)
inlineexplicit

Definition at line 110 of file mitkVector.h.

Member Function Documentation

◆ FillVector()

template<class TCoordRep , unsigned int NVectorDimension = 3>
template<typename ArrayType >
void mitk::Vector< TCoordRep, NVectorDimension >::FillVector ( const ArrayType &  array)
inline

Copy elements from an array into this vector.

Note that this method will assign doubles to floats without complaining!

Parameters
[in]arrayThe array whose values shall be copied. Must overload [] operator.

Definition at line 124 of file mitkVector.h.

◆ operator vnl_vector< TCoordRep >()

template<class TCoordRep , unsigned int NVectorDimension = 3>
mitk::Vector< TCoordRep, NVectorDimension >::operator vnl_vector< TCoordRep > ( ) const
inline

User-defined conversion of mitk::Vector to vnl_vector.

Note: the conversion to vnl_vector_fixed has not been implemented since this would collide with the conversion vnl_vector to vnl_vector_fixed provided by vnl.

Definition at line 148 of file mitkVector.h.

◆ operator=()

template<class TCoordRep , unsigned int NVectorDimension = 3>
Vector<TCoordRep, NVectorDimension>& mitk::Vector< TCoordRep, NVectorDimension >::operator= ( const Vector< TCoordRep, NVectorDimension > &  r)
inline

Pass-through assignment operator for the Vector base class.

Definition at line 51 of file mitkVector.h.

◆ ToArray()

template<class TCoordRep , unsigned int NVectorDimension = 3>
template<typename ArrayType >
void mitk::Vector< TCoordRep, NVectorDimension >::ToArray ( ArrayType  array) const
inline

Copy the values stored in this vector into an array.

Parameters
[out]arrayThe array which should store the values of this vector.

Definition at line 137 of file mitkVector.h.


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