C3D Toolkit
Kernel - 117958, Vision - 2.7.6.12
|
Classes | |
class | MbVertex |
Vertex. More... | |
class | MbEdge |
Edge. More... | |
class | MbCurveEdge |
Face edge. More... | |
class | MbOrientedEdge |
Oriented edge. More... | |
class | MbLoop |
Face loop. More... | |
struct | LoopCrossParam |
Parameter of loops self-intersection. More... | |
class | MbFace |
Face. More... | |
class | MbFaceShell |
Shell or set of faces. More... | |
class | MbLabel |
A label for performing of operations. More... | |
class | MbTopItem |
Topological object in three-dimensional space. More... | |
class | MbTopologyItem |
Topological object with name. More... | |
class | MbTopologyProxy |
Topology object proxy. More... | |
Enumerations | |
enum | MbeTopologyType { tt_Undefined = 0 , tt_TopItem = 1 , tt_Proxy = 10 , tt_Vertex = 101 , tt_Edge = 201 , tt_CurveEdge = 202 , tt_OrientedEdge = 203 , tt_Loop = 301 , tt_Face = 401 , tt_FaceShell = 501 , tt_FreeItem = 600 } |
Types of topological objects. More... | |
enum | MbeChangedType { tct_Unchanged = 0x0000 , tct_Modified = 0x0001 , tct_Created = 0x0002 , tct_Transformed = 0x0004 , tct_Reoriented = 0x0008 , tct_Deleted = 0x0010 , tct_Truncated = 0x0020 , tct_Merged = 0x0040 , tct_Replaced = 0x0080 , tct_Added = 0x0100 , tct_Renamed = 0x0200 } |
The types of modification states of a topological object. More... | |
Functions | |
double | MbFace::DistanceToBorder (const MbCartPoint &point, double &precision) const |
Find a parametric distance to the nearest boundary. More... | |
double | MbFace::DistanceToBorder (const MbCartPoint &point, MbVector &normal, size_t &loopNumber, size_t &edgeNumber, ptrdiff_t &corner, double &tEdgeCurve, double &precision) const |
Find a parametric distance to the nearest boundary. More... | |
MbeItemLocation | MbFace::NearPointProjection (const MbCartPoint3D &point, double &u, double &v, MbVector3D &normal, c3d::IndicesPair &edgeLoc, ptrdiff_t &corner) const |
Find the nearest projection of the point on face. More... | |
virtual void | MbTopologyItem::Transform (const MbMatrix3D &matr, MbRegTransform *iReg=nullptr)=0 |
Transform according to the matrix. More... | |
virtual void | MbTopologyItem::Move (const MbVector3D &to, MbRegTransform *iReg=nullptr)=0 |
Move along a vector. More... | |
virtual void | MbTopologyItem::Rotate (const MbAxis3D &axis, double angle, MbRegTransform *iReg=nullptr)=0 |
Rotate around an axis. More... | |
enum MbeTopologyType |
Types of topological objects.
enum MbeChangedType |
The types of modification states of a topological object.
double MbFace::DistanceToBorder | ( | const MbCartPoint & | point, |
double & | precision | ||
) | const |
Find a parametric distance to the nearest boundary.
The calculated distance is positive if the point is inside, and is negative if it is outside.
[in] | point | - A point. |
[out] | precision | - Precision of calculation. |
double MbFace::DistanceToBorder | ( | const MbCartPoint & | point, |
MbVector & | normal, | ||
size_t & | loopNumber, | ||
size_t & | edgeNumber, | ||
ptrdiff_t & | corner, | ||
double & | tEdgeCurve, | ||
double & | precision | ||
) | const |
Find a parametric distance to the nearest boundary.
The calculated distance is positive if the point is inside, and is negative if it is outside.
[in] | point | - A point. |
[out] | normal | - Two-dimensional normal of border at its closest point. |
[out] | loopNumber | - Index of nearest loop. |
[out] | edgeNumber | - Index of nearest edge. |
[out] | corner | - 0, if the projection is not located on the edge, 1, if the projection is located at the end of the oriented edge with index edgeLoc, -1, if the projection is located at the begining of the oriented edge with index edgeLoc. |
[out] | tEdgeCurve | - Curve parameter of the nearest edge. |
[out] | precision | - Precision of calculation. |
MbeItemLocation MbFace::NearPointProjection | ( | const MbCartPoint3D & | point, |
double & | u, | ||
double & | v, | ||
MbVector3D & | normal, | ||
c3d::IndicesPair & | edgeLoc, | ||
ptrdiff_t & | corner | ||
) | const |
Find the nearest projection of the point on face.
Find the nearest projection of the point on face or it border.
[in] | point | - A point. |
[out] | u | - Found u parameter of surface. |
[out] | v | - Found v parameter of surface. |
[out] | normal | - Normal of surface or boundaries (edges or vertices) at the point of the projection. |
[out] | edgeLoc | - If the projection is not no the edge, then SYS_MAX_T, SYS_MAX_T. If the projection is on the edge, then the loop index and edge index in the loop. |
[out] | corner | - 0, if the projection is not located on the edge, 1, if the projection is located at the end of the oriented edge with index edgeLoc, -1, if the projection is located at the begining of the oriented edge with index edgeLoc. |
|
pure virtual |
Transform according to the matrix.
Transformation of an object according to the matrix. This object can be contained as pointer in several other objects for transformations. Registrar is used to prevent multiple transformation of this object. When transforming the object with registrator, the existence of the object inside the registrator is verified. If such object is absent, it is stored to the registrator and transformed, otherwise, a transformation of the object is not performed.
[in] | matr | - A transformation matrix. |
[in] | iReg | - Registrator. |
Implemented in MbTopologyProxy, MbFace, MbEdge, and MbVertex.
|
pure virtual |
Move along a vector.
Move an object along a vector. When transforming the object with registrator, the existence of the object inside the registrator is verified. If such object is absent, it is stored to the registrator and transformed, otherwise, a transformation of the object is not performed.
[in] | to | - Translation vector. |
[in] | iReg | - Registrator. |
Implemented in MbTopologyProxy, MbFace, MbEdge, and MbVertex.
|
pure virtual |
Rotate around an axis.
Rotate an object at a given angle around an axis. When transforming the object with registrator, the existence of the object inside the registrator is verified. If such object is absent, it is stored to the registrator and transformed, otherwise, a transformation of the object is not performed.
[in] | axis | - Rotation axis. |
[in] | angle | - The rotation angle. |
[in] | iReg | - Registrator. |
Implemented in MbTopologyProxy, MbFace, MbEdge, and MbVertex.