#include <opennurbs_fpoint.h>

Public Member Functions

 ON_3fPoint ()=default
 x,y,z not initialized More...
 
 ON_3fPoint (const ON_3fPoint &)=default
 
 ON_3fPoint (float x, float y, float z)
 
 ON_3fPoint (const ON_2fPoint &)
 
 ON_3fPoint (const ON_4fPoint &)
 
 ON_3fPoint (const ON_2fVector &)
 
 ON_3fPoint (const ON_3fVector &)
 
 ON_3fPoint (const float *)
 
 ON_3fPoint (const ON_2dPoint &)
 
 ON_3fPoint (const ON_3dPoint &)
 
 ON_3fPoint (const ON_4dPoint &)
 
 ON_3fPoint (const ON_2dVector &)
 
 ON_3fPoint (const ON_3dVector &)
 
 ON_3fPoint (const double *)
 
 ~ON_3fPoint ()=default
 
ON__UINT32 DataCRC (ON__UINT32 current_remainder) const
 
double DistanceTo (const ON_3fPoint &) const
 
double Fuzz (double=ON_ZERO_TOLERANCE) const
 
bool IsNotZero () const
 
bool IsUnset () const
 
bool IsValid () const
 
bool IsZero () const
 
double MaximumCoordinate () const
 
int MaximumCoordinateIndex () const
 
 operator const float * () const
 
 operator float * ()
 (float*) conversion operators More...
 
bool operator!= (const ON_3fPoint &) const
 
ON_3fPoint operator* (int) const
 
ON_3fPoint operator* (float) const
 
ON_3dPoint operator* (double) const
 
float operator* (const ON_3fPoint &) const
 
float operator* (const ON_3fVector &) const
 
ON_3fPointoperator*= (float)
 
ON_3fPoint operator+ (const ON_3fPoint &) const
 
ON_3fPoint operator+ (const ON_3fVector &) const
 
ON_3fPoint operator+ (const ON_2fPoint &) const
 
ON_3fPoint operator+ (const ON_2fVector &) const
 
ON_3dPoint operator+ (const ON_3dPoint &) const
 
ON_3dPoint operator+ (const ON_3dVector &) const
 
ON_3dPoint operator+ (const ON_2dPoint &) const
 
ON_3dPoint operator+ (const ON_2dVector &) const
 
ON_3fPointoperator+= (const ON_3fVector &)
 
ON_3fVector operator- (const ON_3fPoint &) const
 
ON_3fPoint operator- (const ON_3fVector &) const
 
ON_3fVector operator- (const ON_2fPoint &) const
 
ON_3fPoint operator- (const ON_2fVector &) const
 
ON_3dVector operator- (const ON_3dPoint &) const
 
ON_3dPoint operator- (const ON_3dVector &) const
 
ON_3dVector operator- (const ON_2dPoint &) const
 
ON_3dPoint operator- (const ON_2dVector &) const
 
ON_3fPointoperator-= (const ON_3fVector &)
 
ON_3fPoint operator/ (int) const
 
ON_3fPoint operator/ (float) const
 
ON_3dPoint operator/ (double) const
 
ON_3fPointoperator/= (float)
 
bool operator< (const ON_3fPoint &) const
 
bool operator<= (const ON_3fPoint &) const
 dictionary order comparisons More...
 
ON_3fPointoperator= (const ON_3fPoint &)=default
 
ON_3fPointoperator= (const ON_2fPoint &)
 use implicit operator=(const ON_3fPoint&) More...
 
ON_3fPointoperator= (const ON_4fPoint &)
 
ON_3fPointoperator= (const ON_2fVector &)
 
ON_3fPointoperator= (const ON_3fVector &)
 
ON_3fPointoperator= (const float *)
 
ON_3fPointoperator= (const ON_2dPoint &)
 
ON_3fPointoperator= (const ON_3dPoint &)
 
ON_3fPointoperator= (const ON_4dPoint &)
 
ON_3fPointoperator= (const ON_2dVector &)
 
ON_3fPointoperator= (const ON_3dVector &)
 
ON_3fPointoperator= (const double *)
 
bool operator== (const ON_3fPoint &) const
 
bool operator> (const ON_3fPoint &) const
 
bool operator>= (const ON_3fPoint &) const
 
float & operator[] (int)
 index operators mimic float[3] behavior More...
 
float operator[] (int) const
 
float & operator[] (unsigned int)
 
float operator[] (unsigned int) const
 
void Rotate (double, const ON_3fVector &, const ON_3fPoint &)
 
void Rotate (double, double, const ON_3fVector &, const ON_3fPoint &)
 
void Set (float, float, float)
 set 3d point value More...
 
void Transform (const ON_Xform &)
 
void Zero ()
 

Static Public Member Functions

static int Compare (const ON_3fPoint &lhs, const ON_3fPoint &rhs)
 A well ordered dictionary compare function that is nan aware and can be used for robust sorting. More...
 

