A Vec3 is a mutable object that represents a 3D Vector.  
 More...
#include <attitude-utils.hpp>
 | 
| constexpr  | Vec3 (decimal x, decimal y, decimal z) | 
|   | Construction of vector with x, y, and z components.  
  | 
|   | 
| 
  | Vec3 ()=default | 
|   | Default construction of the Vector. 
  | 
|   | 
| decimal  | Magnitude () const | 
|   | Provides the magnitude of this Vec3.  
  | 
|   | 
| decimal  | MagnitudeSq () const | 
|   | Provides the square of the magnitude of this Vec3.  
  | 
|   | 
| Vec3  | Normalize () const | 
|   | Provides the magnitude of this Vec2.  
  | 
|   | 
| Vec3  | operator- () const | 
|   | Vector Negation.  
  | 
|   | 
| Vec3  | operator- (const Vec3 &) const | 
|   | Vector Subtraction.  
  | 
|   | 
| decimal  | operator* (const Vec3 &) const | 
|   | Dot Product.  
  | 
|   | 
| Vec3  | operator* (const decimal &) const | 
|   | Scalar Product.  
  | 
|   | 
| Vec3  | operator/ (const decimal &) const | 
|   | Scalar Division.  
  | 
|   | 
| Vec3 &  | operator+= (const Vec3 &) | 
|   | Vector Addition (Modification)  
  | 
|   | 
| Vec3  | operator* (const Mat3 &) const | 
|   | Computes the product of a 3x3 matrix and a 3x1 vector (this)  
  | 
|   | 
| Vec3  | CrossProduct (const Vec3 &) const | 
|   | Computes the cross (vector) product between this and another vector.  
  | 
|   | 
| Mat3  | OuterProduct (const Vec3 &) const | 
|   | Computes the outer product between this and another vector.  
  | 
|   | 
 | 
| 
decimal  | x | 
|   | The x coordinate. 
  | 
|   | 
| 
decimal  | y | 
|   | The y coordinate. 
  | 
|   | 
| 
decimal  | z | 
|   | The z coordinate. 
  | 
|   | 
A Vec3 is a mutable object that represents a 3D Vector. 
 
◆ Vec3()
  
  
      
        
          | constexpr found::Vec3::Vec3  | 
          ( | 
          decimal  | 
          x,  | 
         
        
           | 
           | 
          decimal  | 
          y,  | 
         
        
           | 
           | 
          decimal  | 
          z  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlineconstexpr   | 
  
 
Construction of vector with x, y, and z components. 
- Parameters
 - 
  
    | x | The scalar value in the x direction of the vector to make  | 
    | y | The scalar value in the y direction of the vector to make  | 
    | z | The scalar value in the z direction of the vector to make  | 
  
   
 
 
◆ CrossProduct()
      
        
          | Vec3 found::Vec3::CrossProduct  | 
          ( | 
          const Vec3 &  | 
          other | ) | 
           const | 
        
      
 
Computes the cross (vector) product between this and another vector. 
- Parameters
 - 
  
    | other | The vector to cross with this | 
  
   
- Returns
 - this X other 
 
 
 
◆ Magnitude()
      
        
          | decimal found::Vec3::Magnitude  | 
          ( | 
           | ) | 
           const | 
        
      
 
Provides the magnitude of this Vec3. 
- Returns
 - The magnitude of this 
 
 
 
◆ MagnitudeSq()
      
        
          | decimal found::Vec3::MagnitudeSq  | 
          ( | 
           | ) | 
           const | 
        
      
 
Provides the square of the magnitude of this Vec3. 
- Returns
 - The square of the magnitude of this 
 
 
 
◆ Normalize()
      
        
          | Vec3 found::Vec3::Normalize  | 
          ( | 
           | ) | 
           const | 
        
      
 
Provides the magnitude of this Vec2. 
- Returns
 - The magnitude of this 
 
 
 
◆ operator*() [1/3]
      
        
          | Vec3 found::Vec3::operator*  | 
          ( | 
          const decimal &  | 
          scalar | ) | 
           const | 
        
      
 
Scalar Product. 
- Parameters
 - 
  
  
 
- Returns
 - scalar * this 
 
 
 
◆ operator*() [2/3]
      
        
          | Vec3 found::Vec3::operator*  | 
          ( | 
          const Mat3 &  | 
          other | ) | 
           const | 
        
      
 
Computes the product of a 3x3 matrix and a 3x1 vector (this) 
- Parameters
 - 
  
    | other | The matrix to multiply this with | 
  
   
- Returns
 - other @ this 
 
 
 
◆ operator*() [3/3]
      
        
          | decimal found::Vec3::operator*  | 
          ( | 
          const Vec3 &  | 
          other | ) | 
           const | 
        
      
 
Dot Product. 
- Parameters
 - 
  
  
 
- Returns
 - The dot of this and other 
 
 
 
◆ operator+=()
      
        
          | Vec3 & found::Vec3::operator+=  | 
          ( | 
          const Vec3 &  | 
          other | ) | 
           | 
        
      
 
Vector Addition (Modification) 
- Parameters
 - 
  
  
 
- Returns
 - this
 
- Postcondition
 - this has been added by other 
 
 
 
◆ operator-() [1/2]
      
        
          | Vec3 found::Vec3::operator-  | 
          ( | 
           | ) | 
           const | 
        
      
 
Vector Negation. 
- Returns
 - -this 
 
 
 
◆ operator-() [2/2]
      
        
          | Vec3 found::Vec3::operator-  | 
          ( | 
          const Vec3 &  | 
          other | ) | 
           const | 
        
      
 
Vector Subtraction. 
- Parameters
 - 
  
  
 
- Returns
 - this - other 
 
 
 
◆ operator/()
      
        
          | Vec3 found::Vec3::operator/  | 
          ( | 
          const decimal &  | 
          divisor | ) | 
           const | 
        
      
 
Scalar Division. 
- Parameters
 - 
  
  
 
- Returns
 - this / divisor 
 
 
 
◆ OuterProduct()
      
        
          | Mat3 found::Vec3::OuterProduct  | 
          ( | 
          const Vec3 &  | 
          other | ) | 
           const | 
        
      
 
Computes the outer product between this and another vector. 
- Parameters
 - 
  
    | other | The other vector in this operation | 
  
   
- Returns
 - this ⊗ other 
 
 
 
The documentation for this class was generated from the following files: