VTK  9.2.6
Classes | Macros
vtkQuaternion.h File Reference
#include "vtkTuple.h"
#include "vtkQuaternion.txx"
Include dependency graph for vtkQuaternion.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  vtkQuaternion< T >
 templated base type for storage of quaternions. More...
 
class  vtkQuaternionf
 
class  vtkQuaterniond
 

Macros

#define vtkQuaternionIdentity(quaternionType, type)
 Several macros to define the various operator overloads for the quaternions. More...
 
#define vtkQuaternionNormalized(quaternionType, type)
 
#define vtkQuaternionConjugated(quaternionType, type)
 
#define vtkQuaternionInverse(quaternionType, type)
 
#define vtkQuaternionUnitLog(quaternionType, type)
 
#define vtkQuaternionUnitExp(quaternionType, type)
 
#define vtkQuaternionNormalizedWithAngleInDegrees(quaternionType, type)
 
#define vtkQuaternionSlerp(quaternionType, type)
 
#define vtkQuaternionInnerPoint(quaternionType, type)
 
#define vtkQuaternionOperatorPlus(quaternionType, type)
 
#define vtkQuaternionOperatorMinus(quaternionType, type)
 
#define vtkQuaternionOperatorMultiply(quaternionType, type)
 
#define vtkQuaternionOperatorMultiplyScalar(quaternionType, type)
 
#define vtkQuaternionOperatorDivide(quaternionType, type)
 
#define vtkQuaternionOperatorDivideScalar(quaternionType, type)
 
#define vtkQuaternionOperatorMacro(quaternionType, type)
 

Macro Definition Documentation

