Transform position component.
More...
#include <TransformPosition.hpp>
|
Vec3< T > | position |
| Handled position.
|
|
|
constexpr bool | IsZero () const noexcept |
| IsZero component implementation.
|
|
constexpr bool | IsIdentity () const noexcept |
| IsIdentity component implementation. position must be at Vec3::Zero for identity transform.
|
|
constexpr bool | Equals (const TrPosition &_other, T _epsilon=std::numeric_limits< T >::epsilon()) const noexcept |
| Equals component implementation.
|
|
|
static TrPosition | LerpUnclamped (const TrPosition &_start, const TrPosition &_end, float _alpha) noexcept |
| LerpUnclamped component implementation.
|
|
template<typename LhsT , typename RhsT > |
static TrPosition | Multiply (const LhsT &_lhs, const RhsT &_rhs) noexcept |
| Transform multiplication implementation for position component.
|
|
template<typename LhsT , typename RhsT > |
static TrPosition | Divide (const LhsT &_lhs, const RhsT &_rhs) noexcept |
| Transform division implementation for position component.
|
|
template<typename T>
struct SA::TrPosition< T >
Transform position component.
- Template Parameters
-
◆ TrPosition()
Constructor from Vec3.
- Parameters
-
◆ Divide()
template<typename T >
template<typename LhsT , typename RhsT >
|
inlinestaticprotectednoexcept |
Transform division implementation for position component.
Apply -translation to transform in local-space. If lhs has rotation component, rotate (rhs) translation before application.
- Template Parameters
-
LhsT | left-hand side transform type. |
RhsT | right-hand side transform type. |
- Parameters
-
_lhs | left-hand side transform. |
_rhs | right-hand side transform. |
- Returns
- output position component from division.
◆ Equals()
template<typename T >
constexpr bool SA::TrPosition< T >::Equals |
( |
const TrPosition< T > & | _other, |
|
|
T | _epsilon = std::numeric_limits<T>::epsilon() ) const |
|
inlineconstexprprotectednoexcept |
Equals component implementation.
- Parameters
-
_other | other component to compare to. |
_epsilon | epsilon max used for comparison. |
- Returns
- Whether this and _other are equal.
◆ IsIdentity()
template<typename T >
|
inlineconstexprprotectednoexcept |
IsIdentity component implementation. position must be at Vec3::Zero for identity transform.
- Returns
- position.IsZero().
◆ IsZero()
template<typename T >
|
inlineconstexprprotectednoexcept |
IsZero component implementation.
- Returns
- position.IsZero()
◆ LerpUnclamped()
template<typename T >
|
inlinestaticprotectednoexcept |
LerpUnclamped component implementation.
- Parameters
-
_start | Starting point of the lerp. |
_end | Ending point of the lerp. |
_alpha | Alpha of the lerp. |
- Returns
- Interpolated position between start and end.
◆ Multiply()
template<typename T >
template<typename LhsT , typename RhsT >
|
inlinestaticprotectednoexcept |
Transform multiplication implementation for position component.
Apply translation to transform in local-space. If lhs has rotation component, rotate (rhs) translation before application.
- Template Parameters
-
LhsT | left-hand side transform type. |
RhsT | right-hand side transform type. |
- Parameters
-
_lhs | left-hand side transform. |
_rhs | right-hand side transform. |
- Returns
- output position component from multiplication.
◆ operator TrPosition< TOut >()
template<typename T >
template<typename TOut >
Cast operator.
- Template Parameters
-
- Returns
- TrPosition<TOut> Casted component.
The documentation for this struct was generated from the following file: