| 
    EBGeometry 1.0
    
   | 
 
Two-dimensional vector class with arithmetic operators. More...
#include <EBGeometry_Vec.hpp>
Public Member Functions | |
| Vec2T () | |
| Default constructor. Sets the vector to the zero vector.  | |
| Vec2T (const Vec2T &u) noexcept | |
| Copy constructor.   | |
| constexpr | Vec2T (const T &a_x, const T &a_y) | 
| Full constructor.   | |
| ~Vec2T ()=default | |
| Destructor (does nothing)  | |
| constexpr Vec2T< T > & | operator= (const Vec2T &a_other) noexcept | 
| Assignment operator. Sets this.x = a_other.x and this.y = a_other.y.   | |
| constexpr Vec2T< T > | operator+ (const Vec2T &a_other) const noexcept | 
| Addition operator.   | |
| constexpr Vec2T< T > | operator- (const Vec2T &a_other) const noexcept | 
| Subtraction operator.   | |
| constexpr Vec2T< T > | operator- () const noexcept | 
| Negation operator. Returns a new Vec2T<T> with negated components.  | |
| constexpr Vec2T< T > | operator* (const T &s) const noexcept | 
| Multiplication operator.   | |
| constexpr Vec2T< T > | operator/ (const T &s) const noexcept | 
| Division operator.   | |
| constexpr Vec2T< T > & | operator+= (const Vec2T &a_other) noexcept | 
| Addition operator.   | |
| constexpr Vec2T< T > & | operator-= (const Vec2T &a_other) noexcept | 
| Subtraction operator.   | |
| constexpr Vec2T< T > & | operator*= (const T &s) noexcept | 
| Multiplication operator.   | |
| constexpr Vec2T< T > & | operator/= (const T &s) noexcept | 
| Division operator operator.   | |
| constexpr T | dot (const Vec2T &a_other) const noexcept | 
| Dot product operator.   | |
| constexpr T | length () const noexcept | 
| Compute length of vector.   | |
| constexpr T | length2 () const noexcept | 
| Compute square of vector.   | |
Static Public Member Functions | |
| static constexpr Vec2T< T > | zero () noexcept | 
| Return av vector with x = y = 0.  | |
| static constexpr Vec2T< T > | one () noexcept | 
| Return av vector with x = y = 1.  | |
| static constexpr Vec2T< T > | min () noexcept | 
| Return minimum possible representative vector.  | |
| static constexpr Vec2T< T > | max () noexcept | 
| Return maximum possible representative vector.  | |
| static constexpr Vec2T< T > | infinity () noexcept | 
| Return a vector with inf components.  | |
Public Attributes | |
| T | x | 
| First component in the vector.  | |
| T | y | 
| Second component in the vector.  | |
Two-dimensional vector class with arithmetic operators.
The class has a public-only interface. To change it's components one can call the member functions, or set components directly, e.g. vec.x = 5.0
Copy constructor.
| [in] | u | Other vector | 
Sets *this = u
Full constructor.
| [in] | a_x | First vector component | 
| [in] | a_y | Second vector component | 
Sets this->x = a_x and this->y = a_y
Dot product operator.
| [in] | a_other | other vector | 
Returns the dot product, i.e. this->x*a_other.x + this->y+a_other.y
Compute length of vector.
Compute square of vector.
Multiplication operator.
| [in] | s | Scalar to be multiplied | 
Returns a new Vec2T<T> with components x = s*this->x (and same for y)
Multiplication operator.
| [in] | s | Scalar to multiply by | 
Returns (*this) with components this->x = s*this->x (and same for y)
      
  | 
  inlineconstexprnoexcept | 
Addition operator.
| [in] | a_other | Other vector | 
Returns a new object with component x = this->x + a_other.x (same for y-component)
Addition operator.
| [in] | a_other | Other vector to add | 
Returns (*this) with components this->x = this->x + a_other.x (and same for y)
      
  | 
  inlineconstexprnoexcept | 
Subtraction operator.
| [in] | a_other | Other vector | 
Returns a new object with component x = this->x - a_other.x (same for y-component)
Subtraction operator.
| [in] | a_other | Other vector to subtract | 
Returns (*this) with components this->x = this->x - a_other.x (and same for y)
Division operator.
| [in] | s | Scalar to be multiplied | 
Returns a new Vec2T<T> with components x = (1/s)*this->x (and same for y)
Division operator operator.
| [in] | s | Scalar to divide by | 
Returns (*this) with components this->x = (1/s)*this->x (and same for y)
Assignment operator. Sets this.x = a_other.x and this.y = a_other.y.
| [in] | a_other | Other vector |