C3D Toolkit  Kernel - 117982, Vision - 2.9.2.2

Constructor of shell of evolution solid. More...

#include <cr_evolution_solid.h>

+ Inheritance diagram for MbCurveEvolutionSolid:
+ Collaboration diagram for MbCurveEvolutionSolid:

Public Member Functions

 MbCurveEvolutionSolid (const MbSurface &surface_, const MbContour &contour_, const MbCurve3D &spine_, const EvolutionValues &params, OperationType oType, const MbSNameMaker &operNames, const MbSNameMaker &contourNames, const MbSNameMaker &spineNames_)
 Constructor. More...
 
 MbCurveEvolutionSolid (const MbSweptData &sweptData_, const MbCurve3D &spine_, const EvolutionValues &params, OperationType oType, const MbSNameMaker &operNames, const RPArray< MbSNameMaker > &contoursNames, const MbSNameMaker &spineNames_)
 Constructor. More...
 
 MbCurveEvolutionSolid (const MbSweptData &sweptData_, const MbWireFrame &spineFrame_, const EvolutionValues &params, OperationType oType, const MbSNameMaker &operNames, const RPArray< MbSNameMaker > &contoursNames, const MbSNameMaker &spineNames_)
 Constructor. More...
 
 MbCurveEvolutionSolid (const MbSweptData &sweptData_, const MbSpine &spine_, const EvolutionValues &params, OperationType oType, const MbSNameMaker &operNames, const RPArray< MbSNameMaker > &contoursNames, const MbSNameMaker &spineNames_)
 Constructor. More...
 
 MbCurveEvolutionSolid (const MbSweptData &sweptData_, const MbSpine &spine_, const EvolutionValues &params, const std::vector< std::shared_ptr< MeshSurfaceValues >> &meshSurfVals_, OperationType oType, const MbSNameMaker &operNames, const RPArray< MbSNameMaker > &contoursNames, const MbSNameMaker &spineNames_)
 Constructor. More...
 
Common functions of the mathematical object.
MbeCreatorType IsA () const override
 Get the object type.
 
MbCreatorDuplicate (MbRegDuplicate *=nullptr) const override
 Create a copy of the object. More...
 
void Transform (const MbMatrix3D &, MbRegTransform *=nullptr) override
 Transform according to the matrix. More...
 
void Move (const MbVector3D &, MbRegTransform *=nullptr) override
 Translate along a vector. More...
 
void Rotate (const MbAxis3D &, double angle, MbRegTransform *=nullptr) override
 Rotate an object about the axis. More...
 
void GetProperties (MbProperties &) override
 Get properties of the object.
 
void SetProperties (const MbProperties &) override
 Set properties of the object.
 
MbePrompt GetPropertyName () override
 Get a name of object property.
 
void GetBasisItems (RPArray< MbSpaceItem > &s) override
 Get the basis objects.
 
void GetBasisPoints (MbControlData3D &) const override
 Get control points of object.
 
void SetBasisPoints (const MbControlData3D &) override
 Change the object by control points.
 
bool IsSame (const MbCreator &, double accuracy) const override
 Determine whether an object is equal? More...
 
bool IsSimilar (const MbCreator &) const override
 Determine whether an object is similar? More...
 
bool SetEqual (const MbCreator &) override
 Make the objects equal if they are similar.
 
Common functions of the rigid solid (forming operations).
MbFaceShellInitShell (bool in) override
 
void InitBasis (RPArray< MbSpaceItem > &items) override
 
bool GetPlacement (MbPlacement3D &p) const override
 
void SetYourVersion (VERSION version, bool forAll) override
 Set the objects version.
 
Functions of creator of evolution solid shell.
void GetParameters (EvolutionValues &params) const
 Get the parameters.
 
void SetParameters (const EvolutionValues &params)
 Set the parameters.
 
- Public Member Functions inherited from MbCurveSweptSolid
MbeCreatorType Type () const override
 Get the group type of the object.
 
size_t GetCreatorsCount (MbeCreatorType ct) const override
 Count internal creators by type.
 
bool GetInternalCreators (MbeCreatorType, c3d::ConstCreatorsSPtrVector &) const override
 Get internal creators by type.
 
bool SetInternalCreators (MbeCreatorType, c3d::CreatorsSPtrVector &) override
 Get internal creators by type.
 
bool CreateShell (MbFaceShell *&shell, MbeCopyMode sameShell, RPArray< MbSpaceItem > *items=nullptr) override
 Create a shell from the initial data. More...
 
void SetYourVersion (VERSION version, bool forAll) override
 Set the objects version.
 
