Vector-tensor class used to perform translations and rotations in 3D space. More...
Public Member Functions | |
vectorTensorTransform () | |
Construct null. More... | |
vectorTensorTransform (const vector &t, const tensor &R, bool hasR=true) | |
Construct given a translation vector, rotation tensor and. More... | |
vectorTensorTransform (const vector &t) | |
Construct a pure translation vectorTensorTransform given a. More... | |
vectorTensorTransform (const tensor &R) | |
Construct a pure rotation vectorTensorTransform given a. More... | |
vectorTensorTransform (Istream &) | |
Construct from Istream. More... | |
const vector & | t () const |
const tensor & | R () const |
bool | hasR () const |
vector & | t () |
tensor & | R () |
vector | transformPosition (const vector &v) const |
Transform the given position. More... | |
pointField | transformPosition (const pointField &pts) const |
Transform the given pointField. More... | |
vector | invTransformPosition (const vector &v) const |
Inverse transform the given position. More... | |
pointField | invTransformPosition (const pointField &pts) const |
Inverse transform the given pointField. More... | |
template<class Type > | |
Type | transform (const Type &) const |
Transform the given type. More... | |
template<class Type > | |
tmp< Field< Type > > | transform (const Field< Type > &) const |
Transform the given field. More... | |
template<class Type > | |
Type | invTransform (const Type &) const |
Inverse transform the given type. More... | |
template<class Type > | |
tmp< Field< Type > > | invTransform (const Field< Type > &) const |
Inverse transform the given field. More... | |
void | operator &= (const vectorTensorTransform &) |
void | operator= (const vector &) |
void | operator+= (const vector &) |
void | operator-= (const vector &) |
void | operator= (const tensor &) |
void | operator &= (const tensor &) |
template<> | |
Foam::tmp< Foam::Field< bool > > | transform (const Field< bool > &fld) const |
template<> | |
Foam::tmp< Foam::Field< Foam::label > > | transform (const Field< label > &fld) const |
template<> | |
Foam::tmp< Foam::Field< Foam::scalar > > | transform (const Field< scalar > &fld) const |
template<> | |
tmp< Field< bool > > | transform (const Field< bool > &) const |
Template specialisations. More... | |
template<> | |
tmp< Field< label > > | transform (const Field< label > &) const |
template<> | |
tmp< Field< scalar > > | transform (const Field< scalar > &) const |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | transform (const Field< Type > &fld) const |
template<class Type > | |
Foam::tmp< Foam::Field< Type > > | invTransform (const Field< Type > &fld) const |
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 &) |
Vector-tensor class used to perform translations and rotations in 3D space.
Definition at line 62 of file vectorTensorTransform.H.
|
inline |
Construct null.
Definition at line 28 of file vectorTensorTransformI.H.
Referenced by Foam::inv(), Foam::operator+(), and Foam::operator-().
|
inline |
Construct given a translation vector, rotation tensor and.
hasR bool
Definition at line 37 of file vectorTensorTransformI.H.
|
inlineexplicit |
Construct a pure translation vectorTensorTransform given a.
translation vector
Definition at line 49 of file vectorTensorTransformI.H.
|
inlineexplicit |
Construct a pure rotation vectorTensorTransform given a.
rotation tensor
Definition at line 57 of file vectorTensorTransformI.H.
vectorTensorTransform | ( | Istream & | is | ) |
Construct from Istream.
Definition at line 53 of file vectorTensorTransform.C.
|
inline |
Definition at line 67 of file vectorTensorTransformI.H.
Referenced by globalIndexAndTransform::addToTransformIndex(), Foam::contiguous< vectorTensorTransform >(), globalIndexAndTransform::globalIndexAndTransform(), particle< Type >::hitCyclicAMIPatch(), Foam::inv(), vectorTensorTransform::invTransformPosition(), Foam::name(), Foam::operator+(), vectorTensorTransform::operator+=(), Foam::operator-(), vectorTensorTransform::operator-=(), Foam::operator<<(), vectorTensorTransform::operator=(), Foam::operator==(), particle< Type >::prepareForInteractionListReferral(), and vectorTensorTransform::transformPosition().
|
inline |
Definition at line 73 of file vectorTensorTransformI.H.
Referenced by globalIndexAndTransform::addToTransformIndex(), globalIndexAndTransform::globalIndexAndTransform(), particle< Type >::hitCyclicAMIPatch(), Foam::inv(), vectorTensorTransform::invTransform(), vectorTensorTransform::invTransformPosition(), Foam::name(), mapDistribute::transform::operator()(), transformOp< PrimitivePatchType, Type, TrackingData >::operator()(), Foam::operator+(), Foam::operator-(), Foam::operator<<(), vectorTensorTransform::operator=(), Foam::operator==(), particle< Type >::prepareForInteractionListReferral(), vectorTensorTransform::transform(), FaceCellWave< Type, TrackingData >::transform(), and vectorTensorTransform::transformPosition().
|
inline |
Definition at line 79 of file vectorTensorTransformI.H.
Referenced by globalIndexAndTransform::addToTransformIndex(), globalIndexAndTransform::globalIndexAndTransform(), particle< Type >::hitCyclicAMIPatch(), Foam::inv(), Foam::operator+(), Foam::operator-(), Foam::operator<<(), particle< Type >::prepareForInteractionListReferral(), and FaceCellWave< Type, TrackingData >::transform().
|
inline |
Definition at line 85 of file vectorTensorTransformI.H.
|
inline |
Definition at line 91 of file vectorTensorTransformI.H.
References vectorTensorTransform::transformPosition().
|
inline |
Transform the given position.
Definition at line 103 of file vectorTensorTransformI.H.
References vectorTensorTransform::R(), and vectorTensorTransform::t().
Referenced by mapDistribute::transformPosition::operator()(), vectorTensorTransform::R(), and cyclicRepeatAMIPolyPatch::resetAMI().
|
inline |
Transform the given pointField.
Definition at line 119 of file vectorTensorTransformI.H.
References vectorTensorTransform::invTransformPosition(), vectorTensorTransform::R(), and vectorTensorTransform::t().
|
inline |
Inverse transform the given position.
Definition at line 138 of file vectorTensorTransformI.H.
References vectorTensorTransform::R(), Foam::T(), and vectorTensorTransform::t().
Referenced by mapDistribute::transformPosition::operator()(), particle< Type >::prepareForInteractionListReferral(), and vectorTensorTransform::transformPosition().
|
inline |
Inverse transform the given pointField.
Definition at line 154 of file vectorTensorTransformI.H.
References vectorTensorTransform::R(), vectorTensorTransform::t(), Tensor< Cmpt >::T(), and Foam::tr().
Type transform | ( | const Type & | x | ) | const |
Transform the given type.
Definition at line 29 of file vectorTensorTransformTemplates.C.
References vectorTensorTransform::R(), Foam::transform(), and x.
Referenced by Foam::contiguous< vectorTensorTransform >(), Foam::name(), and vectorTensorTransform::transform().
Type invTransform | ( | const Type & | x | ) | const |
Inverse transform the given type.
Definition at line 60 of file vectorTensorTransformTemplates.C.
References vectorTensorTransform::R(), Foam::T(), Foam::transform(), and x.
|
inline |
|
inline |
Definition at line 188 of file vectorTensorTransformI.H.
References vectorTensorTransform::t().
|
inline |
Definition at line 194 of file vectorTensorTransformI.H.
References vectorTensorTransform::t().
|
inline |
Definition at line 200 of file vectorTensorTransformI.H.
References vectorTensorTransform::t().
|
inline |
Definition at line 206 of file vectorTensorTransformI.H.
References vectorTensorTransform::operator &=(), and vectorTensorTransform::R().
|
inline |
Foam::tmp<Foam::Field<bool> > transform | ( | const Field< bool > & | fld | ) | const |
Definition at line 73 of file vectorTensorTransform.C.
References fld(), and vectorTensorTransform::transform().
Foam::tmp<Foam::Field<Foam::label> > transform | ( | const Field< label > & | fld | ) | const |
Definition at line 81 of file vectorTensorTransform.C.
References fld(), and vectorTensorTransform::transform().
Foam::tmp<Foam::Field<Foam::scalar> > transform | ( | const Field< scalar > & | fld | ) | const |
Definition at line 89 of file vectorTensorTransform.C.
References fld().
Foam::tmp<Foam::Field<Type> > transform | ( | const Field< Type > & | fld | ) | const |
Definition at line 44 of file vectorTensorTransformTemplates.C.
References fld(), vectorTensorTransform::R(), and Foam::transform().
Foam::tmp<Foam::Field<Type> > invTransform | ( | const Field< Type > & | fld | ) | const |
Definition at line 75 of file vectorTensorTransformTemplates.C.
References fld(), vectorTensorTransform::R(), Foam::T(), and Foam::transform().
|
friend |
|
friend |
|
static |
Definition at line 82 of file vectorTensorTransform.H.
|
static |
Definition at line 84 of file vectorTensorTransform.H.
|
static |
Definition at line 86 of file vectorTensorTransform.H.
Referenced by cyclicRepeatAMIPolyPatch::resetAMI(), and cyclicAMIPolyPatch::resetAMI().