|
JPL Spatial
Sound spatialization and propagation library
|
#include <JPLSpatial/Math/MinimalVec3.h>
Public Member Functions | |
| MinimalVec3 ()=default | |
| JPL_INLINE constexpr | MinimalVec3 (float x, float y, float z) noexcept |
| JPL_INLINE constexpr float | operator[] (uint32 coordinate) const |
| JPL_INLINE constexpr float | LengthSquared () const noexcept |
| JPL_INLINE constexpr float | Length () const noexcept |
| JPL_INLINE constexpr MinimalVec3 & | Normalize () noexcept |
| JPL_INLINE constexpr MinimalVec3 | SafeNormal (const MinimalVec3 &fallbackDirection, float tolerance=JPL_FLOAT_EPS) const noexcept |
| JPL_INLINE constexpr MinimalVec3 | SafeNormal (float &outLength, const MinimalVec3 &fallbackDirection, float tolerance=JPL_FLOAT_EPS) const noexcept |
| JPL_INLINE constexpr MinimalVec3 | operator- () const |
| JPL_INLINE constexpr MinimalVec3 | operator- (const MinimalVec3 &V) const |
| JPL_INLINE constexpr MinimalVec3 | operator+ (const MinimalVec3 &V) const |
| template<typename Arg > requires (std::is_arithmetic_v<Arg>) | |
| JPL_INLINE constexpr MinimalVec3 | operator* (Arg Scale) const noexcept |
| template<typename Arg > requires (std::is_arithmetic_v<Arg>) | |
| JPL_INLINE constexpr MinimalVec3 | operator/ (Arg Scale) const noexcept |
| JPL_INLINE constexpr void | operator+= (const MinimalVec3 &V) noexcept |
| JPL_INLINE constexpr MinimalVec3 & | operator*= (const MinimalVec3 Other) |
| template<typename Arg > requires (std::is_arithmetic_v<Arg>) | |
| JPL_INLINE constexpr MinimalVec3 & | operator/= (Arg Scale) noexcept |
| template<typename Arg > requires (std::is_arithmetic_v<Arg>) | |
| JPL_INLINE constexpr MinimalVec3 & | operator*= (Arg Scale) noexcept |
Static Public Member Functions | |
| static JPL_INLINE constexpr MinimalVec3 | Zero () noexcept |
Public Attributes | ||
| union { | ||
| std::array< float, 3 > mVF | ||
| struct { | ||
| float X | ||
| float Y | ||
| float Z | ||
| } | ||
| }; | ||
Minimal vector class to plug into BDPT interface if user doesn't provide their own.
|
default |
|
inlineconstexprnoexcept |
|
inlinenodiscardconstexprnoexcept |
|
inlinenodiscardconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlinenodiscardconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlineconstexpr |
|
inlinenodiscardconstexpr |
|
inlineconstexprnoexcept |
|
inlinenodiscardconstexpr |
|
inlinenodiscardconstexpr |
|
inlinenodiscardconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlinenodiscardconstexpr |
|
inlineconstexprnoexcept |
|
inlineconstexprnoexcept |
|
inlinestaticnodiscardconstexprnoexcept |
| union { ... } JPL::MinimalVec3 |
| std::array<float, 3> JPL::MinimalVec3::mVF |
| float JPL::MinimalVec3::X |
| float JPL::MinimalVec3::Y |
| float JPL::MinimalVec3::Z |