cisst-saw
Loading...
Searching...
No Matches
vctFrame4x4< _elementType, _rowMajor > Class Template Reference

Template base class for a 4x4 frame. More...

#include <vctFrame4x4.h>

Inheritance diagram for vctFrame4x4< _elementType, _rowMajor >:
vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > > vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > > vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array > vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >

Public Types

enum  { ROWS = 4 , COLS = 4 }
enum  { DIMENSION = 3 }
typedef vctFixedSizeMatrix< value_type, ROWS, COLS, _rowMajor > ContainerType
typedef vctFrame4x4Base< ContainerTypeBaseType
typedef vctFrame4x4< value_type, _rowMajor > ThisType
typedef cmnTypeTraits< value_typeTypeTraits
Public Types inherited from vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >
enum  
enum  
typedef vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > ContainerType
typedef vctFrame4x4ConstBase< ContainerTypeBaseType
typedef vctFrame4x4Base< ContainerTypeThisType
typedef BaseType::RowRefType RowRefType
typedef BaseType::ColumnRefType ColumnRefType
typedef BaseType::ConstRowRefType ConstRowRefType
typedef BaseType::ConstColumnRefType ConstColumnRefType
typedef BaseType::DiagonalRefType DiagonalRefType
typedef BaseType::ConstDiagonalRefType ConstDiagonalRefType
typedef BaseType::RefTransposeType RefTransposeType
typedef BaseType::ConstRefTransposeType ConstRefTransposeType
typedef BaseType::MatrixValueType MatrixValueType
typedef BaseType::TranslationRefType TranslationRefType
typedef BaseType::ConstTranslationRefType ConstTranslationRefType
typedef BaseType::PerspectiveRefType PerspectiveRefType
typedef BaseType::ConstPerspectiveRefType ConstPerspectiveRefType
typedef BaseType::RotationRefType RotationRefType
typedef BaseType::ConstRotationRefType ConstRotationRefType
typedef cmnTypeTraits< value_typeTypeTraits
Public Types inherited from vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >
enum  
enum  
enum  
typedef vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > BaseType
typedef vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > ContainerType
typedef vctFrame4x4ConstBase< ContainerTypeThisType
typedef BaseType::RowValueType RowValueType
typedef BaseType::ColumnValueType ColumnValueType
typedef BaseType::RowRefType RowRefType
typedef BaseType::ColumnRefType ColumnRefType
typedef BaseType::ConstRowRefType ConstRowRefType
typedef BaseType::ConstColumnRefType ConstColumnRefType
typedef BaseType::DiagonalRefType DiagonalRefType
typedef BaseType::ConstDiagonalRefType ConstDiagonalRefType
typedef BaseType::RefTransposeType RefTransposeType
typedef BaseType::ConstRefTransposeType ConstRefTransposeType
typedef vctFrame4x4< value_type, COLSTRIDE<=ROWSTRIDEFrameValueType
typedef cmnTypeTraits< value_typeTypeTraits
typedef vctFixedSizeVectorRef< value_type, DIMENSION, ROWSTRIDETranslationRefType
typedef vctFixedSizeConstVectorRef< value_type, DIMENSION, ROWSTRIDEConstTranslationRefType
typedef vctFixedSizeVectorRef< value_type, DIMENSION, COLSTRIDEPerspectiveRefType
typedef vctFixedSizeConstVectorRef< value_type, DIMENSION, COLSTRIDEConstPerspectiveRefType
typedef vctMatrixRotation3Ref< value_type, ROWSTRIDE, COLSTRIDERotationRefType
typedef vctMatrixRotation3ConstRef< value_type, ROWSTRIDE, COLSTRIDEConstRotationRefType
Public Types inherited from vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor >
typedef vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows > MatrixTraits
typedef vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, _elementType, typename vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array > BaseType
typedef vctFixedSizeMatrix< _elementType, _rows, _cols, _rowMajor > ThisType
typedef MatrixTraits::iterator iterator
typedef MatrixTraits::const_iterator const_iterator
typedef MatrixTraits::reverse_iterator reverse_iterator
typedef MatrixTraits::const_reverse_iterator const_reverse_iterator
typedef class cmnTypeTraits< value_typeTypeTraits
typedef TypeTraits::VaArgPromotion ElementVaArgPromotion
Public Types inherited from vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >
enum  
enum  
typedef vctFixedSizeMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array > ThisType
typedef vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array > BaseType
typedef vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowStride, _colStride > MatrixTraits
typedef MatrixTraits::iterator iterator
typedef MatrixTraits::const_iterator const_iterator
typedef MatrixTraits::reverse_iterator reverse_iterator
typedef MatrixTraits::const_reverse_iterator const_reverse_iterator
typedef BaseType::RowRefType RowRefType
typedef BaseType::ColumnRefType ColumnRefType
typedef BaseType::ConstRowRefType ConstRowRefType
typedef BaseType::ConstColumnRefType ConstColumnRefType
typedef BaseType::DiagonalRefType DiagonalRefType
typedef BaseType::ConstDiagonalRefType ConstDiagonalRefType
typedef BaseType::RefTransposeType RefTransposeType
typedef BaseType::ConstRefTransposeType ConstRefTransposeType
typedef BaseType::RowValueType RowValueType
typedef BaseType::ColumnValueType ColumnValueType
Public Types inherited from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >
enum  
enum  
enum  
enum  
typedef vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array > ThisType
typedef vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowStride, _colStride > MatrixTraits
typedef MatrixTraits::iterator iterator
typedef MatrixTraits::const_iterator const_iterator
typedef MatrixTraits::reverse_iterator reverse_iterator
typedef MatrixTraits::const_reverse_iterator const_reverse_iterator
typedef vctFixedSizeConstVectorRef< _elementType, COLS, COLSTRIDEConstRowRefType
typedef vctFixedSizeVectorRef< _elementType, COLS, COLSTRIDERowRefType
typedef vctFixedSizeConstVectorRef< _elementType, ROWS, ROWSTRIDEConstColumnRefType
typedef vctFixedSizeVectorRef< _elementType, ROWS, ROWSTRIDEColumnRefType
typedef vctFixedSizeConstVectorRef< _elementType, DIAGONAL_LENGTH, DIAGONAL_STRIDEConstDiagonalRefType
typedef vctFixedSizeVectorRef< _elementType, DIAGONAL_LENGTH, DIAGONAL_STRIDEDiagonalRefType
typedef vctFixedSizeVector< _elementType, COLSRowValueType
typedef vctFixedSizeVector< _elementType, ROWSColumnValueType
typedef vctFixedSizeConstMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride > ConstRefType
typedef vctFixedSizeMatrixRef< _elementType, _rows, _cols, _rowStride, _colStride > RefType
typedef vctFixedSizeConstMatrixRef< _elementType, _cols, _rows, _colStride, _rowStride > ConstRefTransposeType
typedef vctFixedSizeMatrixRef< _elementType, _cols, _rows, _colStride, _rowStride > RefTransposeType
typedef vctFixedSizeMatrix< _elementType, COLS, ROWS, COLSTRIDE<=ROWSTRIDETransposeValueType
typedef vctFixedSizeMatrix< _elementType, ROWS, COLS, COLSTRIDE<=ROWSTRIDEMatrixValueType
typedef vctFixedSizeMatrix< bool, ROWS, COLS, COLSTRIDE<=ROWSTRIDEBoolMatrixValueType
typedef vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array DataType

