FOUND
Loading...
Searching...
No Matches
found::Vec3 Class Reference

A Vec3 is a mutable object that represents a 3D Vector. More...

#include <attitude-utils.hpp>

Public Member Functions

constexpr Vec3 (decimal x, decimal y, decimal z)
 Construction of vector with x, y, and z components.
 
 Vec3 ()
 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.
 
decimal getRightAscension () const
 Obtains the Right Ascension of this vector.
 
decimal getDeclination () const
 Obtains the Declination of this vector.
 
decimal operator* (const Vec3 &) const
 Dot product (Scalar product)
 
Vec3 operator* (const decimal &) const
 Vector-Scalar Multiplication.
 
Vec3 operator* (const Mat3 &) const
 Computes the product of a 3x3 matrix and a 3x1 vector (this)
 
Vec3 operator/ (const decimal &) const
 Vector division.
 
Vec3 operator- (const Vec3 &) const
 Vector Subtraction.
 
Vec3 operator- () const
 Vector Negation.
 
Vec3operator+= (const Vec3 &)
 Vector Addition.
 
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.
 

Public Attributes

decimal x
 The x coordinate.
 
decimal y
 The y coordinate.
 
decimal z
 The z coordinate.
 

Detailed Description

A Vec3 is a mutable object that represents a 3D Vector.

Constructor & Destructor Documentation

◆ Vec3() [1/2]

constexpr found::Vec3::Vec3 ( decimal  x,
decimal  y,
decimal  z 
)
inlineconstexpr

Construction of vector with x, y, and z components.

Parameters
xThe scalar value in the x direction of the vector to make
yThe scalar value in the y direction of the vector to make
zThe scalar value in the z direction of the vector to make

◆ Vec3() [2/2]

found::Vec3::Vec3 ( )
inline

Default construction of the Vector.

Member Function Documentation

◆ CrossProduct()

Vec3 found::Vec3::CrossProduct ( const Vec3 other) const

Computes the cross (vector) product between this and another vector.

Parameters
otherThe vector to cross with this
Returns
A vector that is the cross product between this and other

◆ getDeclination()

decimal found::Vec3::getDeclination ( ) const

Obtains the Declination of this vector.

Returns
The DE of this
Precondition
this is relative to the celestial coordinate system

◆ getRightAscension()

decimal found::Vec3::getRightAscension ( ) const

Obtains the Right Ascension of this vector.

Returns
The RA of this
Precondition
this is relative to the celestial coordinate system

◆ 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 other) const

Vector-Scalar Multiplication.

◆ operator*() [2/3]

Vec3 found::Vec3::operator* ( const Mat3 other) const

Computes the product of a 3x3 matrix and a 3x1 vector (this)

Parameters
otherThe matrix to multiply this with
Returns
The 3x1 vector resulting from the multiplication of other and this

◆ operator*() [3/3]

decimal found::Vec3::operator* ( const Vec3 other) const

Dot product (Scalar product)

◆ operator+=()

Vec3 & found::Vec3::operator+= ( const Vec3 other)

Vector Addition.

◆ operator-() [1/2]

Vec3 found::Vec3::operator- ( ) const

Vector Negation.

◆ operator-() [2/2]

Vec3 found::Vec3::operator- ( const Vec3 other) const

Vector Subtraction.

◆ operator/()

Vec3 found::Vec3::operator/ ( const decimal divisor) const

Vector division.

◆ OuterProduct()

Mat3 found::Vec3::OuterProduct ( const Vec3 other) const

Computes the outer product between this and another vector.

Parameters
otherThe other vector in this operation
Returns
A matrix that is the outer product between this and other

Member Data Documentation

◆ x

decimal found::Vec3::x

The x coordinate.

◆ y

decimal found::Vec3::y

The y coordinate.

◆ z

decimal found::Vec3::z

The z coordinate.


The documentation for this class was generated from the following files: