ASW Lib
A.D.S. Games SDL Wrapper Library. A library targeted at Allegro4 users who want to switch to SDL3 and use modern c++.
|
A 3D vector in space. More...
#include <geometry.h>
Public Member Functions | |
Vec3 () | |
Default constructor for the Vec3 class. | |
Vec3 (T x, T y, T z) | |
Constructor for the Vec3 class. | |
T | angle (const Vec3 &other) const |
Get angle between two vectors (in 3D space). | |
T | distance (const Vec3 &other) const |
Get distance between two vectors. | |
T | dot (const Vec3 &other) const |
Calculate the dot product of two vectors. | |
Vec3 | cross (const Vec3 &other) const |
Calculate the cross product of two vectors. | |
T | magnitude () const |
Calculate the magnitude of the vector. | |
Vec3 | operator+ (const Vec3 &other) const |
Addition operator for the Vec3 class. | |
Vec3 | operator- (const Vec3 &other) const |
Subtraction operator for the Vec3 class. | |
Vec3 | operator* (const T scalar) const |
Multiplication operator for the Vec3 class. | |
Vec3 | operator/ (const T scalar) const |
Division operator for the Vec3 class. | |
Vec3 & | operator+= (const Vec3 &other) |
Addition assignment operator for the Vec3 class. | |
Vec3 & | operator-= (const Vec3 &other) |
Subtraction assignment operator for the Vec3 class. | |
Vec3 & | operator*= (const T scalar) |
Multiplication assignment operator for the Vec3 class. | |
Vec3 & | operator/= (const T scalar) |
Division assignment operator for the Vec3 class. | |
bool | operator== (const Vec3 &other) const |
Equality operator for the Vec3 class. | |
bool | operator!= (const Vec3 &other) const |
Inequality operator for the Vec3 class. | |
Public Attributes | |
T | x {0} |
The x component of the vector. | |
T | y {0} |
The y component of the vector. | |
T | z {0} |
The z component of the vector. | |
A 3D vector in space.
This class represents a 3D vector in space. It is used to represent points, directions, and sizes.
Definition at line 193 of file geometry.h.
|
inline |
Default constructor for the Vec3 class.
Definition at line 197 of file geometry.h.
|
inline |
Constructor for the Vec3 class.
x | The x component of the vector. |
y | The y component of the vector. |
z | The z component of the vector. |
Definition at line 205 of file geometry.h.
Get angle between two vectors (in 3D space).
Definition at line 211 of file geometry.h.
Calculate the cross product of two vectors.
other | The vector to cross with. |
Definition at line 241 of file geometry.h.
Get distance between two vectors.
Definition at line 221 of file geometry.h.
Calculate the dot product of two vectors.
other | The vector to dot with. |
Definition at line 232 of file geometry.h.
|
inline |
Calculate the magnitude of the vector.
Definition at line 250 of file geometry.h.
Inequality operator for the Vec3 class.
other | The vector to compare. |
Definition at line 350 of file geometry.h.
Multiplication operator for the Vec3 class.
scalar | The scalar to multiply by. |
Definition at line 275 of file geometry.h.
Multiplication assignment operator for the Vec3 class.
scalar | The scalar to multiply by. |
Definition at line 317 of file geometry.h.
Addition operator for the Vec3 class.
other | The vector to add. |
Definition at line 257 of file geometry.h.
Addition assignment operator for the Vec3 class.
other | The vector to add. |
Definition at line 293 of file geometry.h.
Subtraction operator for the Vec3 class.
other | The vector to subtract. |
Definition at line 266 of file geometry.h.
Subtraction assignment operator for the Vec3 class.
other | The vector to subtract. |
Definition at line 305 of file geometry.h.
Division operator for the Vec3 class.
scalar | The scalar to divide by. |
Definition at line 284 of file geometry.h.
Division assignment operator for the Vec3 class.
scalar | The scalar to divide by. |
Definition at line 329 of file geometry.h.
Equality operator for the Vec3 class.
other | The vector to compare. |
Definition at line 341 of file geometry.h.
T asw::Vec3< T >::x {0} |
The x component of the vector.
Definition at line 355 of file geometry.h.
T asw::Vec3< T >::y {0} |
The y component of the vector.
Definition at line 358 of file geometry.h.
T asw::Vec3< T >::z {0} |
The z component of the vector.
Definition at line 361 of file geometry.h.