C3D Toolkit  Kernel - 117982, Vision -

Three-dimensional point. More...

#include <mesh_float_point3d.h>

Public Member Functions

 MbFloatPoint3D ()
 Default constructor. More...
 MbFloatPoint3D (const MbCartPoint3D &)
 Constructor by Euclidean point.
 MbFloatPoint3D (const MbVector3D &)
 Constructor by a radius-vector.
 MbFloatPoint3D (const MbFloatPoint3D &p)
 MbFloatPoint3D (const MbFloatVector3D &)
 Constructor by a radius-vector.
 MbFloatPoint3D (double xx, double yy, double zz)
Functions of point.
void Init (const MbCartPoint3D &)
 Initialize by point.
void Init (const MbVector3D &)
 Initialization by a radius-vector.
void Init (double xx, double yy, double zz)
 Initialization by coordinates.
void Set (const MbFloatPoint3D &v1, float t1, const MbFloatPoint3D &v2, float t2)
MbFloatPoint3DSet (const MbFloatPoint3D &v1, const MbFloatVector3D &v2, float t2)
 Equate coordinates to sum of point coordinates and vector coordinates. More...
void Transform (const MbMatrix3D &)
 Transform according to the matrix.
void Move (const MbVector3D &)
 Translate along a vector.
void Rotate (const MbAxis3D &, double angle)
 Rotate about an axis by an angle.
void TransformAsVector (const MbMatrix3D &)
 Transform an element as vector according to the matrix (without taking translation into account).
void RotateAsVector (const MbAxis3D &, double angle)
 Rotate an element as a vector by an angle about an axis (without taking translation into account).
void GetCartPoint (MbCartPoint3D &p) const
 Get the Cartesian point.
void GetVector (MbVector3D &p) const
 Get the vector.
void operator= (const MbCartPoint3D &)
 Assign values of point.
void operator= (const MbVector3D &)
 Assign values of vector.
void operator= (const MbFloatPoint3D &)
 Assign values of point.
bool operator== (const MbFloatPoint3D &) const
 Check for equality.
float DistanceToPoint (const MbFloatPoint3D &) const
 Calculate distance to point.
float DistanceToPoint2 (const MbFloatPoint3D &) const
 Calculate squared distance to point.
void operator+= (const MbFloatPoint3D &)
 Add coordinates of point.
void operator-= (const MbFloatPoint3D &)
 Subtract coordinates of point.
void operator+= (const MbFloatVector3D &)
 Add coordinates of vector.
void operator-= (const MbFloatVector3D &)
 Subtract coordinates of vector.
MbFloatPoint3D operator+ (const MbFloatVector3D &) const
 Addition of point and vector.
MbFloatPoint3D operator- (const MbFloatVector3D &) const
 Subtraction of vector from point.
MbFloatVector3D operator+ (const MbFloatPoint3D &) const
 Addition of two points.
MbFloatVector3D operator- (const MbFloatPoint3D &) const
 Subtraction of two points.
float & operator[] (size_t i)
 Get coordinate by its index.
float operator[] (size_t i) const
 Get coordinate by its index.
bool IsZero (double eps=Math::lengthEpsilon) const
 Whether coordinates is equal to zero with specified tolerance.
void GetProperties (MbProperties &)
 Get properties of the object.
void SetProperties (const MbProperties &)
 Set properties of the object.
bool IsSame (const MbFloatPoint3D &, double accuracy) const
 Are the objects equal? More...

Public Attributes

float x
 First coordinate of point.
float y
 Second coordinate of point.
float z
 Third coordinate of point.

Detailed Description

Three-dimensional point.

MbFloatPoint3D class is used for a three-dimensional point representation as well as a similar MbCartPoint3D class which differs by higher precision of representation. MbFloatPoint3D has data structure consisting of a triple of a single precision floating point numbers (float). Used for polygonal representation of a three-dimensional geometric objects in such data structures as polygon (MbPolygon3D) or triangulation (MbGrid).

Constructor & Destructor Documentation

◆ MbFloatPoint3D()

MbFloatPoint3D::MbFloatPoint3D ( )

Default constructor.

Constructs a point with coordinates (0.0, 0.0, 0.0).

Member Function Documentation

◆ Set()

MbFloatPoint3D & MbFloatPoint3D::Set ( const MbFloatPoint3D v1,
const MbFloatVector3D v2,
float  t2 

Equate coordinates to sum of point coordinates and vector coordinates.

Equate coordinates to sum of v1 point coordinates and v2 vector coordinates multiplied by t2.

[in]v1- The initial point.
[in]v2- The initial vector.
[in]t2- Factor the coordinates of the initial vector v2 are multiplied by.

◆ IsSame()

bool MbFloatPoint3D::IsSame ( const MbFloatPoint3D other,
double  accuracy 
) const

Are the objects equal?

The objects are equal if their data are equal with a given accuracy.

[in]other- The object to compare.
[in]accuracy- The accuracy to compare.
Whether the objects are equal.

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