|
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 | |
| 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 T scalar) const |
| Modulo the Vec3 object by a scalar. | |
| 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. | |
| Vec3 & | operator%= (const T scalar) |
| Modulo assignment operator for the Vec3 class. | |
| bool | operator== (const Vec3 &other) const =default |
| Equality 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 226 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 238 of file geometry.h.
Get angle between two vectors (in 3D space).
Definition at line 249 of file geometry.h.
Calculate the cross product of two vectors.
| other | The vector to cross with. |
Definition at line 281 of file geometry.h.
Get distance between two vectors.
Definition at line 260 of file geometry.h.
Calculate the dot product of two vectors.
| other | The vector to dot with. |
Definition at line 271 of file geometry.h.
|
inline |
Calculate the magnitude of the vector.
Definition at line 291 of file geometry.h.
Modulo the Vec3 object by a scalar.
| scalar | The scalar to modulo by |
Definition at line 341 of file geometry.h.
Modulo assignment operator for the Vec3 class.
| scalar | The scalar to modulo by. |
Definition at line 403 of file geometry.h.
Multiplication operator for the Vec3 class.
| scalar | The scalar to multiply by. |
Definition at line 321 of file geometry.h.
Multiplication assignment operator for the Vec3 class.
| scalar | The scalar to multiply by. |
Definition at line 377 of file geometry.h.
Addition operator for the Vec3 class.
| other | The vector to add. |
Definition at line 301 of file geometry.h.
Addition assignment operator for the Vec3 class.
| other | The vector to add. |
Definition at line 351 of file geometry.h.
Subtraction operator for the Vec3 class.
| other | The vector to subtract. |
Definition at line 311 of file geometry.h.
Subtraction assignment operator for the Vec3 class.
| other | The vector to subtract. |
Definition at line 364 of file geometry.h.
Division operator for the Vec3 class.
| scalar | The scalar to divide by. |
Definition at line 331 of file geometry.h.
Division assignment operator for the Vec3 class.
| scalar | The scalar to divide by. |
Definition at line 390 of file geometry.h.
Equality operator for the Vec3 class.
| other | The vector to compare. |
| T asw::Vec3< T >::x { 0 } |
The x component of the vector.
Definition at line 419 of file geometry.h.
| T asw::Vec3< T >::y { 0 } |
The y component of the vector.
Definition at line 422 of file geometry.h.
| T asw::Vec3< T >::z { 0 } |
The z component of the vector.
Definition at line 425 of file geometry.h.