Conscience Core
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
conscience_core::axiomes::CscPoint3d Class Reference

The CscPoint3d class represents a point in three-dimensional space. It is primarily used to denote a location in the Conscience coordinate system with coordinates expressed in centimeters. Additionally, this class can represent a GNSS position, where it utilizes a different coordinate mapping: longitude as X, latitude as Z, and altitude as Y, with longitude and altitude expressed in degrees. More...

#include <Csc3dTypes.h>

Inheritance diagram for conscience_core::axiomes::CscPoint3d:
conscience_core::axiomes::CscPoint3dOriented

Public Member Functions

 CscPoint3d (CscPoint3d *fromPoint)
 
 CscPoint3d (double x=0, double y=0, double z=0)
 
virtual ~CscPoint3d ()
 
double getX () const
 
double getY () const
 
double getZ () const
 
double getByIndex (int index) const
 
void setByIndex (int index, double value)
 
double distanceWith (const CscPoint3d *point) const
 
CscPoint3dcenterWith (const CscPoint3d *other) const
 
CscPoint3drotate (const CscPoint3d *rotationEulerXYZ, const CscPoint3d *rotationCenter=nullptr) const
 
CscPoint3drotate (double eulerX, double eulerY, double eulerZ, const CscPoint3d *rotationCenter=nullptr) const
 
CscPoint3dminus (const CscPoint3d *rightOperand) const
 
CscPoint3dplus (const CscPoint3d *rightOperand) const
 
CscPoint3dplus (double x, double y, double z) const
 
CscPoint3dmultiplyWith (const CscPoint3d *rightOperand) const
 
CscPoint3doperator- (const CscPoint3d &rightOperand) const
 
CscPoint3doperator+ (const CscPoint3d &rightOperand) const
 
CscPoint3doperator* (const CscPoint3d &rightOperand) const
 
CscPoint3doperator* (double scalar) const
 
CscPoint3doperator*= (double scalar)
 
CscPoint3doperator+= (const CscPoint3d &rightOperand)
 
CscPoint3d crossProduct (const CscPoint3d &other) const
 
void set (double x, double y, double z)
 
void set (const CscPoint3d &fromOther)
 
bool equals (const CscPoint3d &theOtherOne) const
 
bool equalsValues (double x, double y, double z) const
 
virtual operator string () const
 
virtual string toString () const
 
virtual CscPoint3dclone () const
 
void copyFrom (const CscPoint3d &otherPoint)
 

Static Public Member Functions

static CscPoint3dzero ()
 

Public Attributes

double x
 
double y
 
double z
 

Detailed Description

The CscPoint3d class represents a point in three-dimensional space. It is primarily used to denote a location in the Conscience coordinate system with coordinates expressed in centimeters. Additionally, this class can represent a GNSS position, where it utilizes a different coordinate mapping: longitude as X, latitude as Z, and altitude as Y, with longitude and altitude expressed in degrees.

Constructor & Destructor Documentation

◆ CscPoint3d() [1/2]

conscience_core::axiomes::CscPoint3d::CscPoint3d ( CscPoint3d fromPoint)

◆ CscPoint3d() [2/2]

conscience_core::axiomes::CscPoint3d::CscPoint3d ( double  x = 0,
double  y = 0,
double  z = 0 
)

◆ ~CscPoint3d()

conscience_core::axiomes::CscPoint3d::~CscPoint3d ( )
virtual

Member Function Documentation

◆ centerWith()

CscPoint3d * conscience_core::axiomes::CscPoint3d::centerWith ( const CscPoint3d other) const

Compute the center point between this pointer and the other given point

◆ clone()

CscPoint3d * conscience_core::axiomes::CscPoint3d::clone ( ) const
virtual

◆ copyFrom()

void conscience_core::axiomes::CscPoint3d::copyFrom ( const CscPoint3d otherPoint)

◆ crossProduct()

CscPoint3d conscience_core::axiomes::CscPoint3d::crossProduct ( const CscPoint3d other) const

◆ distanceWith()

double conscience_core::axiomes::CscPoint3d::distanceWith ( const CscPoint3d point) const

◆ equals()

