#include <opennurbs_point.h>
Public Member Functions | |
ON_4dPoint ()=default | |
x,y,z,w not initialized More... | |
ON_4dPoint (const ON_4dPoint &)=default | |
ON_4dPoint (double x, double y, double z, double w) | |
ON_4dPoint (const ON_2dPoint &) | |
These constructors are not explicit because no informtion is lost. More... | |
ON_4dPoint (const ON_3dPoint &) | |
ON_4dPoint (const ON_2dVector &) | |
ON_4dPoint (const ON_3dVector &) | |
ON_4dPoint (const double *) | |
ON_4dPoint (const ON_2fPoint &) | |
These constructors are not explicit because no informtion is lost. More... | |
ON_4dPoint (const ON_3fPoint &) | |
ON_4dPoint (const ON_4fPoint &) | |
ON_4dPoint (const ON_2fVector &) | |
ON_4dPoint (const ON_3fVector &) | |
ON_4dPoint (const float *) | |
~ON_4dPoint ()=default | |
ON__UINT32 | DataCRC (ON__UINT32 current_remainder) const |
double | EuclideanX () const |
double | EuclideanY () const |
double | EuclideanZ () const |
bool | IsUnset () const |
bool | IsValid () const |
double | MaximumCoordinate () const |
int | MaximumCoordinateIndex () const |
double | MinimumCoordinate () const |
int | MinimumCoordinateIndex () const |
bool | Normalize () |
operator const double * () const | |
operator double * () | |
(double*) conversion operators More... | |
bool | operator!= (const ON_4dPoint &rhs) const |
ON_4dPoint | operator* (double) const |
ON_4dPoint | operator* (const ON_Xform &) const |
ON_4dPoint & | operator*= (double) |
ON_4dPoint | operator+ (const ON_4dPoint &) const |
ON_4dPoint & | operator+= (const ON_4dPoint &) |
ON_4dPoint | operator- (const ON_4dPoint &) const |
ON_4dPoint & | operator-= (const ON_4dPoint &) |
ON_4dPoint | operator/ (double) const |
ON_4dPoint & | operator/= (double) |
ON_4dPoint & | operator= (const ON_4dPoint &)=default |
ON_4dPoint & | operator= (const ON_2dPoint &) |
use implicit operator=(const ON_4dPoint&) More... | |
ON_4dPoint & | operator= (const ON_3dPoint &) |
ON_4dPoint & | operator= (const ON_2dVector &) |
ON_4dPoint & | operator= (const ON_3dVector &) |
ON_4dPoint & | operator= (const double *) |
ON_4dPoint & | operator= (const class ON_2fPoint &) |
ON_4dPoint & | operator= (const class ON_3fPoint &) |
ON_4dPoint & | operator= (const class ON_4fPoint &) |
ON_4dPoint & | operator= (const class ON_2fVector &) |
ON_4dPoint & | operator= (const class ON_3fVector &) |
ON_4dPoint & | operator= (const float *) |
bool | operator== (const ON_4dPoint &rhs) const |
double & | operator[] (int) |
index operators mimic double[4] behavior More... | |
double | operator[] (int) const |
double & | operator[] (unsigned int) |
double | operator[] (unsigned int) const |
void | Set (double x, double y, double z, double w) |
set 4d point value More... | |
void | Transform (const ON_Xform &) |
Static Public Member Functions | |
static int | DictionaryCompare (const ON_4dPoint &lhs, const ON_4dPoint &rhs) |
A well ordered dictionary compare function that is nan aware and can be used for robust sorting. More... | |
static double | InnerProduct (const ON_4dPoint &lhs, const ON_4dPoint &rhs) |
This function is provided because in rare cases it makes sense. If you are not certian why you want this value, think carefully or work with vectors and points in Euclidean coordinates. More... | |
static int | ProjectiveCompare (const ON_4dPoint &lhs, const ON_4dPoint &rhs) |
A well ordered projective compare function that is nan aware and can be used for robust sorting. More... | |
Public Attributes | |
double | w |
double | x |
double | y |
double | z |
Static Public Attributes | |
static const ON_4dPoint | Nan |
static const ON_4dPoint | Zero |
|
default |
x,y,z,w not initialized
|
default |
|
default |
|
explicit |
ON_4dPoint::ON_4dPoint | ( | const ON_2dPoint & | ) |
These constructors are not explicit because no informtion is lost.
ON_4dPoint::ON_4dPoint | ( | const ON_3dPoint & | ) |
ON_4dPoint::ON_4dPoint | ( | const ON_2dVector & | ) |
ON_4dPoint::ON_4dPoint | ( | const ON_3dVector & | ) |
|
explicit |
ON_4dPoint::ON_4dPoint | ( | const ON_2fPoint & | ) |
These constructors are not explicit because no informtion is lost.
ON_4dPoint::ON_4dPoint | ( | const ON_3fPoint & | ) |
ON_4dPoint::ON_4dPoint | ( | const ON_4fPoint & | ) |
ON_4dPoint::ON_4dPoint | ( | const ON_2fVector & | ) |
ON_4dPoint::ON_4dPoint | ( | const ON_3fVector & | ) |
|
explicit |
ON__UINT32 ON_4dPoint::DataCRC | ( | ON__UINT32 | current_remainder | ) | const |
|
static |
A well ordered dictionary compare function that is nan aware and can be used for robust sorting.
double ON_4dPoint::EuclideanX | ( | ) | const |
If w is 0.0 or nan, the result will be a nan.
double ON_4dPoint::EuclideanY | ( | ) | const |
If w is 0.0 or nan, the result will be a nan.
double ON_4dPoint::EuclideanZ | ( | ) | const |
If w is 0.0 or nan, the result will be a nan.
|
static |
This function is provided because in rare cases it makes sense. If you are not certian why you want this value, think carefully or work with vectors and points in Euclidean coordinates.
bool ON_4dPoint::IsUnset | ( | ) | const |
bool ON_4dPoint::IsValid | ( | ) | const |
double ON_4dPoint::MaximumCoordinate | ( | ) | const |
int ON_4dPoint::MaximumCoordinateIndex | ( | ) | const |
double ON_4dPoint::MinimumCoordinate | ( | ) | const |
int ON_4dPoint::MinimumCoordinateIndex | ( | ) | const |
bool ON_4dPoint::Normalize | ( | ) |
ON_4dPoint::operator const double * | ( | ) | const |
ON_4dPoint::operator double * | ( | ) |
(double*) conversion operators
bool ON_4dPoint::operator!= | ( | const ON_4dPoint & | rhs | ) | const |
ON_4dPoint ON_4dPoint::operator* | ( | double | ) | const |
ON_4dPoint ON_4dPoint::operator* | ( | const ON_Xform & | ) | const |
ON_4dPoint& ON_4dPoint::operator*= | ( | double | ) |
ON_4dPoint ON_4dPoint::operator+ | ( | const ON_4dPoint & | ) | const |
ON_4dPoint& ON_4dPoint::operator+= | ( | const ON_4dPoint & | ) |
ON_4dPoint ON_4dPoint::operator- | ( | const ON_4dPoint & | ) | const |
ON_4dPoint& ON_4dPoint::operator-= | ( | const ON_4dPoint & | ) |
ON_4dPoint ON_4dPoint::operator/ | ( | double | ) | const |
ON_4dPoint& ON_4dPoint::operator/= | ( | double | ) |
|
default |
ON_4dPoint& ON_4dPoint::operator= | ( | const ON_2dPoint & | ) |
use implicit operator=(const ON_4dPoint&)
ON_4dPoint& ON_4dPoint::operator= | ( | const ON_3dPoint & | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const ON_2dVector & | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const ON_3dVector & | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const double * | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const class ON_2fPoint & | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const class ON_3fPoint & | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const class ON_4fPoint & | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const class ON_2fVector & | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const class ON_3fVector & | ) |
ON_4dPoint& ON_4dPoint::operator= | ( | const float * | ) |
bool ON_4dPoint::operator== | ( | const ON_4dPoint & | rhs | ) | const |
double& ON_4dPoint::operator[] | ( | int | ) |
index operators mimic double[4] behavior
double ON_4dPoint::operator[] | ( | int | ) | const |
double& ON_4dPoint::operator[] | ( | unsigned | int | ) |
double ON_4dPoint::operator[] | ( | unsigned | int | ) | const |
|
static |
A well ordered projective compare function that is nan aware and can be used for robust sorting.
double c = non-nan value. ON_4dPoint h0 = ...; ON_4dPoint h1(c*h0.x,c*h0.x,c*h0.x,c*h0.x); 0 == ON_4dPoint::ProjectiveCompare(h0,ha);
void ON_4dPoint::Set | ( | double | x, |
double | y, | ||
double | z, | ||
double | w | ||
) |
set 4d point value
void ON_4dPoint::Transform | ( | const ON_Xform & | ) |
|
static |
double ON_4dPoint::w |
double ON_4dPoint::x |
double ON_4dPoint::y |
double ON_4dPoint::z |
|
static |