|
using | Elements |
|
| PH_DEFINE_INLINE_RULE_OF_5_MEMBERS (TArithmeticArrayBase) |
|
constexpr std::size_t | size () const noexcept |
| Number of elements of the array.
|
|
TQuaternion< T > | add (const TQuaternion< T > &rhs) const |
|
TQuaternion< T > | add (T rhs) const |
|
TQuaternion< T > & | addLocal (const TQuaternion< T > &rhs) |
|
TQuaternion< T > & | addLocal (T rhs) |
|
TQuaternion< T > | sub (const TQuaternion< T > &rhs) const |
|
TQuaternion< T > | sub (T rhs) const |
|
TQuaternion< T > & | subLocal (const TQuaternion< T > &rhs) |
|
TQuaternion< T > & | subLocal (T rhs) |
|
TQuaternion< T > | mul (const TQuaternion< T > &rhs) const |
|
TQuaternion< T > | mul (T rhs) const |
|
TQuaternion< T > & | mulLocal (const TQuaternion< T > &rhs) |
|
TQuaternion< T > & | mulLocal (T rhs) |
|
TQuaternion< T > | div (const TQuaternion< T > &rhs) const |
|
TQuaternion< T > | div (T rhs) const |
|
TQuaternion< T > & | divLocal (const TQuaternion< T > &rhs) |
|
TQuaternion< T > & | divLocal (T rhs) |
|
TQuaternion< T > | pow (U exponent) const |
|
TQuaternion< T > | pow (const TQuaternion< T > &exponent) const |
|
TQuaternion< T > & | powLocal (U exponent) |
|
TQuaternion< T > & | powLocal (const TQuaternion< T > &exponent) |
|
TQuaternion< T > | sqrt () const |
|
TQuaternion< T > & | sqrtLocal () |
|
TQuaternion< T > | abs () const |
|
TQuaternion< T > & | absLocal () |
|
TQuaternion< T > | rcp () const |
|
TQuaternion< T > & | rcpLocal () |
|
T | sum () const |
|
T | avg () const |
|
T | product () const |
|
T | min () const |
|
TQuaternion< T > | min (const TQuaternion< T > &other) const |
|
std::size_t | minIndex () const |
|
T | max () const |
|
TQuaternion< T > | max (const TQuaternion< T > &other) const |
|
std::size_t | maxIndex () const |
|
TQuaternion< T > | ceil () const |
|
TQuaternion< T > | floor () const |
|
TQuaternion< T > | lerp (const TQuaternion< T > &rhs, U factor) const |
|
bool | isZero () const |
|
bool | isNonNegative () const |
|
bool | isFinite () const |
|
TQuaternion< T > & | set (T value) |
|
TQuaternion< T > & | set (std::size_t index, T value) |
|
TQuaternion< T > & | set (const std::array< T, N > &values) |
|
T & | operator[] (std::size_t index) |
|
const T & | operator[] (std::size_t index) const |
|
bool | isEqual (const TQuaternion< T > &other) const |
|
bool | isNear (const TQuaternion< T > &other, T margin) const |
|
bool | operator== (const TQuaternion< T > &other) const |
|
bool | operator!= (const TQuaternion< T > &other) const |
|
TQuaternion< T > | operator+ (const TQuaternion< T > &rhs) const |
|
TQuaternion< T > | operator+ (T rhs) const |
|
TQuaternion< T > | operator- (const TQuaternion< T > &rhs) const |
|
TQuaternion< T > | operator- (T rhs) const |
|
TQuaternion< T > | operator- () const |
|
TQuaternion< T > | operator* (const TQuaternion< T > &rhs) const |
|
TQuaternion< T > | operator* (T rhs) const |
|
TQuaternion< T > | operator/ (const TQuaternion< T > &rhs) const |
|
TQuaternion< T > | operator/ (T rhs) const |
|
TQuaternion< T > & | operator+= (const TQuaternion< T > &rhs) |
|
TQuaternion< T > & | operator+= (T rhs) |
|
TQuaternion< T > & | operator-= (const TQuaternion< T > &rhs) |
|
TQuaternion< T > & | operator-= (T rhs) |
|
TQuaternion< T > & | operator*= (const TQuaternion< T > &rhs) |
|
TQuaternion< T > & | operator*= (T rhs) |
|
TQuaternion< T > & | operator/= (const TQuaternion< T > &rhs) |
|
TQuaternion< T > & | operator/= (T rhs) |
|
auto | begin () noexcept -> typename std::array< T, N >::iterator |
|
auto | begin () const noexcept -> typename std::array< T, N >::const_iterator |
|
auto | end () noexcept -> typename std::array< T, N >::iterator |
|
auto | end () const noexcept -> typename std::array< T, N >::const_iterator |
|
std::string | toString () const |
|
std::vector< T > | toVector () const |
|
std::array< T, N > | toArray () const |
|
TSpan< T, N > | toSpan () |
|
TSpanView< T, N > | toView () const |
|
TQuaternion< T > | exp (U exponent) const |
| Sets the array to \( e^exponent \).
|
|
TQuaternion< T > & | expLocal (U exponent) |
|
TQuaternion< T > | exp (const TQuaternion< T > &exponent) const |
| Sets the array to \( e^{exponent_i} \).
|
|
TQuaternion< T > & | expLocal (const TQuaternion< T > &exponent) |
|
TQuaternion< T > | clamp (T lowerBound, T upperBound) const |
| Clamps current array's elements to specific range. None of value , lowerBound and upperBound can be NaN, or the method's behavior is undefined.
|
|
TQuaternion< T > | clamp (const TQuaternion< T > &lowerBound, const TQuaternion< T > &upperBound) const |
|
TQuaternion< T > & | clampLocal (T lowerBound, T upperBound) |
|
TQuaternion< T > & | clampLocal (const TQuaternion< T > &lowerBound, const TQuaternion< T > &upperBound) |
|
TQuaternion< T > | safeClamp (T lowerBound, T upperBound) const |
| Clamps current array's elements to specific range. If a floating-point value is non-finite (e.g., being Inf, NaN), its value is clamped to lowerBound . Neither lowerBound nor upperBound can be NaN, or the method's behavior is undefined.
|
|
TQuaternion< T > | safeClamp (const TQuaternion< T > &lowerBound, const TQuaternion< T > &upperBound) const |
|
TQuaternion< T > & | safeClampLocal (T lowerBound, T upperBound) |
|
TQuaternion< T > & | safeClampLocal (const TQuaternion< T > &lowerBound, const TQuaternion< T > &upperBound) |
|
TQuaternion< T > | complement () const |
| Complements the array's elements. Effectively performing 1 - (*this)[i] for each element.
|
|
TQuaternion< T > & | complementLocal () |
|
TQuaternion< T > | negate () const |
| Applies a negative sign to the array's elements. These methods is only defined for signed element types.
|
|
TQuaternion< T > & | negateLocal () |
|
std::array< T, N > | m |
|
static constexpr auto | NUM_ELEMENTS |
|
template<typename T>
class ph::math::TQuaternion< T >
Represents a quaternion.