Public Attributes

float x
 
float y
 
float z
 

Static Public Attributes

static const ON_3fPoint NanPoint
 
static const ON_3fPoint Origin
 

Constructor & Destructor Documentation

◆ ON_3fPoint() [1/14]

ON_3fPoint::ON_3fPoint ( )
default

x,y,z not initialized

◆ ~ON_3fPoint()

ON_3fPoint::~ON_3fPoint ( )
default

◆ ON_3fPoint() [2/14]

ON_3fPoint::ON_3fPoint ( const ON_3fPoint )
default

◆ ON_3fPoint() [3/14]

ON_3fPoint::ON_3fPoint ( float  x,
float  y,
float  z 
)
explicit

◆ ON_3fPoint() [4/14]

ON_3fPoint::ON_3fPoint ( const ON_2fPoint )
explicit

◆ ON_3fPoint() [5/14]

ON_3fPoint::ON_3fPoint ( const ON_4fPoint )
explicit

◆ ON_3fPoint() [6/14]

ON_3fPoint::ON_3fPoint ( const ON_2fVector )
explicit

◆ ON_3fPoint() [7/14]

ON_3fPoint::ON_3fPoint ( const ON_3fVector )
explicit

◆ ON_3fPoint() [8/14]

ON_3fPoint::ON_3fPoint ( const float *  )
explicit

◆ ON_3fPoint() [9/14]

ON_3fPoint::ON_3fPoint ( const ON_2dPoint )
explicit

◆ ON_3fPoint() [10/14]

ON_3fPoint::ON_3fPoint ( const ON_3dPoint )
explicit

◆ ON_3fPoint() [11/14]

ON_3fPoint::ON_3fPoint ( const ON_4dPoint )
explicit

◆ ON_3fPoint() [12/14]

ON_3fPoint::ON_3fPoint ( const ON_2dVector )
explicit

◆ ON_3fPoint() [13/14]

ON_3fPoint::ON_3fPoint ( const ON_3dVector )
explicit

◆ ON_3fPoint() [14/14]

ON_3fPoint::ON_3fPoint ( const double *  )
explicit

Member Function Documentation

◆ Compare()

static int ON_3fPoint::Compare ( const ON_3fPoint lhs,
const ON_3fPoint rhs 
)
static

A well ordered dictionary compare function that is nan aware and can be used for robust sorting.

◆ DataCRC()

ON__UINT32 ON_3fPoint::DataCRC ( ON__UINT32  current_remainder) const

◆ DistanceTo()

double ON_3fPoint::DistanceTo ( const ON_3fPoint ) const

◆ Fuzz()

double ON_3fPoint::Fuzz ( double  = ON_ZERO_TOLERANCE) const

◆ IsNotZero()

bool ON_3fPoint::IsNotZero ( ) const
Returns
true if at lease one coordinate is not zero and no coordinates are nans.

◆ IsUnset()

bool ON_3fPoint::IsUnset ( ) const
Returns
True if any coordinate is ON_UNSET_FLOAT or ON_UNSET_POSITIVE_FLOAT

◆ IsValid()

bool ON_3fPoint::IsValid ( ) const
Returns
False if any coordinate is ON_UNSET_FLOAT, ON_UNSET_POSITIVE_FLOAT, nan, or infinite. True, otherwise.

◆ IsZero()

bool ON_3fPoint::IsZero ( ) const
Returns
true if all coordinates are not zero and no coordinates are nans. false otherwise.

◆ MaximumCoordinate()

double ON_3fPoint::MaximumCoordinate ( ) const

◆ MaximumCoordinateIndex()

int ON_3fPoint::MaximumCoordinateIndex ( ) const

◆ operator const float *()

ON_3fPoint::operator const float * ( ) const

◆ operator float *()

ON_3fPoint::operator float * ( )

(float*) conversion operators

◆ operator!=()

bool ON_3fPoint::operator!= ( const ON_3fPoint ) const

◆ operator*() [1/5]

ON_3fPoint ON_3fPoint::operator* ( int  ) const

◆ operator*() [2/5]

ON_3fPoint ON_3fPoint::operator* ( float  ) const

◆ operator*() [3/5]

ON_3dPoint ON_3fPoint::operator* ( double  ) const

◆ operator*() [4/5]

float ON_3fPoint::operator* ( const ON_3fPoint ) const

◆ operator*() [5/5]

float ON_3fPoint::operator* ( const ON_3fVector ) const

◆ operator*=()

ON_3fPoint& ON_3fPoint::operator*= ( float  )

◆ operator+() [1/8]

ON_3fPoint ON_3fPoint::operator+ ( const ON_3fPoint ) const

◆ operator+() [2/8]

ON_3fPoint ON_3fPoint::operator+ ( const ON_3fVector ) const