void SetOperation (OperationType op)
 
- Public Member Functions inherited from MbCreator
virtual ~MbCreator ()
 Destructor.
 
MbeRefType RefType () const override
 Get the registration type (for copying, duplication).
 
bool CreateShell (c3d::ShellSPtr &shell, MbeCopyMode sameShell, RPArray< MbSpaceItem > *items=nullptr)
 Create a shell from the initial data. More...
 
virtual bool CreateWireFrame (MbWireFrame *&frame, MbeCopyMode sameShell, RPArray< MbSpaceItem > *items=nullptr)
 Create a wire-frame from the source data. More...
 
bool CreateWireFrame (SPtr< MbWireFrame > &frame, MbeCopyMode sameShell)
 Create a wire-frame from the source data. More...
 
virtual bool CreatePointFrame (MbPointFrame *&frame, MbeCopyMode sameShell, RPArray< MbSpaceItem > *items=nullptr)
 Create a point-frame from the source data. More...
 
bool CreatePointFrame (SPtr< MbPointFrame > &frame, MbeCopyMode sameShell)
 Create a point-frame from the source data. More...
 
virtual bool CreateMesh (MbMesh *&mesh, MbeCopyMode sameShell, RPArray< MbSpaceItem > *items=nullptr)
 Create a polygonal object from the source data. More...
 
bool CreateMesh (SPtr< MbMesh > &mesh, MbeCopyMode sameShell)
 Create a polygonal object from the source data. More...
 
virtual void Refresh (MbFaceShell &)
 Update the shell shape.
 
virtual void Refresh (MbWireFrame &)
 Update the frame shape.
 
virtual bool Perform (MbCreator *) const
 Displace/Change the creator.
 
VERSION GetYourVersion () const
 Get the object version.
 
const MbSNameMakerGetYourNameMaker () const
 Get the name-maker.
 
MbSNameMakerSetYourNameMaker ()
 Get the object's name-maker for editing.
 
void SetNameMaker (const MbSNameMaker &n)
 Set the object's name-maker.
 
SimpleName GetMainName () const
 Get the main name of the object.
 
void SetMainName (SimpleName n)
 Set the main name of the object.
 
MbeProcessState GetStatus () const
 Get the flag of state.
 
void SetStatus (MbeProcessState l)
 Set the flag of state.
 
void PrepareWrite () const
 Register the object. More...
 
- Public Member Functions inherited from MbRefItem
refcount_t GetUseCount () const
 Get count of references (get count of owners of an object).
 
refcount_t AddRef () const
 Increase count of references by one.
 
refcount_t DecRef () const
 Decrease count of references by one.
 
refcount_t Release () const
 Decrease count of references by one and if count of references became zero, then remove itself.
 
- Public Member Functions inherited from TapeBase
 TapeBase (RegistrableRec regs=noRegistrable)
 Constructor.
 
 TapeBase (const TapeBase &)
 Copy-constructor.
 
virtual ~TapeBase ()
 Destructor.
 
RegistrableRec GetRegistrable () const
 Whether the stream class is registrable.
 
void SetRegistrable (RegistrableRec regs=registrable) const
 Set the state of registration of the stream class.
 
virtual const char * GetPureName (const VersionContainer &) const
 Get the class name.
 
virtual bool IsFamilyRegistrable () const
 Whether the object belongs to a registrable family.
 

Protected Attributes

MbSweptData sweptData
 Generating curve data.
 
MbSpineData spineData
 Spine curve data.
 
SPtr< MbCurve3DdirectionCurve
 A curve of the transformation matrix orientation (it may be nullptr for a simple trajectory).
 
