C3D Toolkit
Kernel - 117958, Vision - 2.7.6.12
|
The generating data. More...
#include <op_swept_parameter.h>
Public Types | |
enum class | MbeWireFrameType { undefined = 0 , planeContours = 1 , surfaceContours = 2 , spaceContours = 3 } |
Wire frame interpretation type. More... | |
Public Member Functions | |
MbSweptData () | |
Default constructor. | |
MbSweptData (const MbSweptData &, MbRegDuplicate *ireg=nullptr) | |
Copy-constructor. | |
MbSweptData (const MbPlacement3D &place, MbContour &contour) | |
Constructor of planar swept. More... | |
MbSweptData (MbSurface &_surface, RPArray< MbContour > &_contours) | |
Constructor. More... | |
MbSweptData (MbSurface &_surface, c3d::PlaneContoursSPtrVector &_contours) | |
Constructor. More... | |
MbSweptData (MbCurve3D &_curve3d) | |
Constructor. More... | |
MbSweptData (c3d::SpaceCurvesSPtrVector &_curves3d) | |
Constructor by 3d curves. More... | |
MbSweptData (MbContour3D &_contour3d) | |
Constructor. More... | |
MbSweptData (RPArray< MbContour3D > &_contours3d) | |
Constructor. More... | |
MbSweptData (c3d::SpaceContoursSPtrVector &_contours3d) | |
Constructor. More... | |
MbSweptData (MbSolid &_solid, const MbSNameMaker *newNameMaker=nullptr) | |
Constructor. More... | |
MbSweptData (MbSurface *_surface, RPArray< MbContour > &_contours, RPArray< MbContour3D > &_contours3d, MbSolid *_solid) | |
Constructor. More... | |
MbSweptData (MbWireFrame &_wireFrame, MbeWireFrameType _wireFrameType=MbeWireFrameType::undefined) | |
Constructor. More... | |
~MbSweptData () | |
Destructor. | |
bool | AddData (MbSurface &_surface, const RPArray< MbContour > &_contours) |
Add data. More... | |
bool | AddData (MbSurface &_surface, c3d::PlaneContoursSPtrVector &_contours) |
Add data. More... | |
size_t | CurvesCount () const |
The count of all the curves. More... | |
SPtr< MbCurve3D > | GetCurve3D (size_t i) const |
Get the curve by the index. More... | |
bool | IsSurfaceCurvesData () const |
Is there data of two-dimensional curves on the surface? | |
bool | IsSpaceCurvesData () const |
Is there data of spatial curves? | |
bool | IsWireFrameData () const |
Is there data about the wire frame? | |
bool | IsSolidData () const |
Is there data about the solid? | |
const MbSurface * | GetSurface () const |
Get the surface. | |
MbSurface * | SetSurface () |
Get the surface for editing. | |
void | SetSurface (const MbSurface &surf) |
Set a surface. More... | |
const c3d::PlaneContoursSPtrVector & | GetContours () const |
Get the set of two-dimensional contours. | |
const c3d::SpaceContoursSPtrVector & | GetContours3D () const |
Get the set of three-dimensional contours. | |
const MbWireFrame * | GetWireFrame () const |
Get the wire frame. | |
MbWireFrame * | SetWireFrame () const |
Get the wire frame for editing. | |
MbeWireFrameType | GetWireFrameType () const |
Get wire frame interpretation type. | |
const MbSolid * | GetSolid () const |
Get the solid. | |
MbSolid * | SetSolid () const |
Get the solid for editing. | |
void | RebuildItem () |
Rebuild object according to the history tree. For rebuilding the wire frame. | |
void | GetWireFrameContours (c3d::PlaneContoursSPtrVector &wireContours, c3d::SurfaceSPtr &wireSurface, c3d::SpaceContoursSPtrVector &wireContours3D, RPArray< MbSNameMaker > *contoursNames=nullptr) const |
Get two-dimensional contours with a surface or three-dimensional contours obtained from a wireframe. More... | |
size_t | GetWireFrameSurfaceContours (c3d::SurfacesSPtrVector &wireSurfaces, std::vector< c3d::PlaneContoursSPtrVector > &wireContours, std::vector< c3d::SNamesMakerSPtrVector > &contoursNames) const |
Get two-dimensional contours with a surface obtained from a wireframe. More... | |
size_t | GetWireFrameSpaceContours (c3d::SpaceContoursSPtrVector &wireContours3D, c3d::SNamesMakerSPtrVector &contoursNames) const |
Get space contours obtained from a wireframe. More... | |
void | Transform (const MbMatrix3D &matr, MbRegTransform *iReg=nullptr) |
Transform the object. More... | |
void | Move (const MbVector3D &to, MbRegTransform *iReg=nullptr) |
Move the object. More... | |
void | Rotate (const MbAxis3D &axis, double angle, MbRegTransform *iReg=nullptr) |
Rotate the object. More... | |
bool | IsSame (const MbSweptData &other, double accuracy) const |
Determine whether the objects are equal. More... | |
bool | IsSimilar (const MbSweptData &other) const |
Determine whether the objects are similar. More... | |
bool | SetEqual (const MbSweptData &other) |
Make objects equal. More... | |
bool | IsContoursClosed () const |
Whether all contours are closed. More... | |
bool | CheckSurfaceContourConnection (double eps) const |
Check that there are no gaps between the segments of the surface contours. | |
bool | CheckSpaceContourConnection (double eps) const |
Check that there are no gaps between the segments of the spatial contours. | |
The generating data.
Data about generating of movement operation.
При указании тела и поверхности одновременно предполагается, что выполняется кинематическая операция над телом вдоль кривой на этой поверхности, причем движение согласовано с нормалью.
Generating of extrusion operation, rotation or sweeping operation can include a set of two-dimensional contours, a set of three-dimensional contours, wire frame, solid.
For a set of two-dimensional contours on the surface, the following restrictions:
|
strong |
MbSweptData::MbSweptData | ( | const MbPlacement3D & | place, |
MbContour & | contour | ||
) |
Constructor of planar swept.
Constructor of planar swept from one contour.
[in] | place | - A local coordinate system. |
[in] | contour | - Contour in parameters of the given coordinate system. Used original. |
Constructor.
Constructor by a set of contours on a surface.
[in] | _surface | - The surface. Used original. |
[in] | _contours | - A set of contours. Used originals. |
MbSweptData::MbSweptData | ( | MbSurface & | _surface, |
c3d::PlaneContoursSPtrVector & | _contours | ||
) |
Constructor.
Constructor by a set of contours on a surface.
[in] | _surface | - The surface. Used original. |
[in] | _contours | - A set of contours. Used originals. |
MbSweptData::MbSweptData | ( | MbCurve3D & | _curve3d | ) |
Constructor.
Constructor by a contour.
[in] | _curve3d | - A curve. Used originals. |
MbSweptData::MbSweptData | ( | c3d::SpaceCurvesSPtrVector & | _curves3d | ) |
Constructor by 3d curves.
Constructor by 3d curves.
[in] | _curves3d | - A curves. Used originals. |
MbSweptData::MbSweptData | ( | MbContour3D & | _contour3d | ) |
Constructor.
Constructor by a contour.
[in] | _contour3d | - A contour. Used originals. |
MbSweptData::MbSweptData | ( | RPArray< MbContour3D > & | _contours3d | ) |
Constructor.
Constructor by a set of spatial contours.
[in] | _contours3d | - A set of contours. Used originals. |
MbSweptData::MbSweptData | ( | c3d::SpaceContoursSPtrVector & | _contours3d | ) |
Constructor.
Constructor by a set of spatial contours.
[in] | _contours3d | - A set of contours. Used originals. |
MbSweptData::MbSweptData | ( | MbSolid & | _solid, |
const MbSNameMaker * | newNameMaker = nullptr |
||
) |
Constructor.
Constructor by a solid.
[in] | _solid | - A solid. Used original of object. |
[in] | newNameMaker | - New main name for names of solid's topological elements. |
MbSweptData::MbSweptData | ( | MbSurface * | _surface, |
RPArray< MbContour > & | _contours, | ||
RPArray< MbContour3D > & | _contours3d, | ||
MbSolid * | _solid | ||
) |
Constructor.
Constructor of mixed swept.
[in] | _surface | - The surface. Used original. |
[in] | _contours | - Set of two-dimensional contours in the parameters of the given surface. Used originals. |
[in] | _contours3d | - A set of three-dimensional contours. Used originals. |
[in] | _solid | - A solid. Used original of object. |
MbSweptData::MbSweptData | ( | MbWireFrame & | _wireFrame, |
MbeWireFrameType | _wireFrameType = MbeWireFrameType::undefined |
||
) |
Constructor.
Constructor по three-dimensional wire frame. Used original.
[in] | _wireFrame | - Three-dimensional wire frame. |
[in] | _wireFrameType | - Wire frame interpretation type. |
Add data.
Add data about contours to the surface.
[in] | _surface | - The surface. Added original of the object. |
[in] | _contours | - A set of contours. Originals are added. |
bool MbSweptData::AddData | ( | MbSurface & | _surface, |
c3d::PlaneContoursSPtrVector & | _contours | ||
) |
Add data.
Add data about contours to the surface.
[in] | _surface | - The surface. Added original of the object. |
[in] | _contours | - A set of contours. Originals are added. |
size_t MbSweptData::CurvesCount | ( | ) | const |
The count of all the curves.
The total count of two and three-dimensional curves.
Get the curve by the index.
Get the curve from set of curves on the surface and three-dimensional curves.
[in] | i | - The index of curve from 0 to CurvesCount(). |
Set a surface.
Set a surface.
Set surface carrier of two-dimensional contours or desired surface-carrier of guide curve.
[in] | surf | - Surface carrier of two-dimensional contours or desired surface-carrier of guide curve. |
void MbSweptData::GetWireFrameContours | ( | c3d::PlaneContoursSPtrVector & | wireContours, |
c3d::SurfaceSPtr & | wireSurface, | ||
c3d::SpaceContoursSPtrVector & | wireContours3D, | ||
RPArray< MbSNameMaker > * | contoursNames = nullptr |
||
) | const |
Get two-dimensional contours with a surface or three-dimensional contours obtained from a wireframe.
Get two-dimensional contours with a surface or three-dimensional contours obtained from a wireframe. A wireframe is treated as a surface contours if the contours have a common surface, else than spatial.
[out] | wireContours | - Set of two-dimensional contours.. |
[out] | wireSurface | - Surface. |
[out] | wireContours3D | - Set of three-dimensional contours. |
[in,out] | contoursNames | - At the input - the frame edge namer. At the output - the namer of the obtained contours. |
size_t MbSweptData::GetWireFrameSurfaceContours | ( | c3d::SurfacesSPtrVector & | wireSurfaces, |
std::vector< c3d::PlaneContoursSPtrVector > & | wireContours, | ||
std::vector< c3d::SNamesMakerSPtrVector > & | contoursNames | ||
) | const |
Get two-dimensional contours with a surface obtained from a wireframe.
Get two-dimensional contours with a surface obtained from a wireframe. Contours will be created if the wireframe type is set to frameType == wft_planeContours or frameType == wft_surfaceContours. The frame is treated as flat or surface contours, depending on the specified frameType
[out] | wireSurfaces | - A set of surfaces. |
[out] | wireContours | - Sets of two-dimensional contours for all surface. |
size_t MbSweptData::GetWireFrameSpaceContours | ( | c3d::SpaceContoursSPtrVector & | wireContours3D, |
c3d::SNamesMakerSPtrVector & | contoursNames | ||
) | const |
Get space contours obtained from a wireframe.
Get space contours obtained from a wireframe. Contours will be created if frameType == wrf_spaceContours is set.
[out] | wireContours | - Sets of two-dimensional contours for all surface. |
void MbSweptData::Transform | ( | const MbMatrix3D & | matr, |
MbRegTransform * | iReg = nullptr |
||
) |
Transform the object.
Transform the initial object according to the matrix using the registrator.
[in] | matr | - A transformation matrix. |
[in] | iReg | - Registrator. |
void MbSweptData::Move | ( | const MbVector3D & | to, |
MbRegTransform * | iReg = nullptr |
||
) |
Move the object.
Move a geometric object along the vector using the registrator.
[in] | to | - Translation vector. |
[in] | iReg | - Registrator. |
void MbSweptData::Rotate | ( | const MbAxis3D & | axis, |
double | angle, | ||
MbRegTransform * | iReg = nullptr |
||
) |
Rotate the object.
Rotate an object about the axis by the given angle using the registrator.
[in] | axis | - The rotation axis. |
[in] | angle | - The rotation angle. |
[in] | iReg | - Registrator. |
bool MbSweptData::IsSame | ( | const MbSweptData & | other, |
double | accuracy | ||
) | const |
Determine whether the objects are equal.
Determine whether the objects are equal with defined accuracy.
[in] | other | - Object for comparison. |
bool MbSweptData::IsSimilar | ( | const MbSweptData & | other | ) | const |
Determine whether the objects are similar.
Similar object can be initialized by data of object which is similar to it.
[in] | other | - Object for comparison. |
bool MbSweptData::SetEqual | ( | const MbSweptData & | other | ) |
Make objects equal.
It is possible to make equal only similar objects.
[in] | init | - Object for initialization. |
bool MbSweptData::IsContoursClosed | ( | ) | const |
Whether all contours are closed.
Whether all contours are closed.