bool conscience_core::axiomes::CscPoint3d::equals ( const CscPoint3d theOtherOne) const

true if strictly equals

◆ equalsValues()

bool conscience_core::axiomes::CscPoint3d::equalsValues ( double  x,
double  y,
double  z 
) const

◆ getByIndex()

double conscience_core::axiomes::CscPoint3d::getByIndex ( int  index) const
Parameters
indexx = 0, y = 1, z = 2

◆ getX()

double conscience_core::axiomes::CscPoint3d::getX ( ) const

◆ getY()

double conscience_core::axiomes::CscPoint3d::getY ( ) const

◆ getZ()

double conscience_core::axiomes::CscPoint3d::getZ ( ) const

◆ minus()

CscPoint3d * conscience_core::axiomes::CscPoint3d::minus ( const CscPoint3d rightOperand) const

returns a NEW point corresponding to this point MINUS the given other one

◆ multiplyWith()

CscPoint3d * conscience_core::axiomes::CscPoint3d::multiplyWith ( const CscPoint3d rightOperand) const

returns a NEW point corresponding to this point DOT the given other one

◆ operator string()

conscience_core::axiomes::CscPoint3d::operator string ( ) const
virtual

◆ operator*() [1/2]

CscPoint3d * conscience_core::axiomes::CscPoint3d::operator* ( const CscPoint3d rightOperand) const

◆ operator*() [2/2]

CscPoint3d * conscience_core::axiomes::CscPoint3d::operator* ( double  scalar) const

◆ operator*=()

CscPoint3d & conscience_core::axiomes::CscPoint3d::operator*= ( double  scalar)

◆ operator+()

CscPoint3d * conscience_core::axiomes::CscPoint3d::operator+ ( const CscPoint3d rightOperand) const

◆ operator+=()

CscPoint3d & conscience_core::axiomes::CscPoint3d::operator+= ( const CscPoint3d rightOperand)

◆ operator-()

CscPoint3d * conscience_core::axiomes::CscPoint3d::operator- ( const CscPoint3d rightOperand) const

◆ plus() [1/2]

CscPoint3d * conscience_core::axiomes::CscPoint3d::plus ( const CscPoint3d rightOperand) const

returns a NEW point corresponding to this point PLUS the given other one

◆ plus() [2/2]

CscPoint3d * conscience_core::axiomes::CscPoint3d::plus ( double  x,
double  y,
double  z 
) const

returns a NEW point corresponding to this point PLUS the given values

◆ rotate() [1/2]

CscPoint3d * conscience_core::axiomes::CscPoint3d::rotate ( const CscPoint3d rotationEulerXYZ,
const CscPoint3d rotationCenter = nullptr 
) const

returns a NEW point corresponding to this point rotated by rotation. NOTE: you must explicitely delete the return value when not used anymore

Parameters
rotationEulerXYZEulerXYZ/YPR please see https://intranet.conscience.live/environnement-3d/
rotationCentercenter of this rotation, defaults to origin

◆ rotate() [2/2]

CscPoint3d * conscience_core::axiomes::CscPoint3d::rotate ( double  eulerX,
double  eulerY,
double  eulerZ,
const CscPoint3d rotationCenter = nullptr 
) const

See rotate(CscPoint3d*, CscPoint3d*)

◆ set() [1/2]

void conscience_core::axiomes::CscPoint3d::set ( const CscPoint3d fromOther)

◆ set() [2/2]

void conscience_core::axiomes::CscPoint3d::set ( double  x,
double  y,
double  z 
)

◆ setByIndex()

void conscience_core::axiomes::CscPoint3d::setByIndex ( int  index,
double  value 
)
Parameters
indexx = 0, y = 1, z = 2

◆ toString()

string conscience_core::axiomes::CscPoint3d::toString ( ) const
virtual

◆ zero()

CscPoint3d * conscience_core::axiomes::CscPoint3d::zero ( )
static

return a NEW point initialized with 0,0,0

Member Data Documentation

◆ x

double conscience_core::axiomes::CscPoint3d::x

◆ y

double conscience_core::axiomes::CscPoint3d::y

◆ z

double conscience_core::axiomes::CscPoint3d::z

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