DEKI/ENGINE docs
Deki 0.19.0
Modular C++ 2D engine for embedded displays and desktop
Loading...
Searching...
No Matches

3D vector for positions, directions, scales and rotations. More...

#include <deki/Vector.h>

Public Member Functions

 Vector3 ()
 Vector3 (float x, float y, float z)
 Vector3 (const Vector2 &v, float z=0.0f)
Vector2 ToVector2 () const
Vector3 operator+ (const Vector3 &o) const
Vector3 operator- (const Vector3 &o) const
Vector3 operator* (float s) const
Vector3 operator/ (float s) const
Vector3 operator* (const Vector3 &o) const
Vector3 operator/ (const Vector3 &o) const
Vector3 & operator+= (const Vector3 &o)
Vector3 & operator-= (const Vector3 &o)
Vector3 & operator*= (float s)
Vector3 & operator/= (float s)
bool operator== (const Vector3 &o) const
bool operator!= (const Vector3 &o) const
Vector3 operator- () const
float LengthSquared () const
float Length () const
Vector3 Normalized () const
void Normalize ()
float Dot (const Vector3 &o) const
Vector3 Cross (const Vector3 &o) const
float DistanceTo (const Vector3 &o) const
float DistanceSquaredTo (const Vector3 &o) const

Static Public Member Functions

static Vector3 Zero ()
static Vector3 One ()
static Vector3 Up ()
static Vector3 Down ()
static Vector3 Left ()
static Vector3 Right ()
static Vector3 Forward ()
static Vector3 Back ()
static Vector3 Lerp (const Vector3 &a, const Vector3 &b, float t)

Public Attributes

float x
float y
float z

Detailed Description

3D vector for positions, directions, scales and rotations.

Constructor & Destructor Documentation

◆ Vector3() [1/3]

Deki::Vector3::Vector3 ( )
inline

◆ Vector3() [2/3]

Deki::Vector3::Vector3 ( float x,
float y,
float z )
inline

◆ Vector3() [3/3]

Deki::Vector3::Vector3 ( const Vector2 & v,
float z = 0.0f )
inline

Member Function Documentation

◆ Zero()

Vector3 Deki::Vector3::Zero ( )
inlinestatic

◆ One()

Vector3 Deki::Vector3::One ( )
inlinestatic

◆ Up()

Vector3 Deki::Vector3::Up ( )
inlinestatic

◆ Down()

Vector3 Deki::Vector3::Down ( )
inlinestatic

◆ Left()

Vector3 Deki::Vector3::Left ( )
inlinestatic

◆ Right()

Vector3 Deki::Vector3::Right ( )
inlinestatic

◆ Forward()

Vector3 Deki::Vector3::Forward ( )
inlinestatic

◆ Back()

Vector3 Deki::Vector3::Back ( )
inlinestatic

◆ ToVector2()

Vector2 Deki::Vector3::ToVector2 ( ) const
inline

◆ operator+()

Vector3 Deki::Vector3::operator+ ( const Vector3 & o) const
inline

◆ operator-() [1/2]

Vector3 Deki::Vector3::operator- ( const Vector3 & o) const
inline

◆ operator*() [1/2]

Vector3 Deki::Vector3::operator* ( float s) const
inline

◆ operator/() [1/2]

Vector3 Deki::Vector3::operator/ ( float s) const
inline

◆ operator*() [2/2]

Vector3 Deki::Vector3::operator* ( const Vector3 & o) const
inline

◆ operator/() [2/2]

Vector3 Deki::Vector3::operator/ ( const Vector3 & o) const
inline

◆ operator+=()

Vector3 & Deki::Vector3::operator+= ( const Vector3 & o)
inline

◆ operator-=()

Vector3 & Deki::Vector3::operator-= ( const Vector3 & o)
inline

◆ operator*=()

Vector3 & Deki::Vector3::operator*= ( float s)
inline

◆ operator/=()

Vector3 & Deki::Vector3::operator/= ( float s)
inline

◆ operator==()

bool Deki::Vector3::operator== ( const Vector3 & o) const
inline

◆ operator!=()

bool Deki::Vector3::operator!= ( const Vector3 & o) const
inline

◆ operator-() [2/2]

Vector3 Deki::Vector3::operator- ( ) const
inline

◆ LengthSquared()

float Deki::Vector3::LengthSquared ( ) const
inline

◆ Length()

float Deki::Vector3::Length ( ) const
inline

◆ Normalized()

Vector3 Deki::Vector3::Normalized ( ) const
inline

◆ Normalize()

void Deki::Vector3::Normalize ( )
inline

◆ Dot()

float Deki::Vector3::Dot ( const Vector3 & o) const
inline

◆ Cross()

Vector3 Deki::Vector3::Cross ( const Vector3 & o) const
inline

◆ DistanceTo()

float Deki::Vector3::DistanceTo ( const Vector3 & o) const
inline

◆ DistanceSquaredTo()

float Deki::Vector3::DistanceSquaredTo ( const Vector3 & o) const
inline

◆ Lerp()

Vector3 Deki::Vector3::Lerp ( const Vector3 & a,
const Vector3 & b,
float t )
inlinestatic

Member Data Documentation

◆ x

float Deki::Vector3::x

◆ y

float Deki::Vector3::y

◆ z

float Deki::Vector3::z

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