C3D Toolkit  Kernel - 118069, Vision - 2.16.7.1844

Shell cutting operation parameters. More...

#include <op_shell_parameter.h>

+ Collaboration diagram for MbShellCuttingParams:

Classes

struct  ProlongState
 State of prolongation types of cutter surfaces. More...
 

Public Member Functions

 MbShellCuttingParams (int part, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Constructor. More...
 
 MbShellCuttingParams (const MbPlacement3D &place, const MbContour &contour, bool sameContour, const MbVector3D &dir, int part, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Constructor by a contour. More...
 
 MbShellCuttingParams (const MbPlacement3D &place, const MbContour &contour, bool sameContour, const MbVector3D &dir, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Constructor by a contour. More...
 
 MbShellCuttingParams (const MbSurface &surface, bool sameSurface, int part, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Constructor by a surface. More...
 
 MbShellCuttingParams (const MbSurface &surface, bool sameSurface, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Constructor by a surface. More...
 
 MbShellCuttingParams (const MbSolid &solid, bool sameSolid, int part, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Constructor by a shell. More...
 
 MbShellCuttingParams (const MbShellCuttingParams &other, MbRegDuplicate *iReg)
 Copy constructor.
 
bool InitPlaneContour (const MbPlacement3D &place, const MbContour &contour, bool sameContour, const MbVector3D &dir, int part, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Initialize by a contour. More...
 
bool InitPlaneContour (const MbPlacement3D &place, const MbContour &contour, bool sameContour, const MbVector3D &dir, IProgressIndicator *prog=nullptr)
 Initialize by a contour. More...
 
bool InitSurface (const MbSurface &surface, bool sameSurface, int part, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Constructor by a surface. More...
 
bool InitSurface (const MbSurface &surface, bool sameSurface, ProlongState prState, IProgressIndicator *prog=nullptr)
 Constructor by a surface. More...
 
bool InitSolid (const MbSolid &solid, bool sameSolid, int part, const MbMergingFlags &mergingFlags, bool cutAsClosed, const MbSNameMaker &snMaker, IProgressIndicator *prog=nullptr)
 Constructor by a shell. More...
 
bool InitSolid (const MbSolid &solid, bool sameSolid, IProgressIndicator *prog=nullptr)
 Constructor by a shell. More...
 
template<class CreatorsVector >
bool InitSolid (const CreatorsVector &creators, bool sameCreators, IProgressIndicator *prog=nullptr)
 Constructor by a shell. More...
 
bool IsCuttingByPlanarContour () const
 Is cutting by planar contour?
 
bool IsCuttingBySurface () const
 Is cutting by surface?
 
bool IsCuttingBySolid () const
 Is cutting by shell?
 
const MbSplitData & GetCutterData () const
 Get cutter object(s) data.
 
const MbBooleanFlags & GetBooleanFlags () const
 Get control flags of the Boolean operation.
 
MbBooleanFlags & SetBooleanFlags ()
 Get control flags of the Boolean operation.
 
const MbSNameMaker & GetNameMaker () const
 Get the object defining names generation in the operation.
 
ThreeStates GetRetainedPart () const
 Get retained part demand.
 
void SetRetainedPart (int part)
 Set retained part demand.
 
const ProlongState & GetProlongState () const
 Get cutter surface prolong type.
 
void ResetProlongState ()
 Reset cutter surface prolong type.
 
void SetSurfaceProlongType (MbeSurfaceProlongType pt)
 Add cutter surface prolong type.
 
void AddSurfaceProlongType (MbeSurfaceProlongType pt)
 Add cutter surface prolong type.
 
const MbPlacement3D & GetSketchPlace () const
 Get the local coordinate system of two-dimensional curves.
 
const MbVector3D & GetSketchDirection () const
 Get the extrusion direction vector of two-dimensional curves.
 
const MbContour * GetSketchCurve () const
 Get two-dimensional curve.
 
const MbSurface * GetSurface () const
 Get a surface.
 
bool MergeFaces () const
 Whether to merge similar faces (true)?
 
bool MergeEdges () const
 Whether to merge similar edges (true)?
 
bool IsCuttingAsClosed () const
 Create a closed shell.
 

Public Attributes

IProgressIndicator * progress
 A progress indicator of the operation.
 

Detailed Description

Shell cutting operation parameters.

Shell cutting operation parameters.
The mutually exclusive state of flags is assumed when they are active in MbShellCuttingParams:

  1. #cspt_Planar - extend or not the face based on the plane;
  2. #cspt_Revolution - extend or not surfaces having a rotation axis (for which the GetCylinderAxis surface function returns true), moreover, separate control is possible:
    #cspt_RevolutionAngle - close the surface by angle,
    #cspt_RevolutionAxis - extend the surface along the axis so as to embrace the body, if it's possible;
  3. #cspt_Extrusion - to extend or not surfaces that are extrusion surfaces (extrusion surface, cylindrical surface), moreover, separate control is possible:
    #cspt_ExtrusionGeneratrix - extend along the generatrix to cover the body or close if the generatrix is ​​periodic (like an arc),
    #cspt_ExtrusionDistance - extend the surface along the extrusion direction so as to embrace the body, if it's possible;
  4. #cspt_Contour - extend cutter contour so as to embrace the body, if it's possible;
  5. #cspt_Ruled - extend the ruled surface,
    separate control possible:
    #cspt_RuledAlongGeneratrix - extend the ruled surface along the generatrix,
    #cspt_RuledAcrossGeneratrix - extend the ruled surface across the generatrices.

Constructor & Destructor Documentation

◆ MbShellCuttingParams() [1/6]

MbShellCuttingParams::MbShellCuttingParams ( int  part,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor.

Constructor.

Parameters
[in]part- A part of the source shell to be kept (+1, 0, -1), if 0 retain both parts.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.
[in/out]prog - A progress indicator of the operation.

◆ MbShellCuttingParams() [2/6]

MbShellCuttingParams::MbShellCuttingParams ( const MbPlacement3D &  place,
const MbContour &  contour,
bool  sameContour,
const MbVector3D &  dir,
int  part,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a contour.

Constructor by a contour.

Parameters
[in]place- A local coordinate system the two-dimensional contour is located in XY plane of.
[in]contour- The two-dimensional contour of extrusion is located in XY plane of the local coordinate system.
[in]sameContour- Use the source contour (true) or its copy (false).
[in]dir- Extrusion direction of the contour.
[in]part- A part of the source shell to be kept (+1, 0, -1), if 0 retain both parts.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.
[in/out]prog - A progress indicator of the operation.

◆ MbShellCuttingParams() [3/6]

MbShellCuttingParams::MbShellCuttingParams ( const MbPlacement3D &  place,
const MbContour &  contour,
bool  sameContour,
const MbVector3D &  dir,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a contour.

Constructor by a contour.

Parameters
[in]place- A local coordinate system the two-dimensional contour is located in XY plane of.
[in]contour- The two-dimensional contour of extrusion is located in XY plane of the local coordinate system.
[in]sameContour- Use the source contour (true) or its copy (false).
[in]dir- Extrusion direction of the contour.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.
[in/out]prog - A progress indicator of the operation.

◆ MbShellCuttingParams() [4/6]

MbShellCuttingParams::MbShellCuttingParams ( const MbSurface &  surface,
bool  sameSurface,
int  part,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a surface.

Constructor by a surface.

Parameters
[in]surface- Cutting plane.
[in]sameSurface- Use the source surface (true) or its copy (false).
[in]part- A part of the source shell to be kept (+1, 0, -1), if 0 retain both parts.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.
[in/out]prog - A progress indicator of the operation.

◆ MbShellCuttingParams() [5/6]

MbShellCuttingParams::MbShellCuttingParams ( const MbSurface &  surface,
bool  sameSurface,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a surface.

Constructor by a surface.

Parameters
[in]surface- Cutting plane.
[in]sameSurface- Use the source surface (true) or its copy (false).
[in]part- A part of the source shell to be kept (+1, 0, -1), if 0 retain both parts.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.

◆ MbShellCuttingParams() [6/6]

MbShellCuttingParams::MbShellCuttingParams ( const MbSolid &  solid,
bool  sameSolid,
int  part,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a shell.

Constructor by a shell.

Parameters
[in]solid- Cutting shell.
[in]sameSolid- Use the source surface (true) or its copy (false).
[in]part- A part of the source shell to be kept (+1, 0, -1), if 0 retain both parts.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.

Member Function Documentation

◆ InitPlaneContour() [1/2]

bool MbShellCuttingParams::InitPlaneContour ( const MbPlacement3D &  place,
const MbContour &  contour,
bool  sameContour,
const MbVector3D &  dir,
int  part,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Initialize by a contour.

Initialize by a contour.

Parameters
[in]place- A local coordinate system the two-dimensional contour is located in XY plane of.
[in]contour- The two-dimensional contour of extrusion is located in XY plane of the local coordinate system.
[in]sameContour- Use the source contour (true) or its copy (false).
[in]dir- Extrusion direction of the contour.
[in]part- A part of the source shell to be kept (+1, 0, -1), if 0 retain both parts.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.

◆ InitPlaneContour() [2/2]

bool MbShellCuttingParams::InitPlaneContour ( const MbPlacement3D &  place,
const MbContour &  contour,
bool  sameContour,
const MbVector3D &  dir,
IProgressIndicator *  prog = nullptr 
)
inline

Initialize by a contour.

Initialize by a contour.

Parameters
[in]place- A local coordinate system the two-dimensional contour is located in XY plane of.
[in]contour- The two-dimensional contour of extrusion is located in XY plane of the local coordinate system.
[in]sameContour- Use the source contour (true) or its copy (false).
[in]dir- Extrusion direction of the contour.

◆ InitSurface() [1/2]

bool MbShellCuttingParams::InitSurface ( const MbSurface &  surface,
bool  sameSurface,
int  part,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a surface.

Constructor by a surface.

Parameters
[in]surface- Cutting plane.
[in]sameSurface- Use the source surface (true) or its copy (false).
[in]part- A part of the source shell to be kept (+1, 0, -1), if 0 retain both parts.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.

◆ InitSurface() [2/2]

bool MbShellCuttingParams::InitSurface ( const MbSurface &  surface,
bool  sameSurface,
ProlongState  prState,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a surface.

Constructor by a surface.

Parameters
[in]surface- Cutting plane.
[in]sameSurface- Use the source surface (true) or its copy (false).
[in]prType- Cutter surface prolong type.

◆ InitSolid() [1/3]

bool MbShellCuttingParams::InitSolid ( const MbSolid &  solid,
bool  sameSolid,
int  part,
const MbMergingFlags &  mergingFlags,
bool  cutAsClosed,
const MbSNameMaker &  snMaker,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a shell.

Constructor by a shell.

Parameters
[in]solid- Cutting shell.
[in]sameSolid- Use the source surface (true) or its copy (false).
[in]part- A part of the source shell to be kept (+1, 0, -1), if 0 retain both parts.
[in]mergingFlags- Control flags of shell items merging.
[in]cutAsClosed- Create a closed shell.
[in]snMaker- An object defining names generation in the operation.

◆ InitSolid() [2/3]

bool MbShellCuttingParams::InitSolid ( const MbSolid &  solid,
bool  sameSolid,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a shell.

Constructor by a shell.

Parameters
[in]solid- Cutting shell.
[in]sameSolid- Use the source surface (true) or its copy (false).

◆ InitSolid() [3/3]

template<class CreatorsVector >
bool MbShellCuttingParams::InitSolid ( const CreatorsVector &  creators,
bool  sameCreators,
IProgressIndicator *  prog = nullptr 
)
inline

Constructor by a shell.

Constructor by a shell.

Parameters
[in]creators- Cutting shell creators.
[in]sameCreators- Use original creators (true) or its copies (false).

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