Type for 2D vectors of floating point numbers. More...
#include <AH/Math/Vector.hpp>
 Collaboration diagram for Vec2f:Public Member Functions | |
| Vec2f ()=default | |
| Create a vector that is initialized to the zero vector (0,0).  More... | |
| Vec2f (float x, float y) | |
| Create a vector with the given x and y coordinates.  More... | |
| Vec2f & | operator+= (Vec2f rhs) | 
| Addition.  More... | |
| Vec2f | operator+ (Vec2f rhs) const | 
| Addition.  More... | |
| Vec2f | operator- () const | 
| Negation.  More... | |
| Vec2f & | operator-= (Vec2f rhs) | 
| Subtraction.  More... | |
| Vec2f | operator- (Vec2f rhs) const | 
| Subtraction.  More... | |
| Vec2f & | operator*= (float rhs) | 
| Scalar multiplication.  More... | |
| Vec2f | operator* (float rhs) const | 
| Scalar multiplication.  More... | |
| Vec2f & | operator/= (float rhs) | 
| Scalar division.  More... | |
| Vec2f | operator/ (float rhs) const | 
| Scalar division.  More... | |
| float | operator* (Vec2f rhs) const | 
| Inner product.  More... | |
| float | normSquared () const | 
| Norm squared.  More... | |
| float | norm () const | 
| Norm.  More... | |
| Vec2f & | normalize () | 
| Normalize this vector.  More... | |
| Vec2f | normalized () const | 
| Normalize a copy of this vector (doesn't change the original vector).  More... | |
| bool | operator== (Vec2f rhs) const | 
| Equality check.  More... | |
| bool | operator!= (Vec2f rhs) const | 
| Inequality check.  More... | |
Public Attributes | |
| float | x = 0.0 | 
| The x component of the vector.  More... | |
| float | y = 0.0 | 
| The y component of the vector.  More... | |
Related Functions | |
(Note that these are not member functions.)  | |
| Print & | operator<< (Print &os, Vec2f v) | 
| Printing.  More... | |
| Vec2f | operator* (float lhs, Vec2f rhs) | 
| Scalar multiplication.  More... | |
| Print & | operator<< (Print &os, Vec2f v) | 
| Printing.  More... | |
Type for 2D vectors of floating point numbers.
Vec2fs can be added, subtracted, multiplied (dot product) and normalized. It also has an implementation of the following operators: "+", "+=", "-", "-=", "*" (vector-vector); "*", "*=", "/", "/=" (vector-scalar); "==", "!=" (equality); "*" (scalar-vector); "<<" (printing).
Definition at line 43 of file Vector.hpp.
      
  | 
  default | 
Create a vector that is initialized to the zero vector (0,0).
      
  | 
  inline | 
Create a vector with the given x and y coordinates.
Definition at line 50 of file Vector.hpp.
Addition.
Definition at line 53 of file Vector.hpp.
Addition.
Definition at line 59 of file Vector.hpp.
      
  | 
  inline | 
Negation.
Definition at line 66 of file Vector.hpp.
Subtraction.
Definition at line 68 of file Vector.hpp.
Subtraction.
Definition at line 70 of file Vector.hpp.
      
  | 
  inline | 
Scalar multiplication.
Definition at line 77 of file Vector.hpp.
      
  | 
  inline | 
Scalar multiplication.
Definition at line 83 of file Vector.hpp.
      
  | 
  inline | 
Scalar division.
Definition at line 90 of file Vector.hpp.
      
  | 
  inline | 
Scalar division.
Definition at line 96 of file Vector.hpp.
      
  | 
  inline | 
Inner product.
Definition at line 103 of file Vector.hpp.
      
  | 
  inline | 
Norm squared.
Definition at line 108 of file Vector.hpp.
      
  | 
  inline | 
Norm.
Definition at line 110 of file Vector.hpp.
      
  | 
  inline | 
Normalize this vector.
Definition at line 115 of file Vector.hpp.
      
  | 
  inline | 
Normalize a copy of this vector (doesn't change the original vector).
Definition at line 117 of file Vector.hpp.
      
  | 
  inline | 
Equality check.
Definition at line 120 of file Vector.hpp.
      
  | 
  inline | 
Inequality check.
Definition at line 124 of file Vector.hpp.
      
  | 
  related | 
Printing.
Definition at line 32 of file Vector.cpp.
| float x = 0.0 | 
The x component of the vector.
Definition at line 44 of file Vector.hpp.
| float y = 0.0 | 
The y component of the vector.
Definition at line 45 of file Vector.hpp.