Public Member Functions

 VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType)
 vctFrame4x4 (void)
 vctFrame4x4 (const ThisType &other)
ThisTypeoperator= (const ThisType &other)
template<bool __rowMajor>
 vctFrame4x4 (const vctFrame4x4< value_type, __rowMajor > &other)
template<bool __rowMajor>
ThisTypeoperator= (const vctFrame4x4< value_type, __rowMajor > &other)
template<class __containerType>
 vctFrame4x4 (const vctFrame4x4ConstBase< __containerType > &other)
template<class __containerType>
ThisTypeoperator= (const vctFrame4x4ConstBase< __containerType > &other)
 vctFrame4x4 (const ContainerType &other)
ThisTypeoperator= (const ContainerType &other)
template<class _rotationType, class _translationType>
 vctFrame4x4 (const _rotationType &rotation, const _translationType &translation)
template<class __containerType>
 vctFrame4x4 (const vctFrameBase< __containerType > &other)
template<class __containerType>
 vctFrame4x4 (const vctFrameBase< __containerType > &other, bool normalizeInput)
Public Member Functions inherited from vctFrame4x4Base< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >
 VCT_CONTAINER_TRAITS_TYPEDEFS (typename ContainerType::value_type)
 vctFrame4x4Base (void)
ConstTranslationRefType Translation (void) const
ConstRotationRefType Rotation (void) const
ConstPerspectiveRefType Perspective (void) const
ThisTypeFrom (const __rotationType &rotation, const __translationType &translation) CISST_THROW(std
ThisTypeFromNormalized (const __rotationType &rotation, const __translationType &translation)
ThisTypeFromRaw (const __rotationType &rotation, const __translationType &translation)
ThisTypeNormalizedSelf (void)
ThisTypeInverseSelf (void)
ThisTypeInverseOf (const vctFrame4x4ConstBase< __containerType > &otherFrame)
Public Member Functions inherited from vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >
 VCT_CONTAINER_TRAITS_TYPEDEFS (typename ContainerType::value_type)
 vctFrame4x4ConstBase (void)
ConstTranslationRefType Translation (void) const
ConstRotationRefType Rotation (void) const
ConstPerspectiveRefType Perspective (void) const
FrameValueType Inverse (void) const
bool IsNormalized (value_type tolerance=TypeTraits::Tolerance()) const
void ApplyTo (const vctFixedSizeConstVectorBase< DIMENSION, __stride1, value_type, __dataPtrType1 > &input, vctFixedSizeVectorBase< DIMENSION, __stride2, value_type, __dataPtrType2 > &output) const
void ApplyInverseTo (const vctFixedSizeConstVectorBase< DIMENSION, __stride1, value_type, __dataPtrType1 > &input, vctFixedSizeVectorBase< DIMENSION, __stride2, value_type, __dataPtrType2 > &output) const
bool Equal (const ThisType &other) const
bool operator== (const ThisType &other) const
bool AlmostEqual (const ThisType &other, value_type tolerance=TypeTraits::Tolerance()) const
bool AlmostEquivalent (const ThisType &other, value_type tolerance=TypeTraits::Tolerance()) const
Public Member Functions inherited from vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor >
 VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType)
 vctFixedSizeMatrix ()