MbVector3D direction
 Vector of transformation matrix orientation (it's equal zero in the mode of automatic direction calculation).
 
SPtr< MbSNameMakerspineNames
 An object defining the name of the spine curve.
 
EvolutionValues parameters
 Parameters.
 
std::vector< std::shared_ptr< MeshSurfaceValues > > meshSurfVals
 Data for sweeping operation with variable section.
 
- Protected Attributes inherited from MbCurveSweptSolid
RPArray< MbSNameMakerfaceNames
 An object for naming faces.
 
RPArray< MbCreatorcreators
 Creators of a solid used with option "To the nearest object (solid)".
 
OperationType operation
 Type of Boolean operation on shells.
 
double buildSag
 Angular deviation while moving along curves and surfaces.
 
- Protected Attributes inherited from MbCreator
SPtr< MbSNameMakernames
 An object defining the names of elements and objects created by the constructor.
 
MbeProcessState status
 State of the constructor and of the operation result.
 

Additional Inherited Members

- Protected Member Functions inherited from MbCurveSweptSolid
 MbCurveSweptSolid (const MbSNameMaker &operNames, const RPArray< MbSNameMaker > &fNames, OperationType oType, const c3d::CreatorsSPtrVector *creators, bool sameCreators=false)
 Constructor. More...
 
 MbCurveSweptSolid (const MbSNameMaker &operNames, const MbSNameMaker &fNames, OperationType oType)
 Constructor. More...
 
 MbCurveSweptSolid (const MbCurveSweptSolid &init, MbRegDuplicate *)
 Copy-constructor.
 
void DeleteCreators ()
 Delete internal creators.
 
- Protected Member Functions inherited from MbCreator
 MbCreator (MbSNameMaker *)
 Constructor by name-maker.
 
 MbCreator (const MbSNameMaker &)
 Constructor by name-maker.
 
 MbCreator (const MbCreator &)
 Copy-constructor.
 
- Protected Member Functions inherited from MbRefItem
 MbRefItem ()
 Constructor without parameters.
 

Detailed Description

Constructor of shell of evolution solid.

Constructor of solid shell by moving generating curve along a spine curve.

Constructor & Destructor Documentation

◆ MbCurveEvolutionSolid() [1/5]

MbCurveEvolutionSolid::MbCurveEvolutionSolid ( const MbSurface surface_,
const MbContour contour_,
const MbCurve3D spine_,
const EvolutionValues params,
OperationType  oType,
const MbSNameMaker operNames,
const MbSNameMaker contourNames,
const MbSNameMaker spineNames_ 
)

Constructor.

Constructor by one contour on a surface.

Parameters
[in]surface_- Surface of a generating curve.
[in]contour_- Contour in surface parameters domain.
[in]spine_- The spine curve.
[in]params- Parameters of the sweeping operation.
[in]oType- Type of Boolean operation with the previous result.
[in]operNames- An object defining names generation in the operation.
[in]contourNames- Generatix contours' names for naming faces.
[in]spineNames- Generating curve names.

◆ MbCurveEvolutionSolid() [2/5]

MbCurveEvolutionSolid::MbCurveEvolutionSolid ( const MbSweptData sweptData_,
const MbCurve3D spine_,
const EvolutionValues params,
OperationType  oType,
const MbSNameMaker operNames,
const RPArray< MbSNameMaker > &  contoursNames,
const MbSNameMaker spineNames_ 
)

Constructor.

Constructor by combined generating curve.

Parameters
[in]sweptData_- Generating curve.
[in]spine_- The spine curve.
[in]params- Parameters of the sweeping operation.
[in]oType- Type of Boolean operation with the previous result.
[in]operNames- An object defining names generation in the operation.
[in]contourNames- Generatix contours' names for naming faces.
[in]spineNames- Generating curve names.

◆ MbCurveEvolutionSolid() [3/5]

MbCurveEvolutionSolid::MbCurveEvolutionSolid ( const MbSweptData sweptData_,
const MbWireFrame spineFrame_,
const EvolutionValues params,
OperationType  oType,
const MbSNameMaker operNames,
const RPArray< MbSNameMaker > &  contoursNames,
const MbSNameMaker spineNames_ 
)

Constructor.

Constructor by combined generating curve.

Parameters
[in]sweptData_- Generating curve.
[in]spineFrame_- The spine curve as a wire frame.
[in]params- Parameters of the sweeping operation.
[in]oType- Type of Boolean operation with the previous result.
[in]operNames- An object defining names generation in the operation.
[in]contourNames- Generatrix contours' names for naming faces.
[in]spineNames- Generating curve names.

◆ MbCurveEvolutionSolid() [4/5]

MbCurveEvolutionSolid::MbCurveEvolutionSolid ( const MbSweptData sweptData_,
const MbSpine spine_,
const EvolutionValues params,
OperationType  oType,
const MbSNameMaker operNames,
const RPArray< MbSNameMaker > &  contoursNames,
const MbSNameMaker spineNames_ 
)

Constructor.

Constructor by combined generating curve.

Parameters
[in]sweptData_- Generating curve.
[in]spine_- The spine curve.
[in]params- Parameters of the sweeping operation.
[in]oType- Type of Boolean operation with the previous result.
[in]operNames- An object defining names generation in the operation.
[in]contourNames- Generatix contours' names for naming faces.
[in]spineNames- Generating curve names.

◆ MbCurveEvolutionSolid() [5/5]

MbCurveEvolutionSolid::MbCurveEvolutionSolid ( const MbSweptData sweptData_,
const MbSpine spine_,
const EvolutionValues params,
const std::vector< std::shared_ptr< MeshSurfaceValues >> &  meshSurfVals_,
OperationType  oType,
const MbSNameMaker operNames,
const RPArray< MbSNameMaker > &  contoursNames,
const MbSNameMaker spineNames_ 
)

Constructor.

Constructor using data for sweeping operation with variable section.

Parameters
[in]sweptData_- Generating curve.
[in]spine_- The spine curve with additional information.
[in]params- Parameters of the sweeping operation.
[in]meshSurfVals_- Data for sweeping operation with variable section.
[in]oType- Type of Boolean operation with the previous result.
[in]operNames- An object defining names generation in the operation.
[in]contourNames- Generatix contours' names for naming faces.
[in]spineNames- Generating curve names.

Member Function Documentation

◆ Duplicate()

MbCreator& MbCurveEvolutionSolid::Duplicate ( MbRegDuplicate iReg = nullptr) const
overridevirtual

Create a copy of the object.

Create a copy of the object using the registrator. The registrator is used to prevent multiple copying of an object. If the object contains references to other objects, then the included objects are copied too. It is allowed not to pass the registrator to a function. Then the new copy of the object will be created. It is allowed not to use the registrator while copying a single object or a set of disconnected objects. The registrator must be used to copy several correlated objects successively. It is possible that the relation between objects means that the objects contain references on the common objects. Then, while copying without using the registrator, one can get a set of copies which contain references to the different copies of a single embedded object, what leads to loss of relationship between the copies.

Parameters
[in]iReg- Registrator.
Returns
The object copy.

Implements MbCreator.

◆ Transform()

void MbCurveEvolutionSolid::Transform ( const MbMatrix3D matr,
MbRegTransform iReg = nullptr 
)
overridevirtual

Transform according to the matrix.

Transform the initial object according to the matrix using the registrator. If the object contains references to the other geometric objects, then the nested objects are transformed according to the matrix. The registrator is used for preventing multiple transformation of the object. The function can be used without the registrator to transform a single object. The registrator must be used to transform a set of interdependent objects to prevent repeated transformation of the nested objects, since it is not ruled out that several objects from the set contain references to one or several common objects subject to transformation.

Parameters
[in]matr- A transformation matrix.
[in]iReg- Registrator.

Implements MbCreator.

◆ Move()

void MbCurveEvolutionSolid::Move ( const MbVector3D to,
MbRegTransform iReg = nullptr 
)
overridevirtual

Translate along a vector.

Move a geometric object along the vector using the registrator. If the object contains references to the other objects, then the translation operation is applied to the nested objects. The registrator is used for preventing multiple transformation of the object. The function can be used without the registrator to transform a single object. The registrator must be used to transform a set of interdependent objects to prevent repeated transformation of the nested objects, since it is not ruled out that several objects from the set contain references to one or several common objects subject to moving.

Parameters
[in]to- Movement vector.
[in]iReg- Registrator.

Implements MbCreator.

◆ Rotate()

void MbCurveEvolutionSolid::Rotate ( const MbAxis3D axis,
double  angle,
MbRegTransform iReg = nullptr 
)
overridevirtual

Rotate an object about the axis.

Rotate an object about the axis by the given angle using the registrator. If the object contains references to the other geometric objects, then the rotation operation is applied to the nested objects too. The registrator is used for preventing multiple transformation of the object. The function can be used without the registrator to transform a single object. The registrator must be used to transform a set of interdependent objects to prevent repeated transformation of the nested objects, since it is not ruled out that several objects from the set contain references to one or several common objects subject to rotation.

Parameters
[in]axis- The rotation axis.
[in]angle- The rotation angle.
[in]iReg- Registrator.

Implements MbCreator.

◆ IsSame()

bool MbCurveEvolutionSolid::IsSame ( const MbCreator other,
double  accuracy 
) const
overridevirtual

Determine whether an object is equal?

Still considered objects of the same type, all data is the same (equal).

Parameters
[in]other- The object to compare.
[in]accuracy- The accuracy to compare.
Returns
Whether the objects are equal.

Implements MbCreator.

◆ IsSimilar()

bool MbCurveEvolutionSolid::IsSimilar ( const MbCreator item) const
overridevirtual

Determine whether an object is similar?

Such are considered the same objects whose data are similar.

Parameters
[in]item- The object to compare.
Returns
Whether the objects are similar.

Reimplemented from MbCreator.


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