![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Functor returning element i of the rotated 3-dimensional vector \( e_1 \cdot e_2 \cdot e_1^{-1} \) (quaternion rotation of \( e_2 \) by \( e_1 \)). More...
#include <Functional.hpp>
Inheritance diagram for CDPL::Math::QuaternionVectorRotation< Q, V >:Public Types | |
| typedef QuaternionVectorBinaryFunctor< Q, V >::ValueType | ValueType |
| typedef QuaternionVectorBinaryFunctor< Q, V >::SizeType | SizeType |
| typedef QuaternionVectorBinaryFunctor< Q, V >::ResultType | ResultType |
Public Types inherited from CDPL::Math::QuaternionVectorBinaryFunctor< Q, V > | |
| typedef CommonType< typename Q::ValueType, typename V::ValueType >::Type | ValueType |
| The element value type (common type of the quaternion and vector element types). More... | |
| typedef V::SizeType | SizeType |
| The unsigned size type used by the vector. More... | |
| typedef ValueType | ResultType |
| The scalar result type (alias for ValueType). More... | |
Static Public Member Functions | |
| template<typename E1 , typename E2 > | |
| static ResultType | apply (const QuaternionExpression< E1 > &e1, const VectorExpression< E2 > &e2, SizeType i) |
| Returns element i ( \( 0 \le i < 3 \)) of the rotated 3-vector \( e_1 \cdot e_2 \cdot e_1^{-1} \). More... | |
Functor returning element i of the rotated 3-dimensional vector \( e_1 \cdot e_2 \cdot e_1^{-1} \) (quaternion rotation of \( e_2 \) by \( e_1 \)).
| Q | The quaternion expression type. |
| V | The vector expression type. |
| typedef QuaternionVectorBinaryFunctor<Q, V>::ValueType CDPL::Math::QuaternionVectorRotation< Q, V >::ValueType |
| typedef QuaternionVectorBinaryFunctor<Q, V>::SizeType CDPL::Math::QuaternionVectorRotation< Q, V >::SizeType |
| typedef QuaternionVectorBinaryFunctor<Q, V>::ResultType CDPL::Math::QuaternionVectorRotation< Q, V >::ResultType |
|
inlinestatic |
Returns element i ( \( 0 \le i < 3 \)) of the rotated 3-vector \( e_1 \cdot e_2 \cdot e_1^{-1} \).
| E1 | The quaternion expression type. |
| E2 | The vector expression type. |
| e1 | The quaternion expression (rotation). |
| e2 | The 3-vector expression to rotate. |
| i | The zero-based element index (0, 1, or 2). |
| Base::SizeError | if e2 has fewer than 3 elements. |