Vector-tensor class used to perform translations and rotations in 3D space. More...
#include <vectorTensorTransform.H>

Public Member Functions | |
| vectorTensorTransform (const vectorTensorTransform &)=default | |
| Copy construct. | |
| vectorTensorTransform & | operator= (const vectorTensorTransform &)=default |
| Copy assignment. | |
| vectorTensorTransform () | |
| Default construct - no translation, identity rotation. | |
| vectorTensorTransform (const vector &t, const tensor &R, bool hasR=true) | |
| Construct given a translation vector, rotation tensor and hasR bool. | |
| vectorTensorTransform (const vector &t) | |
| Construct a pure translation vectorTensorTransform given a translation vector. | |
| vectorTensorTransform (const tensor &R) | |
| Construct a pure rotation vectorTensorTransform given a rotation tensor. | |
| vectorTensorTransform (Istream &) | |
| Construct from Istream. | |
| bool | hasR () const noexcept |
| True if it has a non-identity rotation tensor. | |
| const vector & | t () const noexcept |
| The translation vector. | |
| const tensor & | R () const noexcept |
| The (forward) rotation tensor. | |
| vector & | t () noexcept |
| Non-const access to the translation vector. | |
| tensor & | R () noexcept |
| Non-const access to the rotation tensor. Sets hasR = true. | |
| void | checkRotation (const scalar tol=ROOTVSMALL) |
| Test for identity rotation and set hasR accordingly. | |
| vector | transformPosition (const vector &v) const |
| Transform the given position. | |
| pointField | transformPosition (const pointField &pts) const |
| Transform the given field of points. | |
| void | transformPositionList (UList< point > &pts) const |
| Inplace transform the given points. | |
| vector | invTransformPosition (const vector &v) const |
| Inverse transform the given position. | |
| pointField | invTransformPosition (const pointField &pts) const |
| Inverse transform the given field of points. | |
| void | invTransformPositionList (UList< point > &pts) const |
| Inplace inverse transform the given points. | |
| template<class Type> | |
| tmp< Field< Type > > | transform (const Field< Type > &fld) const |
| Transform the given field. | |
| template<class Type> | |
| void | transformList (UList< Type > &fld) const |
| Inplace transform the given field. | |
| void | operator&= (const vectorTensorTransform &) |
| void | operator= (const vector &) |
| Assign translation. | |
| void | operator+= (const vector &) |
| void | operator-= (const vector &) |
| void | operator= (const tensor &) |
| void | operator&= (const tensor &) |
Static Public Attributes | |
| static const char *const | typeName |
| static const vectorTensorTransform | zero |
| static const vectorTensorTransform | I |
Friends | |
| Istream & | operator>> (Istream &is, vectorTensorTransform &) |
| Ostream & | operator<< (Ostream &os, const vectorTensorTransform &C) |
Vector-tensor class used to perform translations and rotations in 3D space.
Definition at line 59 of file vectorTensorTransform.H.
|
default |
Copy construct.
References vectorTensorTransform().
Referenced by operator&=(), operator<<, operator=(), operator>>, transformList(), and vectorTensorTransform().


|
inline |
Default construct - no translation, identity rotation.
Definition at line 24 of file vectorTensorTransformI.H.
References I, and Foam::Zero.
Construct given a translation vector, rotation tensor and hasR bool.
Definition at line 32 of file vectorTensorTransformI.H.
References hasR(), R(), and t().

|
inlineexplicit |
Construct a pure translation vectorTensorTransform given a translation vector.
Definition at line 45 of file vectorTensorTransformI.H.

|
inlineexplicit |
Construct a pure rotation vectorTensorTransform given a rotation tensor.
Definition at line 53 of file vectorTensorTransformI.H.
References R(), and Foam::Zero.

|
explicit |
Construct from Istream.
Definition at line 49 of file vectorTensorTransform.C.
|
default |
Copy assignment.
References hasR(), R(), t(), and vectorTensorTransform().

|
inlinenoexcept |
True if it has a non-identity rotation tensor.
Definition at line 150 of file vectorTensorTransform.H.
References Foam::noexcept.
Referenced by globalIndexAndTransform::addToTransformIndex(), globalIndexAndTransform::globalIndexAndTransform(), Foam::operator&(), operator=(), and vectorTensorTransform().

|
inlinenoexcept |
The translation vector.
Definition at line 155 of file vectorTensorTransform.H.
References Foam::noexcept.
Referenced by globalIndexAndTransform::addToTransformIndex(), globalIndexAndTransform::globalIndexAndTransform(), invTransformPosition(), invTransformPosition(), invTransformPositionList(), Foam::operator&(), operator+=(), operator-=(), operator=(), operator=(), Foam::operator==(), transformPosition(), transformPosition(), transformPositionList(), vectorTensorTransform(), and vectorTensorTransform().

|
inlinenoexcept |
The (forward) rotation tensor.
Definition at line 160 of file vectorTensorTransform.H.
References Foam::noexcept.
Referenced by globalIndexAndTransform::addToTransformIndex(), globalIndexAndTransform::globalIndexAndTransform(), Foam::operator&(), operator&=(), operator=(), operator=(), Foam::operator==(), vectorTensorTransform(), and vectorTensorTransform().

|
inlinenoexcept |
Non-const access to the translation vector.
Definition at line 168 of file vectorTensorTransform.H.
References Foam::noexcept.
|
inlinenoexcept |
Non-const access to the rotation tensor. Sets hasR = true.
Definition at line 63 of file vectorTensorTransformI.H.
References Foam::noexcept.
| void checkRotation | ( | const scalar | tol = ROOTVSMALL | ) |
Test for identity rotation and set hasR accordingly.
Definition at line 57 of file vectorTensorTransform.C.
References Foam::mag().

|
inline |
Transform the given position.
Definition at line 73 of file vectorTensorTransformI.H.

|
inline |
Transform the given field of points.
Definition at line 89 of file vectorTensorTransformI.H.

|
inline |
Inverse transform the given position.
Definition at line 130 of file vectorTensorTransformI.H.

|
inline |
Inverse transform the given field of points.
Definition at line 146 of file vectorTensorTransformI.H.

Transform the given field.
References fld(), and transform().
Referenced by transform().


| void transformList | ( | UList< Type > & | fld | ) | const |
Inplace transform the given field.
References fld(), transformList(), and vectorTensorTransform().
Referenced by transformList().


|
inline |
Definition at line 191 of file vectorTensorTransformI.H.
References Foam::tr(), and vectorTensorTransform().

|
inline |
Assign translation.
Definition at line 205 of file vectorTensorTransformI.H.
References t().

|
inline |
Definition at line 211 of file vectorTensorTransformI.H.
References t().

|
inline |
Definition at line 217 of file vectorTensorTransformI.H.
References t().

|
inline |
Definition at line 223 of file vectorTensorTransformI.H.
References R().

|
inline |
Definition at line 231 of file vectorTensorTransformI.H.
References R().

|
friend |
References vectorTensorTransform().
|
friend |
References os(), and vectorTensorTransform().
|
static |
Definition at line 86 of file vectorTensorTransform.H.
|
static |
Definition at line 88 of file vectorTensorTransform.H.
|
static |
Definition at line 90 of file vectorTensorTransform.H.
Referenced by vectorTensorTransform(), and vectorTensorTransform().