C3D Toolkit
Kernel - 117982, Vision - 2.9.2.2
|
Classes | |
class | MbProjectionsObjects |
The additional projected objects. More... | |
class | GetVestigesTransData |
A structure for data transmission between threads. More... | |
struct | MbMapSettings |
Parameters for the construction of one view projection. . More... | |
class | MbMapBodiesPArray |
The set of solids projections. More... | |
struct | MbMapVisibilityMode |
Visibility mode of mapping. More... | |
class | CurveWType |
The curve with the type and tolerance. More... | |
class | MbAnnCurves |
The array of annotative curves. More... | |
class | MbSimbolthThreadView |
The implementation of the annotation view interface. More... | |
struct | ItAnnObjectStore |
The interface of annotated objects storage. More... | |
struct | ItSymbolObjectStore |
The interface of storage of conventional notations. More... | |
class | MbSpacePoints |
The array of spatial points for projection. More... | |
class | MbSpaceCurves |
An array of spatial curves for projection. More... | |
struct | MbCutLump |
Solid with a sing cutting in derive view. More... | |
struct | MbMappingLumps |
A solid or a set of solids which are defined in a coordinate system with an attribute of cutting in sections and cutaways. More... | |
class | MbPolygon3DSolid |
A polygon with a solid. More... | |
class | MbMapViewInfo |
The information about a view. More... | |
class | MbCompContourArray |
An array of contours belonging to the certain component. More... | |
class | MbSectionMap |
A data for constructing a set of sections and cutaways of shells. More... | |
struct | MbSectionMapIteratorAbs |
The interface of iterator of section views. More... | |
class | MbSectionMapIterator |
The iterator of section views of solid. More... | |
class | MbLocalSectionMapIterator |
The iterator of local views of sections of solid. More... | |
struct | ThreadMapperStruct |
A structure for the thread mapping creator. More... | |
class | MbBaseVestige |
The vestige of three-dimensional object. More... | |
class | MbVertexVestige |
The vestige of a vertex. More... | |
struct | MbCurveVestige |
The information about a curve vestige. More... | |
class | MbEdgeVestige |
The vestige of an edge or a curve. More... | |
class | MbFaceVestige |
The vestige of a face. More... | |
class | MbAnnotationEdgeVestige |
The vestige of an annotative object. More... | |
class | MbSymbolVestige |
The vestige of a conventional notation. More... | |
struct | MbVEFVestiges |
The set of arrays which are given after getting of all lines. More... | |
Enumerations | |
enum | AnnotatedObjectType { aot_SymbolicThread = 0 , aot_SymbolicThread_CuttedView , aot_SymbolicThread_SectionView } |
A type of an annotated object. More... | |
enum | MbeMapViewType { mvt_View , mvt_Cut , mvt_Section } |
A type of an associative view. More... | |
enum | MbMapSpaceCurveType { mst_Unset = 0 , mst_Degenerate , mst_Line , mst_Circle , mst_Ellipse , mst_Arbitrary } |
Тип пространственной геометрии кривой. More... | |
enum | MbeThrMapType { tmt_CompleteView = 0 , tmt_CuttedView , tmt_SectionView } |
Mapping type. More... | |
enum | MbeThrState { ts_NotChanged = 0 , ts_Changed , ts_Degenerated } |
Thread state. More... | |
enum | MbeThrAdapt { ta_UsingNothing = 0 , ta_UsingGabarit , ta_UsingSurfaces , ta_UsingSolid , ta_TypesCount } |
Method of thread fitting (adapting). More... | |
Functions | |
MbResultType | SilhouetteCurve (const MbSurface &surface, const MbVector3D &eye, bool perspective, bool removeOnSurfaceBounds, RPArray< MbCurve3D > &result, VERSION version=Math::DefaultMathVersion()) |
Create an array of isocline curves of the surface. More... | |
MbResultType | SilhouetteCurve (const MbFace &face, const MbVector3D &eye, bool perspective, RPArray< MbCurve3D > &result, VERSION version=Math::DefaultMathVersion()) |
Create an array of isocline curves of the face. More... | |
MbResultType | SilhouetteCurve (const MbSurface &surface, const MbAxis3D &axis, bool removeOnSurfaceBounds, RPArray< MbCurve3D > &curves, VERSION version=Math::DefaultMathVersion()) |
Create an array of isocline curves of the rotated surface. More... | |
MbResultType | SilhouetteCurve (const MbFace &face, const MbAxis3D &axis, RPArray< MbCurve3D > &curves, VERSION version=Math::DefaultMathVersion()) |
Create an array of isocline curves of the rotated face. More... | |
MbResultType | GetVestiges (const MbPlacement3D &place, double znear, const RPArray< MbLump > &lumps, const MbProjectionsObjects &objects, MbVEFVestiges &result, const MbMapVisibilityMode &visMode, VERSION version=Math::DefaultMathVersion(), bool merge=true, const std::vector< MbLumpCube > *prevCubes=nullptr) |
Construction of view projections. More... | |
MbResultType | GetVestiges (const SArray< MbMapSettings > &settings, const RPArray< MbLump > &lumps, const MbProjectionsObjects &objects, PArray< MbVEFVestiges > &results, VERSION version=Math::DefaultMathVersion()) |
Construction of several view projections. More... | |
void | JustCutLimitCurve (const RPArray< MbLump > &lumps, const MbCurve &contour, const SArray< MbCrossPoint > &cross, const MbMapViewInfo &baseViewInfo, const MbMapViewInfo &viewInfo, RPArray< MbCurve > &curves) |
The definition of boundary curve regions. More... | |
void | HiddenLinesMapping (const RPArray< MbLump > &lumps, const MbPlacement3D &place, double znear, double sag, PArray< MbPolygon3DSolid > &visibleEdges, PArray< MbPolygon3DSolid > &hiddenEdges, PArray< MbPolygon3DSolid > &visibleTangs, PArray< MbPolygon3DSolid > &hiddenTangs) |
Calculate polygons of lines. More... | |
void | VisualLinesMapping (const RPArray< MbLump > &lumps, const MbPlacement3D &place, double znear, double sag, PArray< MbPolygon3DSolid > &visibleEdges, PArray< MbPolygon3DSolid > &visibleTangs, VERSION version=Math::DefaultMathVersion()) |
Calculate polygons of visible lines. More... | |
int | AnnotationSort (const MbSimbolthThreadView **pf, const MbSimbolthThreadView **ps) |
Sort the objects. More... | |
void | SetCuttingFlags (RPArray< MbLump > &lumps, const SArray< uint > *baseNotSected, const SArray< uint > *deriveNotSected) |
Set cutting flags. More... | |
bool | PerformThreadMapping (const ThreadMapperStruct &_thrStruct, MbSimbolthThreadView &_symbView) |
Calculate thread mapping lines. More... | |
bool | PerformThreadMapping (const ThreadMapperStruct &_thrStruct, MbAnnCurves &annCurves) |
Calculate thread mapping lines. More... | |
MbEdgeVestige * | AddVestigeCurve (uint otherComp, size_t otherIdent, const MbName &otherName, RPArray< MbEdgeVestige > &arr, bool isCenterLine, bool ownName) |
Add the MbEdgeVestige to an array. More... | |
MbAnnotationEdgeVestige * | AddVestigeAnnotationEdge (uint otherComp, size_t otherIdent, const MbTopologyItem *otherItem, const MbName &otherName, MbBaseVestige::Type type, MbBaseVestige::SubType subType, RPArray< MbAnnotationEdgeVestige > &array) |
Add the MbAnnotationEdgeVestige to an array. More... | |
MbVertexVestige & | GetVertexI (size_t i, const MbVEFVestiges &vestiges) |
The access to an array element. More... | |
template<class ThreadsVector > | |
bool | CheckThreads (ThreadsVector &threads, const MbPlacement3D *placeSec, bool checkThreadNames, double angleEps=Math::angleRegion) |
Delete incorrect threads. More... | |
bool | GetThreadEdgeCentre (const MbCurveEdge &edge, MbCartPoint3D &pnt) |
Get a central point. More... | |
bool | CalculateThreadLimits (const MbFace &threadFace, const MbAxis3D &threadAxis, const MbFace &face, MbVector3D &threadDir, MbCartPoint3D &facePnt1, MbCartPoint3D &facePnt2, MbCartPoint3D &axisPnt1, MbCartPoint3D &axisPnt2, double dr=0.0, bool findCommonEdges=true) |
Find the boundary point of the thread. More... | |
enum AnnotatedObjectType |
enum MbeMapViewType |
enum MbMapSpaceCurveType |
Тип пространственной геометрии кривой.
Тип пространственной геометрии кривой.
enum MbeThrMapType |
Mapping type.
A type of thread mapping.
Enumerator | |
---|---|
tmt_CompleteView | Full view. Coordinate system in creator of thread mapping ThreadMapperStruct determines plane of view. Map all. |
tmt_CuttedView | The cutaway-view. Coordinate system in creator of thread mapping ThreadMapperStruct determines plane of cutaway. Map only that behind plane. |
tmt_SectionView | Section. Coordinate system in creator of thread mapping ThreadMapperStruct determines section plane. Map only that on plane. |
enum MbeThrState |
enum MbeThrAdapt |
MbResultType SilhouetteCurve | ( | const MbSurface & | surface, |
const MbVector3D & | eye, | ||
bool | perspective, | ||
bool | removeOnSurfaceBounds, | ||
RPArray< MbCurve3D > & | result, | ||
VERSION | version = Math::DefaultMathVersion() |
||
) |
Create an array of isocline curves of the surface.
Create an array of isocline curves of the surface with truncation by the definition domain.
[in] | surface | - The surface. |
[in] | eye | - The direction of view. |
[in] | perspective | - Whether the projection is perspective. |
[in] | removeOnSurfaceBounds | - Remove the isocline curves coincident with the surface bounds. |
[out] | result | - The output array of isocline curves. |
[in] | version | - The version. |
MbResultType SilhouetteCurve | ( | const MbFace & | face, |
const MbVector3D & | eye, | ||
bool | perspective, | ||
RPArray< MbCurve3D > & | result, | ||
VERSION | version = Math::DefaultMathVersion() |
||
) |
Create an array of isocline curves of the face.
Create an array of isocline curves of the face with truncation by the definition domain.
[in] | face | - The face. |
[in] | eye | - The direction of view. |
[in] | perspective | - Whether the projection is perspective. |
[out] | result | - The output array of isocline curves. |
[in] | version | - The version. |
MbResultType SilhouetteCurve | ( | const MbSurface & | surface, |
const MbAxis3D & | axis, | ||
bool | removeOnSurfaceBounds, | ||
RPArray< MbCurve3D > & | curves, | ||
VERSION | version = Math::DefaultMathVersion() |
||
) |
Create an array of isocline curves of the rotated surface.
Create an array of isocline curves of the surface with truncation by the definition domain.
[in] | surface | - The surface. |
[in] | axis | - The axis of lathe section. |
[in] | removeOnSurfaceBounds | - Remove the isocline curves coincident with the surface bounds. |
[out] | curves | - The output array of isocline curves. |
[in] | version | - The version. |
MbResultType SilhouetteCurve | ( | const MbFace & | face, |
const MbAxis3D & | axis, | ||
RPArray< MbCurve3D > & | curves, | ||
VERSION | version = Math::DefaultMathVersion() |
||
) |
Create an array of isocline curves of the rotated face.
Create an array of isocline curves of the face with truncation by the definition domain.
[in] | face | - The face. |
[in] | axis | - The axis of lathe section. |
[out] | result | - The output array of isocline curves. |
[in] | version | - The version. |
MbResultType GetVestiges | ( | const MbPlacement3D & | place, |
double | znear, | ||
const RPArray< MbLump > & | lumps, | ||
const MbProjectionsObjects & | objects, | ||
MbVEFVestiges & | result, | ||
const MbMapVisibilityMode & | visMode, | ||
VERSION | version = Math::DefaultMathVersion() , |
||
bool | merge = true , |
||
const std::vector< MbLumpCube > * | prevCubes = nullptr |
||
) |
Construction of view projections.
Construction of view projections to the given plane.
Creates a set of vestiges of objects - solids with matrices and additional projected objects.
[in] | place | - A projection plane. |
[in] | znear | - A parameter of perspective image. Should be set to 0.0. |
[in] | lumps | - Projected objects. |
[in] | objects | - Additional projected objects. |
[out] | result | - The result. |
[in] | visMode | - Visibility mode of mapping. Applicable to projections of solids, spatial points, spatial curves. Not applicable to conventional notations. |
[in] | version | - The version of construction. The last version Math::DefaultMathVersion(). |
[in] | merge | - Merge same curves (default true). |
[in] | prevCubes | - Bounding boxes of solids before changes. |
MbResultType GetVestiges | ( | const SArray< MbMapSettings > & | settings, |
const RPArray< MbLump > & | lumps, | ||
const MbProjectionsObjects & | objects, | ||
PArray< MbVEFVestiges > & | results, | ||
VERSION | version = Math::DefaultMathVersion() |
||
) |
Construction of several view projections.
Construction of projections to the given planes.
Creates sets of vestiges of objects (solids with matrices and additional projected objects).
[in] | settings | - An array of parameter sets for the construction of view projections. |
[in] | lumps | - Projected objects. |
[in] | objects | - Additional projected objects. |
[out] | results | - The results array (is erased prior to the calculations with objects deletion). Destruction of the results is a responsibility of the function caller. |
[in] | version | - The version of construction. The last version Math::DefaultMathVersion(). |
void JustCutLimitCurve | ( | const RPArray< MbLump > & | lumps, |
const MbCurve & | contour, | ||
const SArray< MbCrossPoint > & | cross, | ||
const MbMapViewInfo & | baseViewInfo, | ||
const MbMapViewInfo & | viewInfo, | ||
RPArray< MbCurve > & | curves | ||
) |
The definition of boundary curve regions.
Definition of regions of boundary curve of local view or remote view.
[in] | lumps | - Projected objects. |
[in] | contour | - A boundary curve. In the coordinate system of the view "viewInfo". |
[in] | cross | - Points of intersection between boundary curve and lines of drawing - points of intersection of curve on regions of different visibility. |
[in] | baseViewInfo | - The information about base view, on which a local or sectional view: a view type: mvt_View - View, mvt_Cut - Cutaway, mvt_Section - Section; a plane of view, cutaway or section. |
[in] | viewInfo | - The information about a view: a view type: mvt_View - A local view. A detail view, mvt_Cut - A local cutaway, mvt_Section - A local section; a plane of view, cutaway or section. If the type of derived and basic view is not equal to the mvt_View then the type of the derived view must coincide with the type of the basic view. |
[out] | curves | - The result - a set of visible pieces of a boundary curve. |
void HiddenLinesMapping | ( | const RPArray< MbLump > & | lumps, |
const MbPlacement3D & | place, | ||
double | znear, | ||
double | sag, | ||
PArray< MbPolygon3DSolid > & | visibleEdges, | ||
PArray< MbPolygon3DSolid > & | hiddenEdges, | ||
PArray< MbPolygon3DSolid > & | visibleTangs, | ||
PArray< MbPolygon3DSolid > & | hiddenTangs | ||
) |
Calculate polygons of lines.
Calculate polygons of visible and invisible lines for assembly.
[in] | lumps | - A set of solids with matrices. |
[in] | place | - A projection plane. |
[in] | znear | - A parameter of perspective mapping. Set to be equal to 0.0. |
[in] | sag | - An angular tolerance. |
[out] | visibleEdges | - Polygons of visible lines of edges. |
[out] | hiddenEdges | - Polygons of invisible lines of edges. |
[out] | visibleTangs | - Polygons of visible lines of smooth edges. |
[out] | hiddenTangs | - Polygons of invisible lines of smooth edges. |
void VisualLinesMapping | ( | const RPArray< MbLump > & | lumps, |
const MbPlacement3D & | place, | ||
double | znear, | ||
double | sag, | ||
PArray< MbPolygon3DSolid > & | visibleEdges, | ||
PArray< MbPolygon3DSolid > & | visibleTangs, | ||
VERSION | version = Math::DefaultMathVersion() |
||
) |
Calculate polygons of visible lines.
Calculate polygons of visible lines and isocline curves for assembly.
[in] | lumps | - A set of solids with matrices. |
[in] | place | - A projection plane. |
[in] | znear | - A parameter of perspective mapping. Set to be equal to 0.0. |
[in] | sag | - An angular tolerance. |
[out] | visibleEdges | - Polygons of visible lines. |
[out] | visibleTangs | - Polygons of visible lines of smooth edges. |
[in] | version | - The version. |
|
inline |
Sort the objects.
Sort the annotative objects by the component name.
[in] | pf | - The first object. |
[in] | ps | - The second object. |
void SetCuttingFlags | ( | RPArray< MbLump > & | lumps, |
const SArray< uint > * | baseNotSected, | ||
const SArray< uint > * | deriveNotSected | ||
) |
Set cutting flags.
Set cutting flags.
bool PerformThreadMapping | ( | const ThreadMapperStruct & | _thrStruct, |
MbSimbolthThreadView & | _symbView | ||
) |
Calculate thread mapping lines.
Calculate solid thread mapping lines (with interface).
Conditions for obtaining a set of curves for mapping:
[in] | _thrStruct | - Data for construction. |
[out] | _symbView | - A pointer to a view interface. Contains a set of curves of thread mapping in a solid coordinate system with visibility defining in projection. |
bool PerformThreadMapping | ( | const ThreadMapperStruct & | _thrStruct, |
MbAnnCurves & | annCurves | ||
) |
Calculate thread mapping lines.
Calculate solid thread mapping lines (without interface).
[in] | _thrStruct | - Data for construction. |
[out] | annCurves | - The array of annotative curves. |
|
inline |
Add the MbEdgeVestige to an array.
Add the MbEdgeVestige to an array by the private constructors.
[in] | otherComp | - A component. |
[in] | otherIdent | - A thread identifier. |
[in] | otherName | - A name of a topological object. |
[out] | array | - Array of edges. |
[in] | isCenterLine | - Is curve is center line or not. |
[in] | ownName | - Is otherName own object name or not. |
|
inline |
Add the MbAnnotationEdgeVestige to an array.
Add the MbAnnotationEdgeVestige to an array by the private constructors.
[in] | otherComp | - A component. |
[in] | otherIdent | - A thread identifier. |
[in] | otherItem | - A topological object. |
[in] | otherName | - A name of a topological object. |
[in] | type | - A subtype of annotative edges. |
[in] | subType | - A subtype of annotative edges. |
[out] | array | - Array of annotative edges. |
|
inline |
The access to an array element.
The access to an array element by an index.
[in] | i | - An index. |
[in] | array | - An array of vertices vestiges. |
bool CheckThreads | ( | ThreadsVector & | threads, |
const MbPlacement3D * | placeSec, | ||
bool | checkThreadNames, | ||
double | angleEps = Math::angleRegion |
||
) |
Delete incorrect threads.
Delete degenerate threads and ones incorrectly located relative to plane of view.\ From set of threads will be deleted:
1) null-pointers,
2) threads with incorrect parameters,
3) threads without names,
4) duplicate threads (warning raised in case of duplication - shouldn't be such situations),
5) incorrectly located relative to plane of view: thread axis must be parallel or perpendicular to Z-axis of plane.
[in,out] | threads | - Set of threads. |
[in] | placeSec | - Plane of view. |
[in] | checkThreadNames | - Whether a name of thread exists. |
bool GetThreadEdgeCentre | ( | const MbCurveEdge & | edge, |
MbCartPoint3D & | pnt | ||
) |
Get a central point.
Get a central point of closed edge or closed chain of edges.
[in] | edge | - Edge. |
[out] | pnt | - Central point as result. |
bool CalculateThreadLimits | ( | const MbFace & | threadFace, |
const MbAxis3D & | threadAxis, | ||
const MbFace & | face, | ||
MbVector3D & | threadDir, | ||
MbCartPoint3D & | facePnt1, | ||
MbCartPoint3D & | facePnt2, | ||
MbCartPoint3D & | axisPnt1, | ||
MbCartPoint3D & | axisPnt2, | ||
double | dr = 0.0 , |
||
bool | findCommonEdges = true |
||
) |
Find the boundary point of the thread.
Find the boundary point of the thread on the edges size. The point on the thread axis streamlined along the direction of the thread axis.
[in] | threadFace | - The face of thread. |
[in] | threadAxis | - The axis of thread. |
[in] | face | - Face adjacent to the edge of the thread. |
[out] | threadDir | - The direction of the thread. |
[out] | facePnt1 | - Starting point on the adjacent face. |
[out] | facePnt2 | - The final point on the adjacent face. |
[out] | axisPnt1 | - Starting point for the thread axis. |
[out] | axisPnt2 | - Endpoint to the thread axis. |
[in] | dr | - Thread depth. |
[in] | findCommonEdges | - Find common edges. |