#define vtkQuaternionIdentity (   quaternionType,
  type 
)
Value:
quaternionType Identity() const \
{ \
return quaternionType(vtkQuaternion<type>::Identity().GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Several macros to define the various operator overloads for the quaternions.

These are necessary for the derived classes that are commonly used.

Definition at line 301 of file vtkQuaternion.h.

#define vtkQuaternionNormalized (   quaternionType,
  type 
)
Value:
quaternionType Normalized() const \
{ \
return quaternionType(vtkQuaternion<type>::Normalized().GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 306 of file vtkQuaternion.h.

#define vtkQuaternionConjugated (   quaternionType,
  type 
)
Value:
quaternionType Conjugated() const \
{ \
return quaternionType(vtkQuaternion<type>::Conjugated().GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 311 of file vtkQuaternion.h.

#define vtkQuaternionInverse (   quaternionType,
  type 
)
Value:
quaternionType Inverse() const \
{ \
return quaternionType(vtkQuaternion<type>::Inverse().GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 316 of file vtkQuaternion.h.

#define vtkQuaternionUnitLog (   quaternionType,
  type 
)
Value:
quaternionType UnitLog() const \
{ \
return quaternionType(vtkQuaternion<type>::UnitLog().GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 321 of file vtkQuaternion.h.

#define vtkQuaternionUnitExp (   quaternionType,
  type 
)
Value:
quaternionType UnitExp() const \
{ \
return quaternionType(vtkQuaternion<type>::UnitExp().GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 326 of file vtkQuaternion.h.

#define vtkQuaternionNormalizedWithAngleInDegrees (   quaternionType,
  type 
)
Value:
quaternionType NormalizedWithAngleInDegrees() const \
{ \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 331 of file vtkQuaternion.h.

#define vtkQuaternionSlerp (   quaternionType,
  type 
)
Value:
quaternionType Slerp(type t, const quaternionType& q) const \
{ \
return quaternionType(vtkQuaternion<type>::Slerp(t, q).GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 336 of file vtkQuaternion.h.

#define vtkQuaternionInnerPoint (   quaternionType,
  type 
)
Value:
quaternionType InnerPoint(const quaternionType& q1, const quaternionType& q2) const \
{ \
return quaternionType(vtkQuaternion<type>::InnerPoint(q1, q2).GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 341 of file vtkQuaternion.h.

#define vtkQuaternionOperatorPlus (   quaternionType,
  type 
)
Value:
inline quaternionType operator+(const quaternionType& q) const \
{ \
return quaternionType( \
(static_cast<vtkQuaternion<type>>(*this) + static_cast<vtkQuaternion<type>>(q)).GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkVector< A, Size > operator+(const vtkVector< A, Size > &v1, const vtkVector< A, Size > &v2)
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 346 of file vtkQuaternion.h.

#define vtkQuaternionOperatorMinus (   quaternionType,
  type 
)
Value:
inline quaternionType operator-(const quaternionType& q) const \
{ \
return quaternionType( \
(static_cast<vtkQuaternion<type>>(*this) - static_cast<vtkQuaternion<type>>(q)).GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.
vtkVector< A, Size > operator-(const vtkVector< A, Size > &v)

Definition at line 352 of file vtkQuaternion.h.

#define vtkQuaternionOperatorMultiply (   quaternionType,
  type 
)
Value:
inline quaternionType operator*(const quaternionType& q) const \
{ \
return quaternionType( \
(static_cast<vtkQuaternion<type>>(*this) * static_cast<vtkQuaternion<type>>(q)).GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.
vtkVector< A, Size > operator*(const vtkVector< A, Size > &v1, const vtkVector< A, Size > &v2)

Definition at line 358 of file vtkQuaternion.h.

#define vtkQuaternionOperatorMultiplyScalar (   quaternionType,
  type 
)
Value:
inline quaternionType operator*(const type& scalar) const \
{ \
return quaternionType((static_cast<vtkQuaternion<type>>(*this) * scalar).GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.
vtkVector< A, Size > operator*(const vtkVector< A, Size > &v1, const vtkVector< A, Size > &v2)

Definition at line 364 of file vtkQuaternion.h.

#define vtkQuaternionOperatorDivide (   quaternionType,
  type 
)
Value:
inline quaternionType operator/(const quaternionType& q) const \
{ \
return quaternionType( \
(static_cast<vtkQuaternion<type>>(*this) / static_cast<vtkQuaternion<type>>(q)).GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkVector< A, Size > operator/(const vtkVector< A, Size > &v1, const vtkVector< A, Size > &v2)
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 369 of file vtkQuaternion.h.

#define vtkQuaternionOperatorDivideScalar (   quaternionType,
  type 
)
Value:
inline quaternionType operator/(const type& scalar) const \
{ \
return quaternionType((static_cast<vtkQuaternion<type>>(*this) / scalar).GetData()); \
}
templated base type for storage of quaternions.
Definition: vtkQuaternion.h:42
vtkVector< A, Size > operator/(const vtkVector< A, Size > &v1, const vtkVector< A, Size > &v2)
vtkSmartPointer< vtkDataArray > GetData(const Ioss::GroupingEntity *entity, const std::string &fieldname, Ioss::Transform *transform=nullptr, Cache *cache=nullptr, const std::string &cachekey=std::string())
Returns a VTK array for a given field (fieldname) on the chosen block (or set) entity.

Definition at line 375 of file vtkQuaternion.h.

#define vtkQuaternionOperatorMacro (   quaternionType,
  type 
)
Value:
vtkQuaternionIdentity(quaternionType, type); \
vtkQuaternionNormalized(quaternionType, type); \
vtkQuaternionConjugated(quaternionType, type); \
vtkQuaternionInverse(quaternionType, type); \
vtkQuaternionUnitLog(quaternionType, type); \
vtkQuaternionUnitExp(quaternionType, type); \
vtkQuaternionSlerp(quaternionType, type); \
vtkQuaternionInnerPoint(quaternionType, type); \
#define vtkQuaternionOperatorDivide(quaternionType, type)
#define vtkQuaternionOperatorMultiply(quaternionType, type)
#define vtkQuaternionOperatorDivideScalar(quaternionType, type)
#define vtkQuaternionOperatorMinus(quaternionType, type)
#define vtkQuaternionSlerp(quaternionType, type)
#define vtkQuaternionIdentity(quaternionType, type)
Several macros to define the various operator overloads for the quaternions.
#define vtkQuaternionOperatorMultiplyScalar(quaternionType, type)
#define vtkQuaternionInverse(quaternionType, type)
#define vtkQuaternionNormalized(quaternionType, type)
#define vtkQuaternionConjugated(quaternionType, type)
#define vtkQuaternionOperatorPlus(quaternionType, type)
#define vtkQuaternionUnitExp(quaternionType, type)
#define vtkQuaternionNormalizedWithAngleInDegrees(quaternionType, type)
#define vtkQuaternionUnitLog(quaternionType, type)
#define vtkQuaternionInnerPoint(quaternionType, type)

Definition at line 381 of file vtkQuaternion.h.