vOOlkan
An object oriented approach to Vulkan
Vulkan::Physics::Vectorial Class Reference

#include <Foundations.h>

Inheritance diagram for Vulkan::Physics::Vectorial:
Vulkan::Physics::Acceleration Vulkan::Physics::DeltaSpace Vulkan::Physics::Force Vulkan::Physics::Impulse Vulkan::Physics::Speed

Public Member Functions

 Vectorial (glm::vec3 vector={ 0.0f, 0.0f, 0.0f })
 
 Vectorial (float x, float y, float z)
 
float x () const
 
float y () const
 
float z () const
 
 operator glm::vec3 () const
 

Protected Attributes

glm::vec3 vector
 

Friends

template<std::derived_from< Vectorial > V>
operator+ (V v1, V v2)
 
template<std::derived_from< Vectorial > V>
operator- (V v1, V v2)
 
template<std::derived_from< Vectorial > V>
operator- (V v)
 
template<std::derived_from< Vectorial > V>
V & operator+= (V &v1, V v2)
 
template<std::derived_from< Vectorial > V>
V & operator-= (V &v1, V v2)
 
template<std::derived_from< Vectorial > V>
operator* (V v, float x)
 
template<std::derived_from< Vectorial > V>
operator/ (V v, float x)
 
float operator* (Vectorial v1, Vectorial v2)
 
template<std::derived_from< Vectorial > V>
auto operator<=> (const V &v1, float v2)
 
template<std::derived_from< Vectorial > V>
auto operator<=> (const V &v1, const V &v2)
 

Constructor & Destructor Documentation

◆ Vectorial() [1/2]

Vulkan::Physics::Vectorial::Vectorial ( glm::vec3  vector = { 0.0f, 0.0f, 0.0f })
inline

◆ Vectorial() [2/2]

Vulkan::Physics::Vectorial::Vectorial ( float  x,
float  y,
float  z 
)
inline

Member Function Documentation

◆ operator glm::vec3()

Vulkan::Physics::Vectorial::operator glm::vec3 ( ) const
inline

◆ x()

float Vulkan::Physics::Vectorial::x ( ) const
inline

◆ y()

float Vulkan::Physics::Vectorial::y ( ) const
inline

◆ z()

float Vulkan::Physics::Vectorial::z ( ) const
inline

Friends And Related Function Documentation

◆ operator* [1/2]

template<std::derived_from< Vectorial > V>
V operator* ( v,
float  x 
)
friend

◆ operator* [2/2]

float operator* ( Vectorial  v1,
Vectorial  v2 
)
friend

◆ operator+

template<std::derived_from< Vectorial > V>
V operator+ ( v1,
v2 
)
friend

◆ operator+=

template<std::derived_from< Vectorial > V>
V & operator+= ( V &  v1,
v2 
)
friend

◆ operator- [1/2]

template<std::derived_from< Vectorial > V>
V operator- ( v)
friend

◆ operator- [2/2]

template<std::derived_from< Vectorial > V>
V operator- ( v1,
v2 
)
friend

◆ operator-=

template<std::derived_from< Vectorial > V>
V & operator-= ( V &  v1,
v2 
)
friend

◆ operator/

template<std::derived_from< Vectorial > V>
V operator/ ( v,
float  x 
)
friend

◆ operator<=> [1/2]

template<std::derived_from< Vectorial > V>
auto operator<=> ( const V &  v1,
const V &  v2 
)
friend

◆ operator<=> [2/2]

template<std::derived_from< Vectorial > V>
auto operator<=> ( const V &  v1,
float  v2 
)
friend

Member Data Documentation

◆ vector

glm::vec3 Vulkan::Physics::Vectorial::vector
protected

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