SA_Maths
Sapphire Suite's C++ Maths Library
Loading...
Searching...
No Matches
Classes | Typedefs | Functions
Vector3.hpp File Reference

Vector 3 type implementation. More...

#include <cstdint>
#include <SA/Maths/Debug.hpp>
#include <SA/Maths/Angle/Degree.hpp>
#include <SA/Maths/Algorithms/Cos.hpp>
#include <SA/Maths/Algorithms/Sqrt.hpp>
#include <SA/Maths/Algorithms/Lerp.hpp>
#include <SA/Maths/Algorithms/Equals.hpp>
#include <SA/Maths/Space/Vector3.inl>

Go to the source code of this file.

Classes

struct  SA::Vec3< T >
 Vector 3 Sapphire-Maths class. More...
 

Typedefs

using SA::Vec3i = Vec3<int32_t>
 Alias for int32 Vec3.
 
using SA::Vec3ui = Vec3<uint32_t>
 Alias for uint32 Vec3.
 
using SA::Vec3f = Vec3<float>
 Alias for float Vec3.
 
using SA::Vec3d = Vec3<double>
 Alias for double Vec3.
 
template<typename T >
using SA::Vector3 = Vec3<T>
 Template alias of Vec3.
 
using SA::Vector3i = Vector3<int32_t>
 Alias for int32 Vector3.
 
using SA::Vector3ui = Vector3<uint32_t>
 Alias for uint32 Vector3.
 
using SA::Vector3f = Vector3<float>
 Alias for float Vector3.
 
using SA::Vector3d = Vector3<double>
 Alias for double Vector3.
 

Functions

template<typename T >
constexpr Vec3< T > SA::operator* (typename std::remove_cv< T >::type _lhs, const Vec3< T > &_rhs) noexcept
 Scale each vector axis by _lhs.
 
template<typename T >
Vec3< T > SA::operator/ (typename std::remove_cv< T >::type _lhs, const Vec3< T > &_rhs)
  Inverse Scale each vector axis by _lhs.
 

Detailed Description

Vector 3 type implementation.

Function Documentation

◆ operator*()

template<typename T >
constexpr Vec3< T > SA::operator* ( typename std::remove_cv< T >::type _lhs,
const Vec3< T > & _rhs )
constexprnoexcept

Scale each vector axis by _lhs.

Parameters
[in]_lhsScale value to apply on all axis.
[in]_rhsVector to scale.
Returns
new vector scaled.

◆ operator/()

template<typename T >
Vec3< T > SA::operator/ ( typename std::remove_cv< T >::type _lhs,
const Vec3< T > & _rhs )

Inverse Scale each vector axis by _lhs.

Parameters
[in]_lhsInverse scale value to apply on all axis.
[in]_rhsVector to scale.
Returns
new vector inverse-scaled.