5#ifndef SAPPHIRE_MATHS_TRANSFORM_POSITION_GUARD
6#define SAPPHIRE_MATHS_TRANSFORM_POSITION_GUARD
63 template <
typename TOut>
80 constexpr bool IsZero() const noexcept
106 T _epsilon = std::numeric_limits<T>::epsilon()) const noexcept
146 template <
typename LhsT,
typename RhsT>
188 template <
typename LhsT,
typename RhsT>
227 std::string ToString()
const
229 return "Pos: " + SA::ToString(
position);
Vector 3 type implementation.
Transform position component.
Definition TransformPosition.hpp:32
constexpr bool IsIdentity() const noexcept
IsIdentity component implementation. position must be at Vec3::Zero for identity transform.
Definition TransformPosition.hpp:91
TrPosition()=default
Default constructor.
TrPosition(const Vec3< T > &_pos) noexcept
Constructor from Vec3.
Definition TransformPosition.hpp:47
constexpr bool IsZero() const noexcept
IsZero component implementation.
Definition TransformPosition.hpp:80
static TrPosition Multiply(const LhsT &_lhs, const RhsT &_rhs) noexcept
Transform multiplication implementation for position component.
Definition TransformPosition.hpp:147
static TrPosition LerpUnclamped(const TrPosition &_start, const TrPosition &_end, float _alpha) noexcept
LerpUnclamped component implementation.
Definition TransformPosition.hpp:124
static TrPosition Divide(const LhsT &_lhs, const RhsT &_rhs) noexcept
Transform division implementation for position component.
Definition TransformPosition.hpp:189
Vec3< T > position
Handled position.
Definition TransformPosition.hpp:34
constexpr bool Equals(const TrPosition &_other, T _epsilon=std::numeric_limits< T >::epsilon()) const noexcept
Equals component implementation.
Definition TransformPosition.hpp:105
Transform rotation component.
Definition TransformRotation.hpp:32
Vector 3 Sapphire-Maths class.
Definition Vector3.hpp:43
static Vec3 LerpUnclamped(const Vec3 &_start, const Vec3 &_end, float _alpha) noexcept
Unclamped Lerp from _start to _end at _alpha.