◆ operator+() [3/8]

ON_3fPoint ON_3fPoint::operator+ ( const ON_2fPoint ) const

◆ operator+() [4/8]

ON_3fPoint ON_3fPoint::operator+ ( const ON_2fVector ) const

◆ operator+() [5/8]

ON_3dPoint ON_3fPoint::operator+ ( const ON_3dPoint ) const

◆ operator+() [6/8]

ON_3dPoint ON_3fPoint::operator+ ( const ON_3dVector ) const

◆ operator+() [7/8]

ON_3dPoint ON_3fPoint::operator+ ( const ON_2dPoint ) const

◆ operator+() [8/8]

ON_3dPoint ON_3fPoint::operator+ ( const ON_2dVector ) const

◆ operator+=()

ON_3fPoint& ON_3fPoint::operator+= ( const ON_3fVector )

◆ operator-() [1/8]

ON_3fVector ON_3fPoint::operator- ( const ON_3fPoint ) const

◆ operator-() [2/8]

ON_3fPoint ON_3fPoint::operator- ( const ON_3fVector ) const

◆ operator-() [3/8]

ON_3fVector ON_3fPoint::operator- ( const ON_2fPoint ) const

◆ operator-() [4/8]

ON_3fPoint ON_3fPoint::operator- ( const ON_2fVector ) const

◆ operator-() [5/8]

ON_3dVector ON_3fPoint::operator- ( const ON_3dPoint ) const

◆ operator-() [6/8]

ON_3dPoint ON_3fPoint::operator- ( const ON_3dVector ) const

◆ operator-() [7/8]

ON_3dVector ON_3fPoint::operator- ( const ON_2dPoint ) const

◆ operator-() [8/8]

ON_3dPoint ON_3fPoint::operator- ( const ON_2dVector ) const

◆ operator-=()

ON_3fPoint& ON_3fPoint::operator-= ( const ON_3fVector )

◆ operator/() [1/3]

ON_3fPoint ON_3fPoint::operator/ ( int  ) const

◆ operator/() [2/3]

ON_3fPoint ON_3fPoint::operator/ ( float  ) const

◆ operator/() [3/3]

ON_3dPoint ON_3fPoint::operator/ ( double  ) const

◆ operator/=()

ON_3fPoint& ON_3fPoint::operator/= ( float  )

◆ operator<()

bool ON_3fPoint::operator< ( const ON_3fPoint ) const

◆ operator<=()

bool ON_3fPoint::operator<= ( const ON_3fPoint ) const

dictionary order comparisons

◆ operator=() [1/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_3fPoint )
default

◆ operator=() [2/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_2fPoint )

◆ operator=() [3/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_4fPoint )

◆ operator=() [4/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_2fVector )

◆ operator=() [5/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_3fVector )

◆ operator=() [6/12]

ON_3fPoint& ON_3fPoint::operator= ( const float *  )

◆ operator=() [7/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_2dPoint )

◆ operator=() [8/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_3dPoint )

◆ operator=() [9/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_4dPoint )

◆ operator=() [10/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_2dVector )

◆ operator=() [11/12]

ON_3fPoint& ON_3fPoint::operator= ( const ON_3dVector )

◆ operator=() [12/12]

ON_3fPoint& ON_3fPoint::operator= ( const double *  )

◆ operator==()

bool ON_3fPoint::operator== ( const ON_3fPoint ) const

◆ operator>()

bool ON_3fPoint::operator> ( const ON_3fPoint ) const

◆ operator>=()

bool ON_3fPoint::operator>= ( const ON_3fPoint ) const

◆ operator[]() [1/4]

float& ON_3fPoint::operator[] ( int  )

index operators mimic float[3] behavior

◆ operator[]() [2/4]

float ON_3fPoint::operator[] ( int  ) const

◆ operator[]() [3/4]

float& ON_3fPoint::operator[] ( unsigned  int)

◆ operator[]() [4/4]

float ON_3fPoint::operator[] ( unsigned  int) const

◆ Rotate() [1/2]

void ON_3fPoint::Rotate ( double  ,
const ON_3fVector ,
const ON_3fPoint  
)

◆ Rotate() [2/2]

void ON_3fPoint::Rotate ( double  ,
double  ,
const ON_3fVector ,
const ON_3fPoint  
)

◆ Set()

void ON_3fPoint::Set ( float  ,
float  ,
float   
)

set 3d point value

◆ Transform()

void ON_3fPoint::Transform ( const ON_Xform )

◆ Zero()

void ON_3fPoint::Zero ( )

Member Data Documentation

◆ NanPoint

const ON_3fPoint ON_3fPoint::NanPoint
static

◆ Origin

const ON_3fPoint ON_3fPoint::Origin
static

◆ x

float ON_3fPoint::x

◆ y

float ON_3fPoint::y

◆ z

float ON_3fPoint::z