22#ifndef _vctBarycentricVector_h
23#define _vctBarycentricVector_h
68template <
class _elementType, vct::
size_type _size>
94 template <str
ide_type __str
ide,
class __dataPtrType>
108 :
BaseType(element0, element1, element2)
112 _elementType element3)
113 :
BaseType(element0, element1, element2, element3)
119 _elementType element3, _elementType element4, ...)
121 (*this)[0] = element0;
122 (*this)[1] = element1;
123 (*this)[2] = element2;
124 (*this)[3] = element3;
125 (*this)[4] = element4;
127 va_start(nextArg, element4);
128 for (index_type i = 5; i < _size; ++i) {
139 return ( (-tolerance <= diff) && (diff <= tolerance) );
148 const bool result = ((*this).GreaterOrEqual(tolerance));
158 const bool result = ((*this).GreaterOrEqual(-tolerance));
167 vctFixedSizeVectorRecursiveEngines<_size>::template
170 Unfold( (*
this), tolerance );
185 const ThisType diff((*
this) - _elementType(1));
186 return (diff.
HasZero(tolerance));
197 if ( (-tolerance <= scale) && (scale <= tolerance) )
Implement operation of the form for fixed size vectors.
Definition vctFixedSizeVectorRecursiveEngines.h:785
A collection of useful information about the C++ basic types, represented in a generic programming wa...
Definition cmnTypeTraits.h:155
static Type Tolerance(void)
Definition cmnTypeTraits.h:170
vctBarycentricVector()
Definition vctBarycentricVector.h:79
bool HasZero(const _elementType tolerance=TypeTraits::Tolerance()) const
Definition vctBarycentricVector.h:164
bool IsInterior(const _elementType tolerance=TypeTraits::Tolerance()) const
Definition vctBarycentricVector.h:144
vctBarycentricVector(_elementType element0, _elementType element1, _elementType element2)
Definition vctBarycentricVector.h:107
vctBarycentricVector(const vctFixedSizeVectorBase< _size, __stride, _elementType, __dataPtrType > &other)
Definition vctBarycentricVector.h:95
vctBarycentricVector(_elementType value)
Definition vctBarycentricVector.h:99
bool IsVertex(const _elementType tolerance=TypeTraits::Tolerance()) const
Definition vctBarycentricVector.h:181
vctBarycentricVector(const BaseType &other)
Definition vctBarycentricVector.h:89
vctBarycentricVector(_elementType element0, _elementType element1, _elementType element2, _elementType element3, _elementType element4,...)
Definition vctBarycentricVector.h:118
vctBarycentricVector(const ThisType &other)
Definition vctBarycentricVector.h:84
vctBarycentricVector(_elementType element0, _elementType element1)
Definition vctBarycentricVector.h:103
bool IsMember(const _elementType tolerance=TypeTraits::Tolerance()) const
Definition vctBarycentricVector.h:154
class cmnTypeTraits< value_type > TypeTraits
Definition vctBarycentricVector.h:76
VCT_CONTAINER_TRAITS_TYPEDEFS(_elementType)
vctBarycentricVector(_elementType element0, _elementType element1, _elementType element2, _elementType element3)
Definition vctBarycentricVector.h:111
vctFixedSizeVector< _elementType, _size > BaseType
Definition vctBarycentricVector.h:72
bool IsBoundary(const _elementType tolerance=TypeTraits::Tolerance()) const
Definition vctBarycentricVector.h:174
bool IsBarycentric(const _elementType tolerance=TypeTraits::Tolerance()) const
Definition vctBarycentricVector.h:136
ThisType ScaleToBarycentric(const _elementType tolerance=TypeTraits::Tolerance()) const
Definition vctBarycentricVector.h:194
vctBarycentricVector< _elementType, _size > ThisType
Definition vctBarycentricVector.h:73
Test if the first argument is bound by the second argument.
Definition vctBinaryOperations.h:454
A template for a fixed length vector with fixed spacing in memory.
Definition vctFixedSizeVectorBase.h:77
vctFixedSizeVector()
Definition vctFixedSizeVector.h:76
Declaration of the class cmnTypeTraits.
value_type SumOfElements(void) const
Definition vctDynamicConstMatrixBase.h:432
Declaration of vctFixedSizeVector.