1#ifndef TOPAZ_CORE_TRS_HPP
2#define TOPAZ_CORE_TRS_HPP
3#include "tz/core/vector.hpp"
4#include "tz/core/quaternion.hpp"
5#include "tz/core/matrix.hpp"
66 bool operator==(
const trs& rhs)
const =
default;
Represents the generic matrix.
Definition matrix.hpp:16
Quaternion. Represents a rotation in 3D space.
Definition quaternion.hpp:13
static quat iden()
Retrieve the identity quaternion, that is - represents no transformation.
Definition quaternion.hpp:15
Encapsulates a combination of a Translation, Rotation, and Scale in 3D space.
Definition trs.hpp:46
tz::v3f scale
Scale Component.
Definition trs.hpp:52
tz::quat rotate
Rotation Component.
Definition trs.hpp:50
tz::v3f translate
Translation Component.
Definition trs.hpp:48
trs lerp(const trs &rhs, float factor) const
Linearly interpolate between this transform and another based on a factor, and return that result.
trs combine(const trs &rhs)
Combine one transform with another, and return the result.
m4f matrix() const
Create a matrix that performs an identical transformation.
static trs from_matrix(m4f mat)
Create a new TRS that performs the identical transformation to the given matrix.
trs inverse() const
Return an inverse transform that does the exact opposite (such that multiplying a transform by its in...
static constexpr vector< float, N > zero()
Definition vector.hpp:26
static constexpr vector< float, N > filled(float t)
Definition vector.hpp:32