QUAOAR STUDIO // Mobius API
mobius::core_XYZ Class Reference

#include <core_XYZ.h>

Public Member Functions

 core_XYZ ()
 
 core_XYZ (const double x, const double y, const double z)
 
 core_XYZ (const core_XYZ &XYZ)
 
 ~core_XYZ ()
 Destructor.
 
double X () const
 
void SetX (const double x)
 
double Y () const
 
void SetY (const double y)
 
double Z () const
 
void SetZ (const double z)
 
void SetXYZ (const core_XYZ &other)
 
double Coord (const int idx) const
 
double SetCoord (const int idx, const double val)
 
bool IsOrigin (const double tol3D=0.) const
 
bool IsEqual (const core_XYZ &XYZ, const double tol3D=0.) const
 
core_XYZ CWiseMin (const core_XYZ &XYZ) const
 
core_XYZ CWiseMax (const core_XYZ &XYZ) const
 
double GetMaxComponent () const
 
mobiusCore_EXPORT double Modulus () const
 
mobiusCore_EXPORT double SquaredModulus () const
 
mobiusCore_EXPORT core_XYZ Multiplied (const double coeff) const
 
mobiusCore_EXPORT void Normalize ()
 
mobiusCore_EXPORT core_XYZ Normalized () const
 
mobiusCore_EXPORT void Reverse ()
 
mobiusCore_EXPORT core_XYZ Reversed () const
 
mobiusCore_EXPORT double Dot (const core_XYZ &XYZ) const
 
mobiusCore_EXPORT core_XYZ Cross (const core_XYZ &XYZ) const
 
mobiusCore_EXPORT double Angle (const core_XYZ &XYZ) const
 
mobiusCore_EXPORT double AngleWithRef (const core_XYZ &other, const core_XYZ &ref) const
 
mobiusCore_EXPORT bool operator== (const core_XYZ &XYZ) const
 
mobiusCore_EXPORT core_XYZoperator= (const core_XYZ &XYZ)
 
mobiusCore_EXPORT core_XYZ operator* (const double coeff) const
 
mobiusCore_EXPORT core_XYZ operator*= (const double coeff)
 
mobiusCore_EXPORT double operator* (const core_XYZ &XYZ) const
 
mobiusCore_EXPORT core_XYZ operator^ (const core_XYZ &XYZ) const
 
mobiusCore_EXPORT core_XYZ operator/ (const double coeff) const
 
mobiusCore_EXPORT core_XYZ operator/= (const double coeff)
 
mobiusCore_EXPORT core_XYZ operator+ (const core_XYZ &XYZ) const
 
mobiusCore_EXPORT core_XYZoperator+= (const core_XYZ &XYZ)
 
mobiusCore_EXPORT core_XYZ Invert () const
 
mobiusCore_EXPORT core_XYZ operator- (const core_XYZ &XYZ) const
 
mobiusCore_EXPORT core_XYZoperator-= (const core_XYZ &XYZ)
 
mobiusCore_EXPORT void Transform (const double(&mx)[3][3])
 

Static Public Member Functions

static int num_coordinates ()
 
static mobiusCore_EXPORT core_XYZ O ()
 
static mobiusCore_EXPORT core_XYZ OX ()
 
static mobiusCore_EXPORT core_XYZ OY ()
 
static mobiusCore_EXPORT core_XYZ OZ ()
 
static mobiusCore_EXPORT bool AreSamePlane (const std::vector< core_XYZ > &dirs, const double prec=core_Precision::Resolution3D())
 
static mobiusCore_EXPORT bool AreSpanningWholeSpace (const std::vector< core_XYZ > &dirs, const double prec=core_Precision::Resolution3D())
 

Detailed Description

Geometric primitive for 3D point.

Constructor & Destructor Documentation

◆ core_XYZ() [1/3]

mobius::core_XYZ::core_XYZ ( )
inline

Default constructor. Initializes point coordinates with origin values: (0, 0, 0).

◆ core_XYZ() [2/3]

mobius::core_XYZ::core_XYZ ( const double  x,
const double  y,
const double  z 
)
inline

Constructor with coordinates.

Parameters
x[in] first coordinate.
y[in] second coordinate.
z[in] third coordinate.

◆ core_XYZ() [3/3]

mobius::core_XYZ::core_XYZ ( const core_XYZ XYZ)
inline

Assignment constructor.

Parameters
XYZ[in] point to assign to this one.

Member Function Documentation

◆ Coord()

double mobius::core_XYZ::Coord ( const int  idx) const
inline

Returns coordinate by its 0-based index.

Parameters
idx[in] 0 for X, 1 for Y, 2 for Z.
Returns
requested coordinate.

◆ CWiseMax()

core_XYZ mobius::core_XYZ::CWiseMax ( const core_XYZ XYZ) const
inline

Compute component-wise maximum of two vectors.

Parameters
[in]XYZother tuple to compare this one with.
Returns
new tuple with max components.

◆ CWiseMin()

core_XYZ mobius::core_XYZ::CWiseMin ( const core_XYZ XYZ) const
inline

Compute component-wise minimum of two vectors.

Parameters
[in]XYZother tuple to compare this one with.
Returns
new tuple with min components.

◆ GetMaxComponent()

double mobius::core_XYZ::GetMaxComponent ( ) const
inline
Returns
max components of the tuple.

◆ IsEqual()

bool mobius::core_XYZ::IsEqual ( const core_XYZ XYZ,
const double  tol3D = 0. 
) const
inline

Checks if this coordinate tuple is equal to the passed one.

Parameters
[in]XYZother point to compare this one with.
[in]tol3Dthree-dimensional tolerance for comparison.
Returns
true in case of equality, false – otherwise.

◆ IsOrigin()

bool mobius::core_XYZ::IsOrigin ( const double  tol3D = 0.) const
inline

Returns true if this vector is zero.

Parameters
[in]tol3Dthree-dimensional tolerance for comparison.
Returns
true/false.

◆ num_coordinates()

static int mobius::core_XYZ::num_coordinates ( )
inlinestatic
Returns
number of coordinates.

◆ SetCoord()

double mobius::core_XYZ::SetCoord ( const int  idx,
const double  val 
)
inline

Updates coordinate having the specified 0-based index with the passed value.

Parameters
idx[in] 0 for X, 1 for Y, 2 for Z.
val[in] value to set.

◆ SetX()

void mobius::core_XYZ::SetX ( const double  x)
inline

Sets X coordinate.

Parameters
x[in] value to set.

◆ SetXYZ()

void mobius::core_XYZ::SetXYZ ( const core_XYZ other)
inline

Sets all coordinates of this class equal to the coordinates of the passed triple.

Parameters
[in]otherother triple.

◆ SetY()

void mobius::core_XYZ::SetY ( const double  y)
inline

Sets Y coordinate.

Parameters
y[in] value to set.

◆ SetZ()

void mobius::core_XYZ::SetZ ( const double  z)
inline

Sets Z coordinate.

Parameters
z[in] value to set.

◆ X()

double mobius::core_XYZ::X ( ) const
inline

Returns X coordinate of the 3D point.

Returns
X coordinate.

◆ Y()

double mobius::core_XYZ::Y ( ) const
inline

Returns Y coordinate of the 3D point.

Returns
Y coordinate.

◆ Z()

double mobius::core_XYZ::Z ( ) const
inline

Returns Z coordinate of the 3D point.

Returns
Z coordinate.

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