ThisTypeoperator= (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, __elementType, __dataPtrType > &other)
Public Member Functions inherited from vctFixedSizeMatrixBase< _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >
 VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType)
iterator begin ()
iterator end ()
reverse_iterator rbegin ()
reverse_iterator rend ()
RowRefType operator[] (size_type index)
pointer Pointer (size_type rowIndex, size_type colIndex)
reference at (size_type index) CISST_THROW(std
reference operator() (size_type rowIndex, size_type colIndex) CISST_THROW(std
reference Element (size_type rowIndex, size_type colIndex)
RowRefType Row (size_type index)
ColumnRefType Column (size_type index)
DiagonalRefType Diagonal (void)
vctFixedSizeMatrixRef< _elementType, __subRows, __subCols, _rowStride, _colStride > Ref (const size_type startRow=0, const size_type startCol=0) CISST_THROW(std
void ExchangeRows (const size_type row1Index, const size_type row2Index)
void ExchangeColumns (const size_type col1Index, const size_type col2Index)
void SelectRowsFrom (const vctFixedSizeConstMatrixBase< __rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &inputMatrix, const vctFixedSizeConstVectorBase< _rows, __indexStride, index_type, __indexDataPtrType > &rowIndexVector)
void SelectColsFrom (const vctFixedSizeConstMatrixBase< _rows, __cols, __rowStride, __colStride, _elementType, __dataPtrType > &inputMatrix, const vctFixedSizeConstVectorBase< _cols, __indexStride, index_type, __indexDataPtrType > &colIndexVector)
void RowPermutationOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &inputMatrix, const index_type permutedRowIndexes[])
void RowInversePermutationOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &inputMatrix, const index_type permutedRowIndexes[])
void ColumnPermutationOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &inputMatrix, const index_type permutedColumnIndexes[])
void ColumnInversePermutationOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, _elementType, __dataPtrType > &inputMatrix, const index_type permutedColumnIndexes[])
value_type SetAll (const value_type value)
bool Zeros (void)
ThisTypeAssign (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, __elementType, __dataPtrType > &other)
ThisTypeForceAssign (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, __elementType, __dataPtrType > &other)
bool FastCopyOf (const vctDynamicConstMatrixBase< __matrixOwnerType, value_type > &source, bool performSafetyChecks=vctFastCopy::PerformChecks) CISST_THROW(std
RefTransposeType TransposeRef (void)
ThisTypeSumOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &input1Matrix, const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &input2Matrix)
ThisTypeDifferenceOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &input1Matrix, const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &input2Matrix)
ThisTypeElementwiseProductOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &input1Matrix, const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &input2Matrix)
ThisTypeElementwiseRatioOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &input1Matrix, const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &input2Matrix)
ThisTypeElementwiseMinOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &input1Matrix, const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &input2Matrix)
ThisTypeElementwiseMaxOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __input1RowStride, __input1ColStride, value_type, __input1DataPtrType > &input1Matrix, const vctFixedSizeConstMatrixBase< _rows, _cols, __input2RowStride, __input2ColStride, value_type, __input2DataPtrType > &input2Matrix)
ThisTypeAdd (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeSubtract (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeElementwiseMultiply (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeElementwiseDivide (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeElementwiseMin (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeElementwiseMax (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeoperator+= (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeoperator-= (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeProductOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &matrix, const value_type scalar)
ThisTypeRatioOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &matrix, const value_type scalar)
ThisTypeClippedAboveOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &matrix, const value_type upperBound)
ThisTypeClippedBelowOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &matrix, const value_type lowerBound)
ThisTypeMultiply (const value_type scalar)
ThisTypeDivide (const value_type scalar)
ThisTypeClipAbove (const value_type upperBound)
ThisTypeClipBelow (const value_type lowerBound)
ThisTypeoperator*= (const value_type scalar)
ThisTypeoperator/= (const value_type scalar)
ThisTypeAddProductOf (const value_type scalar, const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeAddElementwiseProductOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride1, __colStride1, value_type, __dataPtrType1 > &matrix1, const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride2, __colStride2, value_type, __dataPtrType2 > &matrix2)
ThisTypeAbsOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeNegationOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeFloorOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeCeilOf (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeTransposeOf (const vctFixedSizeConstMatrixBase< _cols, _rows, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix)
ThisTypeAbsSelf (void)
ThisTypeNegationSelf (void)
ThisTypeFloorSelf (void)
ThisTypeCeilSelf (void)
void OuterProductOf (const vctFixedSizeConstVectorBase< _rows, __stride1, _elementType, __dataPtrType1 > &columnVector, const vctFixedSizeConstVectorBase< _cols, __stride2, _elementType, __dataPtrType2 > &rowVector)
bool FromStreamRaw (std::istream &inputStream, const char delimiter=' ')
void DeSerializeRaw (std::istream &inputStream)
Public Member Functions inherited from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >
 VCT_CONTAINER_TRAITS_TYPEDEFS (_elementType)
 VCT_NARRAY_TRAITS_TYPEDEFS (DIMENSION)
const_iterator begin () const
const_iterator end () const
const_reverse_iterator rbegin () const
const_reverse_iterator rend () const
size_type size () const
const nsize_type & sizes (void) const
size_type rows () const
size_type cols () const
size_type max_size () const
const nstride_type & strides (void) const
difference_type row_stride () const
difference_type col_stride () const
bool empty () const
ConstRowRefType operator[] (size_type index) const
const_pointer Pointer (size_type rowIndex, size_type colIndex) const
bool ValidIndex (size_type index) const
bool ValidRowIndex (size_type rowIndex) const
bool ValidColIndex (size_type colIndex) const
const_reference at (size_type index) const CISST_THROW(std
const_reference operator() (size_type rowIndex, size_type colIndex) const CISST_THROW(std
const_reference Element (size_type rowIndex, size_type colIndex) const
ConstRowRefType Row (size_type index) const
ConstColumnRefType Column (size_type index) const
ConstDiagonalRefType Diagonal (void) const
vctFixedSizeConstMatrixRef< _elementType, __subRows, __subCols, _rowStride, _colStride > Ref (const size_type startRow=0, const size_type startCol=0) const CISST_THROW(std
value_type SumOfElements () const
value_type ProductOfElements () const
value_type Trace (void) const
value_type NormSquare (void) const
NormType Norm (void) const
value_type L1Norm (void) const
value_type LinfNorm (void) const
value_type MaxElement (void) const
value_type MinElement (void) const
value_type MaxAbsElement (void) const
value_type MinAbsElement (void) const
void MinAndMaxElement (value_type &minElement, value_type &maxElement) const
bool IsPositive (void) const
bool IsNonNegative (void) const
bool IsNonPositive (void) const
bool IsNegative (void) const
bool All (void) const
bool Any (void) const
bool IsFinite (void) const
bool HasNaN (void) const
bool IsColMajor (void) const
bool IsRowMajor (void) const
bool IsCompact (void) const
bool IsFortran (void) const
bool StorageOrder (void) const
bool IsSquare (void) const
bool FastCopyCompatible (const vctFixedSizeConstMatrixBase< __rows, __cols, __rowStride, __colStride, value_type, __dataPtrType > &source) const
bool Equal (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
bool operator== (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
bool AlmostEqual (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix, value_type tolerance) const
bool NotEqual (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
bool operator!= (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
bool Lesser (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
bool LesserOrEqual (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
bool Greater (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
bool GreaterOrEqual (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
BoolMatrixValueType ElementwiseEqual (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
BoolMatrixValueType ElementwiseNotEqual (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
BoolMatrixValueType ElementwiseLesser (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
BoolMatrixValueType ElementwiseLesserOrEqual (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
BoolMatrixValueType ElementwiseGreater (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
BoolMatrixValueType ElementwiseGreaterOrEqual (const vctFixedSizeConstMatrixBase< _rows, _cols, __rowStride, __colStride, value_type, __dataPtrType > &otherMatrix) const
MatrixValueType Abs (void) const
MatrixValueType Negation (void) const
MatrixValueType Floor (void) const
MatrixValueType Ceil (void) const
ConstRefTransposeType TransposeRef (void) const
TransposeValueType Transpose () const
std::string ToString (void) const
void ToStream (std::ostream &outputStream) const
void ToStreamRaw (std::ostream &outputStream, const char delimiter=' ', bool headerOnly=false, const std::string &headerPrefix="") const
void SerializeRaw (std::ostream &outputStream) const

Additional Inherited Members

Static Public Member Functions inherited from vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >
static CISST_EXPORT const FrameValueTypeIdentity (void)
static const MatrixValueTypeEye (void)
Protected Member Functions inherited from vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >
void UpdateReferences (void)
Protected Member Functions inherited from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >
void ThrowUnlessValidIndex (size_type index) const CISST_THROW(std
Protected Attributes inherited from vctFrame4x4ConstBase< vctFixedSizeMatrix< _elementType, 4, 4, _rowMajor > >
RotationRefType RotationRef
TranslationRefType TranslationRef
PerspectiveRefType PerspectiveRef
Protected Attributes inherited from vctFixedSizeConstMatrixBase< _rows, _cols, _rowStride, _colStride, _elementType, vctFixedSizeMatrixTraits< _elementType, _rows, _cols, _rowMajor?_cols:1, _rowMajor?1:_rows >::array >
DataType Data

Detailed Description

template<class _elementType, bool _rowMajor>
class vctFrame4x4< _elementType, _rowMajor >

Template base class for a 4x4 frame.

This class allows to use a 4 by 4 matrix as a frame in 3D. This is a limited case of the so called homegenous transformations as this class is intended to support only the translation and rotation parts of the transformation. It is not intended to support perspective or scaling operations. The different constructors and normalization methods provided will set the last row to [0 0 0 1].

Parameters
_matrixTypeThe type of matrix used to store the elements
See also
vctDynamicMatrix, vctFixedSizeMatrix, vctFrameBase

Member Typedef Documentation

◆ BaseType

template<class _elementType, bool _rowMajor>
typedef vctFrame4x4Base<ContainerType> vctFrame4x4< _elementType, _rowMajor >::BaseType

◆ ContainerType

template<class _elementType, bool _rowMajor>
typedef vctFixedSizeMatrix<value_type, ROWS, COLS, _rowMajor> vctFrame4x4< _elementType, _rowMajor >::ContainerType

◆ ThisType

template<class _elementType, bool _rowMajor>
typedef vctFrame4x4<value_type, _rowMajor> vctFrame4x4< _elementType, _rowMajor >::ThisType

◆ TypeTraits

template<class _elementType, bool _rowMajor>
typedef cmnTypeTraits<value_type> vctFrame4x4< _elementType, _rowMajor >::TypeTraits

Traits used for all useful types and values related to the element type.

Member Enumeration Documentation

◆ anonymous enum

template<class _elementType, bool _rowMajor>
anonymous enum
Enumerator
DIMENSION 

◆ anonymous enum

template<class _elementType, bool _rowMajor>
anonymous enum
Enumerator
ROWS 
COLS 

Constructor & Destructor Documentation

◆ vctFrame4x4() [1/8]

template<class _elementType, bool _rowMajor>
vctFrame4x4< _elementType, _rowMajor >::vctFrame4x4 ( void )
inline

Default constructor. Sets the matrix to identity.

◆ vctFrame4x4() [2/8]

template<class _elementType, bool _rowMajor>
vctFrame4x4< _elementType, _rowMajor >::vctFrame4x4 ( const ThisType & other)
inline

Copy constructor. Uses Assign.

◆ vctFrame4x4() [3/8]

template<class _elementType, bool _rowMajor>
template<bool __rowMajor>
vctFrame4x4< _elementType, _rowMajor >::vctFrame4x4 ( const vctFrame4x4< value_type, __rowMajor > & other)
inline

Copy constructor with different storage order, uses Assign

◆ vctFrame4x4() [4/8]

template<class _elementType, bool _rowMajor>
template<class __containerType>
vctFrame4x4< _elementType, _rowMajor >::vctFrame4x4 ( const vctFrame4x4ConstBase< __containerType > & other)
inline

Copy constructor from vctFrame4x4ConstBase with a different container type. Uses Assign.

◆ vctFrame4x4() [5/8]

template<class _elementType, bool _rowMajor>
vctFrame4x4< _elementType, _rowMajor >::vctFrame4x4 ( const ContainerType & other)
inline

Copy constructor from ContainerType. Uses Assign.

◆ vctFrame4x4() [6/8]

template<class _elementType, bool _rowMajor>
template<class _rotationType, class _translationType>
vctFrame4x4< _elementType, _rowMajor >::vctFrame4x4 ( const _rotationType & rotation,
const _translationType & translation )
inline

Constructor from a translation and a rotation.

◆ vctFrame4x4() [7/8]

template<class _elementType, bool _rowMajor>
template<class __containerType>
vctFrame4x4< _elementType, _rowMajor >::vctFrame4x4 ( const vctFrameBase< __containerType > & other)
inlineexplicit

Constructor from a vctFrameBase. This constructor uses the method From which will test if the input is normalized. If the input is not normalized it will throw an exception of type std::runtime_error.

◆ vctFrame4x4() [8/8]

template<class _elementType, bool _rowMajor>
template<class __containerType>
vctFrame4x4< _elementType, _rowMajor >::vctFrame4x4 ( const vctFrameBase< __containerType > & other,
bool normalizeInput )
inline

Constructor from a vctFrameBase. This constructor uses the method FromNormalized or FromRaw based on the second argument (use VCT_NORMALIZE or VCT_DO_NOT_NORMALIZE).

Member Function Documentation

◆ operator=() [1/4]

template<class _elementType, bool _rowMajor>
ThisType & vctFrame4x4< _elementType, _rowMajor >::operator= ( const ContainerType & other)
inline

◆ operator=() [2/4]

template<class _elementType, bool _rowMajor>
ThisType & vctFrame4x4< _elementType, _rowMajor >::operator= ( const ThisType & other)
inline

◆ operator=() [3/4]

template<class _elementType, bool _rowMajor>
template<bool __rowMajor>
ThisType & vctFrame4x4< _elementType, _rowMajor >::operator= ( const vctFrame4x4< value_type, __rowMajor > & other)
inline

◆ operator=() [4/4]

template<class _elementType, bool _rowMajor>
template<class __containerType>
ThisType & vctFrame4x4< _elementType, _rowMajor >::operator= ( const vctFrame4x4ConstBase< __containerType > & other)
inline

◆ VCT_CONTAINER_TRAITS_TYPEDEFS()

template<class _elementType, bool _rowMajor>
vctFrame4x4< _elementType, _rowMajor >::VCT_CONTAINER_TRAITS_TYPEDEFS ( _elementType )

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