C3D Toolkit
Kernel - 117982, Vision - 2.9.2.2
|
Functions | |
MbResultType | TransformedSolid (MbSolid &solid, MbeCopyMode sameShell, const TransformValues &p, const MbSNameMaker &names, MbSolid *&result) |
Modify a solid by the matrix. More... | |
bool | CollectFacesForModification (const MbFaceShell &shell, const MbCollectFacesParams ¶meters, c3d::FacesVector &outputFaces) |
Collect faces for direct modeling methods. More... | |
MbResultType | CollectFacesForModification (MbFaceShell *shell, MbeModifyingType way, double radius, RPArray< MbFace > &faces) |
Modify a shell by the methods of direct modeling. More... | |
MbResultType | ModifiedSolid (MbSolid &solid, MbeCopyMode sameShell, const MbModifiedSolidParams ¶ms, MbModifiedSolidResults &results) |
Modify a solid by the methods of direct modeling. More... | |
MbResultType | FaceModifiedSolid (MbSolid &solid, MbeCopyMode sameShell, const ModifyValues ¶ms, const RPArray< MbFace > &faces, const MbSNameMaker &names, MbSolid *&result) |
Modify a solid by the methods of direct modeling. More... | |
MbResultType | EdgeModifiedSolid (MbSolid &solid, MbeCopyMode sameShell, const ModifyValues ¶ms, const RPArray< MbCurveEdge > &edges, const MbSNameMaker &names, MbSolid *&result) |
Modify a solid by the methods of direct modeling. More... | |
MbResultType | ModifiedNurbsItem (MbSolid &solid, MbeCopyMode sameShell, const NurbsValues &p, const RPArray< MbFace > &faces, const MbSNameMaker &names, MbSolid *&result) |
Replace the specified faces of solid with deformable faces. More... | |
MbResultType | ModifiedNurbsItem (MbSolid &solid, MbeCopyMode sameShell, const NurbsValues &p, const MbFace &face, const MbSNameMaker &names, MbSolid *&result) |
Replace the specified face of the solid by a deformable face. More... | |
MbSurface * | GetControlSurface (const MbFace &face) |
Get the NURBS-surfaces of a face. More... | |
MbResultType | FaceControlPoints (const MbFace &face, Array2< MbCartPoint3D > &controlPoints, Array2< double > &result) |
Get the control points of the NURBS-surface of a face. More... | |
MbResultType | NurbsModification (MbSolid &solid, MbeCopyMode sameShell, MbFace *face, MbSurface &faceSurface, Array2< bool > &fixedPoints, const MbSNameMaker &names, MbSolid *&result) |
Deform a face of a solid. More... | |
MbResultType | NurbsModification (MbSolid &solid, MbeCopyMode sameShell, MbFace *face, const Array2< MbCartPoint3D > &controlPoints, const Array2< double > &weights, Array2< bool > *fixedPoints, const MbSNameMaker &names, MbSolid *&result) |
Deform a face of a solid. More... | |
MbResultType | NurbsBlockSolid (const MbPlacement3D &place, double ax, double ay, double az, bool outDir, const MbSNameMaker &names, SimpleName name, NurbsBlockValues ¶m, MbSolid *&result) |
Create a deformable prism. More... | |
MbResultType | NurbsFaceConjugation (const MbSurfaceIntersectionCurve &curve, bool sences, bool faceSences, const MbSplineSurface &surface, double tension, MbeConjugationType conType, size_t insertNum, MbSplineSurface *&result) |
Create a matched surface. More... | |
MbResultType | NurbsFaceSimilarity (const MbSurface &originSurface, const MbSplineSurface &surface, bool uToU, bool normSence, MbSplineSurface *&result) |
Create a similar surface. More... | |
MbResultType | SplineSurfaceSmoothing (const MbSplineSurface &surface, size_t udegree, size_t vdegree, MbSplineSurface *&result) |
Create a smoothed surface. More... | |
MbResultType TransformedSolid | ( | MbSolid & | solid, |
MbeCopyMode | sameShell, | ||
const TransformValues & | p, | ||
const MbSNameMaker & | names, | ||
MbSolid *& | result | ||
) |
Modify a solid by the matrix.
Transform a copy of the solid using the matrix calculated by bounding box of solid.
[in] | solid | - The initial solid. |
[in] | sameShell | - The mode of copying of the initial solid. |
[in] | p | - The transformation parameters. |
[in] | names | - An object for naming the new objects. |
[out] | result | - The modified solid. |
bool CollectFacesForModification | ( | const MbFaceShell & | shell, |
const MbCollectFacesParams & | parameters, | ||
c3d::FacesVector & | outputFaces | ||
) |
Collect faces for direct modeling methods.
The main purpose of this function is to highlight faces that will be modified. The method collects the faces of the shell for direct modeling methods:
dmm_RemoveBelowRadius, dmm_RemoveBelowRadiusWithAdjacentFillets, dmm_PurifyFilletsBelowRadius, dmm_FilletsRadiusSet, dmm_FilletsRadiusSetSingle, dmm_FilletsRadiusChange.
The cylindrical, conical, toroidal, spherical, and revolution periodic faces are collected for the dmm_RemoveBelowRadius type. The cylindrical, toroidal, spherical non-periodic, and fillet faces are collected for the dmm_PurifyFilletsBelowRadius type.
[in] | shell | - The initial shell. |
[in] | parameters | - The operation parameters. |
[out] | outputFaces | - Found faces to be modified. |
MbResultType CollectFacesForModification | ( | MbFaceShell * | shell, |
MbeModifyingType | way, | ||
double | radius, | ||
RPArray< MbFace > & | faces | ||
) |
Modify a shell by the methods of direct modeling.
The method collects the faces of the shell for direct modeling methods:
removal of the faces from a shell (way==dmt_Remove),
removal of the fillet faces from a shell (way==dmt_Purify).
The cylindrical, conical, toroidal, spherical, and revolution periodic faces are collect to remove way. The cylindrical, toroidal, spherical non-periodic, and fillet faces are collect to purify way.
[in] | shell | - The initial faces set. |
[in] | way | - Way of the modification. |
[in] | radius | - Radius of collected faces. |
[in] | faces | - Found faces to be modified. |
MbResultType ModifiedSolid | ( | MbSolid & | solid, |
MbeCopyMode | sameShell, | ||
const MbModifiedSolidParams & | params, | ||
MbModifiedSolidResults & | results | ||
) |
Modify a solid by the methods of direct modeling.
The method performs one of the following actions depending on the parameter MbModifiedSolidParams:
[in] | solid | - The initial solid. |
[in] | sameShell | - The mode of copying of the initial solid. |
[in] | params | - Parameters of the modification. |
[out] | results | - Results of the modifcation. |
MbResultType FaceModifiedSolid | ( | MbSolid & | solid, |
MbeCopyMode | sameShell, | ||
const ModifyValues & | params, | ||
const RPArray< MbFace > & | faces, | ||
const MbSNameMaker & | names, | ||
MbSolid *& | result | ||
) |
Modify a solid by the methods of direct modeling.
The method performs one of the following actions depending on the parameter ModifyValues:
[in] | solid | - The initial solid. |
[in] | sameShell | - The mode of copying of the initial solid. |
[in] | params | - Parameters of the modification. |
[in] | faces | - Faces to be modified. |
[in] | names | - An object for naming the new objects. |
[out] | result | - The modified solid. |
MbResultType EdgeModifiedSolid | ( | MbSolid & | solid, |
MbeCopyMode | sameShell, | ||
const ModifyValues & | params, | ||
const RPArray< MbCurveEdge > & | edges, | ||
const MbSNameMaker & | names, | ||
MbSolid *& | result | ||
) |
Modify a solid by the methods of direct modeling.
The method performs the deletion of selectsd edges, merging their vertices and modification of surrounding faces (param.way==dmt_Merger). The direction of the vector "params.direction" determines whether the start vertex of an edge is merged with the end vertex, or whether the end vertex of an edge is merged with the start vertex.
[in] | solid | - The initial solid. |
[in] | sameShell | - The mode of copying of the initial solid. |
[in] | params | - Parameters of the modification, the way must be equal to param.way==dmt_Merger. |
[in] | edges | - Edges to be removed. |
[in] | names | - An object for naming the new objects. |
[out] | result | - The modified solid. |
MbResultType ModifiedNurbsItem | ( | MbSolid & | solid, |
MbeCopyMode | sameShell, | ||
const NurbsValues & | p, | ||
const RPArray< MbFace > & | faces, | ||
const MbSNameMaker & | names, | ||
MbSolid *& | result | ||
) |
Replace the specified faces of solid with deformable faces.
Replace the specified faces of the solid with deformable faces (conversion to NURBS for editing).
[in] | solid | - The initial solid. |
[in] | sameShell | - The mode of copying of the initial solid. |
[in] | p | - The transformation parameters. |
[in] | faces | - Faces to replace. |
[in] | names | - An object for naming the new objects. |
[out] | result | - The modified solid. |
MbResultType ModifiedNurbsItem | ( | MbSolid & | solid, |
MbeCopyMode | sameShell, | ||
const NurbsValues & | p, | ||
const MbFace & | face, | ||
const MbSNameMaker & | names, | ||
MbSolid *& | result | ||
) |
Replace the specified face of the solid by a deformable face.
Replace the specified face of the solid by a deformable face (conversion to NURBS for editing).
[in] | solid | - The initial solid. |
[in] | sameShell | - The mode of copying of the initial solid. |
[in] | p | - The transformation parameters. |
[in] | face | - A face to replace. |
[in] | names | - An object for naming the new objects. |
[out] | result | - The modified solid. |
Get the NURBS-surfaces of a face.
Create a deformable surface for the initial face.
[in] | face | - The initial face. |
MbResultType FaceControlPoints | ( | const MbFace & | face, |
Array2< MbCartPoint3D > & | controlPoints, | ||
Array2< double > & | result | ||
) |
Get the control points of the NURBS-surface of a face.
Get a set of the control points of a NURBS-surface of a face and a set of their weights.
[in] | face | - The initial face. |
[out] | controlPoints | - The control points of the NURBS-surface of the face. |
[out] | result | - The weights of the control points. |
MbResultType NurbsModification | ( | MbSolid & | solid, |
MbeCopyMode | sameShell, | ||
MbFace * | face, | ||
MbSurface & | faceSurface, | ||
Array2< bool > & | fixedPoints, | ||
const MbSNameMaker & | names, | ||
MbSolid *& | result | ||
) |
Deform a face of a solid.
Deform a face of a solid by substitution the control points of NURBS-surface of the face with the given control points.
[in] | solid | - The initial solid. |
[in] | sameShell | - The mode of copying of the initial solid. |
[in] | face | - A face of a solid to be modified. |
[in] | faceSurface | - The new NURBS-surface of the face. |
[in] | fixedPoints | - The fixed points. |
[in] | names | - An object for naming the new objects. |
[out] | result | - The modified solid. |
MbResultType NurbsModification | ( | MbSolid & | solid, |
MbeCopyMode | sameShell, | ||
MbFace * | face, | ||
const Array2< MbCartPoint3D > & | controlPoints, | ||
const Array2< double > & | weights, | ||
Array2< bool > * | fixedPoints, | ||
const MbSNameMaker & | names, | ||
MbSolid *& | result | ||
) |
Deform a face of a solid.
Deform a face of a solid by substitution the control points of NURBS-surface of the face with the given control points.
[in] | solid | - The initial solid. |
[in] | sameShell | - The mode of copying of the initial solid. |
[in] | face | - A face of a solid to be modified. |
[in] | controlPoints | - The control points of the NURBS-surface of the face. |
[in] | weights | - The weights of the control points. |
[in] | fixedPoints | - The fixed points. |
[in] | names | - An object for naming the new objects. |
[out] | result | - The modified solid. |
MbResultType NurbsBlockSolid | ( | const MbPlacement3D & | place, |
double | ax, | ||
double | ay, | ||
double | az, | ||
bool | outDir, | ||
const MbSNameMaker & | names, | ||
SimpleName | name, | ||
NurbsBlockValues & | param, | ||
MbSolid *& | result | ||
) |
Create a deformable prism.
Create a solid as a right parallelepiped with deformable faces.
[in] | place | - A local coordinate system. |
[in] | ax | - The size in X-direction. |
[in] | ay | - The size in Y-direction. |
[in] | az | - The size in Z-direction. |
[in] | outDir | - An outer orientation of the normals. |
[in] | names | - An object for naming the new objects. |
[in] | name | - The main name. |
[in] | param | - The parameters of NURBS-surfaces of the parallelepiped faces. |
[out] | result | - The solid constructed from the NU|RBS-surfaces. |
MbResultType NurbsFaceConjugation | ( | const MbSurfaceIntersectionCurve & | curve, |
bool | sences, | ||
bool | faceSences, | ||
const MbSplineSurface & | surface, | ||
double | tension, | ||
MbeConjugationType | conType, | ||
size_t | insertNum, | ||
MbSplineSurface *& | result | ||
) |
Create a matched surface.
Create a modified surface for the initial surface by specifying the conjugation along the curve.
[in] | curve | - The intersection curve of the edge surfaces. |
[in] | sences | - The edge curve sense in the loop. |
[in] | faceSences | - The adjacent face normal orientation. |
[in] | surface | - The initial spline surface of the face to be modified. |
[in] | tension | - The tension. |
[in] | conType | - The conjugation type. |
[in] | insertNum | - The row number. |
[out] | result | - The NURBS-surface obtained as a result of the modifications. |
MbResultType NurbsFaceSimilarity | ( | const MbSurface & | originSurface, |
const MbSplineSurface & | surface, | ||
bool | uToU, | ||
bool | normSence, | ||
MbSplineSurface *& | result | ||
) |
Create a similar surface.
Create a surface similar to the initial one given the pattern surface.
[in] | originSurface | - A pattern surface. |
[in] | surface | - The initial spline surface of the face to be modified. |
[in] | uToU | - Whether to keep the parametric direction of the pattern surface. |
[in] | normSence | - Whether to keep the normal direction of the pattern surface. |
[out] | result | - The NURBS-surface obtained as a result of the modifications. |
MbResultType SplineSurfaceSmoothing | ( | const MbSplineSurface & | surface, |
size_t | udegree, | ||
size_t | vdegree, | ||
MbSplineSurface *& | result | ||
) |
Create a smoothed surface.
Perform smoothing of a copy of the initial surface without changing its order and the number of control points.
[in] | surface | - The initial spline surface of the face to be modified. |
[in] | udegree | - The smoothing surface degree for direction of first parameter of surface. |
[in] | vdegree | - The smoothing surface degree for direction of second parameter of surface. |
[out] | result | - The NURBS-surface obtained as a result of the modifications. |