sandbox
Loading...
Searching...
No Matches
sbx::math::basic_matrix4x4< Type > Class Template Reference
Inheritance diagram for sbx::math::basic_matrix4x4< Type >:
sbx::math::basic_matrix< 4u, 4u, Type >

Public Types

using value_type = base_type::value_type
 
using reference = base_type::reference
 
using const_reference = base_type::const_reference
 
using size_type = base_type::size_type
 
using column_type = column_type_for< value_type >
 
- Public Types inherited from sbx::math::basic_matrix< 4u, 4u, Type >
using value_type = Type
 
using reference = value_type &
 
using const_reference = const value_type &
 
using size_type = std::size_t
 
using column_type = basic_vector< Rows, Type >
 

Public Member Functions

constexpr basic_matrix4x4 (const base_type &base) noexcept
 
template<scalar Other>
constexpr basic_matrix4x4 (const column_type_for< Other > &column0, const column_type_for< Other > &column1, const column_type_for< Other > &column2, const column_type_for< Other > &column3) noexcept
 
template<scalar Other>
constexpr basic_matrix4x4 (Other x0, Other x1, Other x2, Other x3, Other y0, Other y1, Other y2, Other y3, Other z0, Other z1, Other z2, Other z3, Other w0, Other w1, Other w2, Other w3) noexcept
 
constexpr auto operator[] (size_type index) const noexcept -> const column_type &
 
constexpr auto operator[] (size_type index) noexcept -> column_type &
 
- Public Member Functions inherited from sbx::math::basic_matrix< 4u, 4u, Type >
constexpr basic_matrix (Other value=Other{0}) noexcept
 
constexpr auto operator[] (size_type index) noexcept -> column_type &
 
constexpr auto operator[] (size_type index) const noexcept -> const column_type &
 
constexpr auto operator+= (const basic_matrix< Columns, Rows, Other > &other) noexcept -> basic_matrix &
 
constexpr auto operator-= (const basic_matrix< Columns, Rows, Other > &other) noexcept -> basic_matrix &
 
constexpr auto operator*= (Other scalar) noexcept -> basic_matrix &
 
constexpr auto operator/= (Other scalar) noexcept -> basic_matrix &
 

Static Public Member Functions

static constexpr auto transposed (const basic_matrix4x4 &matrix) noexcept -> basic_matrix4x4
 
static constexpr auto inverted (const basic_matrix4x4 &matrix) -> basic_matrix4x4
 
static constexpr auto look_at (const basic_vector3< value_type > &position, const basic_vector3< value_type > &target, const basic_vector3< value_type > &up) noexcept -> basic_matrix4x4
 
static constexpr auto perspective (const basic_angle< value_type > &fov, const value_type aspect, const value_type near, const value_type far) noexcept -> basic_matrix4x4
 
static constexpr auto orthographic (const value_type left, const value_type right, const value_type bottom, const value_type top) noexcept -> basic_matrix4x4
 
static constexpr auto orthographic (const value_type left, const value_type right, const value_type bottom, const value_type top, const value_type near, const value_type far) noexcept -> basic_matrix4x4
 
static constexpr auto translated (const basic_matrix4x4 &matrix, const basic_vector3< value_type > &vector) noexcept -> basic_matrix4x4
 
static constexpr auto scaled (const basic_matrix4x4 &matrix, const basic_vector3< value_type > &vector) noexcept -> basic_matrix4x4
 
static constexpr auto rotated (const basic_matrix4x4 &matrix, const basic_vector3< value_type > &axis, const basic_angle< value_type > &angle) noexcept -> basic_matrix4x4
 
static constexpr auto rotation_from_euler_angles (const basic_vector3< value_type > &euler_angles) noexcept -> basic_matrix4x4
 

Static Public Attributes

static constexpr basic_matrix4x4 identity {base_type::identity()}
 
static constexpr basic_matrix4x4 zero {base_type{value_type{0}}}
 

Additional Inherited Members

- Protected Types inherited from sbx::math::basic_matrix< 4u, 4u, Type >
using column_type_for = basic_vector< Rows, Other >
 
- Protected Member Functions inherited from sbx::math::basic_matrix< 4u, 4u, Type >
constexpr basic_matrix (Args &&... args) noexcept
 
- Static Protected Member Functions inherited from sbx::math::basic_matrix< 4u, 4u, Type >
static constexpr auto identity () noexcept -> basic_matrix
 

The documentation for this class was generated from the following files: