Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes
ShapeFix_Solid Class Reference

Provides method to build a solid from a shells and orients them in order to have a valid solid with finite volume. More...

#include <ShapeFix_Solid.hxx>

Inheritance diagram for ShapeFix_Solid:
Inheritance graph
[legend]

Public Member Functions

 ShapeFix_Solid ()
 Empty constructor;.
 
 ShapeFix_Solid (const TopoDS_Solid &solid)
 Initializes by solid.
 
virtual void Init (const TopoDS_Solid &solid)
 Initializes by solid .
 
virtual bool Perform (const Message_ProgressRange &theProgress=Message_ProgressRange())
 Iterates on shells and performs fixes (calls ShapeFix_Shell for each subshell). The passed progress indicator allows user to consult the current progress stage and abort algorithm if needed.
 
TopoDS_Solid SolidFromShell (const TopoDS_Shell &shell)
 Calls MakeSolid and orients the solid to be "not infinite".
 
bool Status (const ShapeExtend_Status status) const
 Returns the status of the last Fix.
 
TopoDS_Shape Solid () const
 Returns resulting solid.
 
occ::handle< ShapeFix_ShellFixShellTool () const
 Returns tool for fixing shells.
 
void SetMsgRegistrator (const occ::handle< ShapeExtend_BasicMsgRegistrator > &msgreg) override
 Sets message registrator.
 
void SetPrecision (const double preci) override
 Sets basic precision value (also to FixShellTool)
 
void SetMinTolerance (const double mintol) override
 Sets minimal allowed tolerance (also to FixShellTool)
 
void SetMaxTolerance (const double maxtol) override
 Sets maximal allowed tolerance (also to FixShellTool)
 
intFixShellMode ()
 Returns (modifiable) the mode for applying fixes of ShapeFix_Shell, by default True.
 
intFixShellOrientationMode ()
 Returns (modifiable) the mode for applying analysis and fixes of orientation of shells in the solid; by default True.
 
boolCreateOpenSolidMode ()
 Returns (modifiable) the mode for creation of solids. If mode myCreateOpenSolidMode is equal to true solids are created from open shells else solids are created from closed shells only. ShapeFix_Shell, by default False.
 
TopoDS_Shape Shape ()
 In case of multiconnexity returns compound of fixed solids else returns one solid.
 
- Public Member Functions inherited from ShapeFix_Root
 ShapeFix_Root ()
 Empty Constructor (no context is created)
 
virtual void Set (const occ::handle< ShapeFix_Root > &Root)
 Copy all fields from another Root object.
 
virtual void SetContext (const occ::handle< ShapeBuild_ReShape > &context)
 Sets context.
 
occ::handle< ShapeBuild_ReShapeContext () const
 Returns context.
 
occ::handle< ShapeExtend_BasicMsgRegistratorMsgRegistrator () const
 Returns message registrator.
 
double Precision () const
 Returns basic precision value.
 
double MinTolerance () const
 Returns minimal allowed tolerance.
 
double MaxTolerance () const
 Returns maximal allowed tolerance.
 
double LimitTolerance (const double toler) const
 Returns tolerance limited by [myMinTol,myMaxTol].
 
void SendMsg (const TopoDS_Shape &shape, const Message_Msg &message, const Message_Gravity gravity=Message_Info) const
 Sends a message to be attached to the shape. Calls corresponding message of message registrator.
 
void SendMsg (const Message_Msg &message, const Message_Gravity gravity=Message_Info) const
 Sends a message to be attached to myShape. Calls previous method.
 
void SendWarning (const TopoDS_Shape &shape, const Message_Msg &message) const
 Sends a warning to be attached to the shape. Calls SendMsg with gravity set to Message_Warning.
 
void SendWarning (const Message_Msg &message) const
 Calls previous method for myShape.
 
void SendFail (const TopoDS_Shape &shape, const Message_Msg &message) const
 Sends a fail to be attached to the shape. Calls SendMsg with gravity set to Message_Fail.
 
void SendFail (const Message_Msg &message) const
 Calls previous method for myShape.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()=default
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
bool IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
bool IsInstance (const char *const theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
bool IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
bool IsKind (const char *const theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
int GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations.
 
int DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Protected Attributes

TopoDS_Shape mySolid
 
occ::handle< ShapeFix_ShellmyFixShell
 
int myStatus
 
int myFixShellMode
 
int myFixShellOrientationMode
 
bool myCreateOpenSolidMode
 
- Protected Attributes inherited from ShapeFix_Root
TopoDS_Shape myShape
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 
- Static Protected Member Functions inherited from ShapeFix_Root
static bool NeedFix (const int flag, const bool def=true)
 Auxiliary method for work with three-position (on/off/default) flags (modes) in ShapeFix.
 

Detailed Description

Provides method to build a solid from a shells and orients them in order to have a valid solid with finite volume.

Constructor & Destructor Documentation

◆ ShapeFix_Solid() [1/2]

ShapeFix_Solid::ShapeFix_Solid ( )

Empty constructor;.

◆ ShapeFix_Solid() [2/2]

ShapeFix_Solid::ShapeFix_Solid ( const TopoDS_Solid & solid)

Initializes by solid.

Member Function Documentation

◆ CreateOpenSolidMode()

bool & ShapeFix_Solid::CreateOpenSolidMode ( )
inline

Returns (modifiable) the mode for creation of solids. If mode myCreateOpenSolidMode is equal to true solids are created from open shells else solids are created from closed shells only. ShapeFix_Shell, by default False.

◆ FixShellMode()

int & ShapeFix_Solid::FixShellMode ( )
inline

Returns (modifiable) the mode for applying fixes of ShapeFix_Shell, by default True.

◆ FixShellOrientationMode()

int & ShapeFix_Solid::FixShellOrientationMode ( )
inline

Returns (modifiable) the mode for applying analysis and fixes of orientation of shells in the solid; by default True.

◆ FixShellTool()

occ::handle< ShapeFix_Shell > ShapeFix_Solid::FixShellTool ( ) const
inline

Returns tool for fixing shells.

◆ Init()

virtual void ShapeFix_Solid::Init ( const TopoDS_Solid & solid)
virtual

Initializes by solid .

◆ Perform()

virtual bool ShapeFix_Solid::Perform ( const Message_ProgressRange & theProgress = Message_ProgressRange())
virtual

Iterates on shells and performs fixes (calls ShapeFix_Shell for each subshell). The passed progress indicator allows user to consult the current progress stage and abort algorithm if needed.

◆ SetMaxTolerance()

void ShapeFix_Solid::SetMaxTolerance ( const double maxtol)
overridevirtual

Sets maximal allowed tolerance (also to FixShellTool)

Reimplemented from ShapeFix_Root.

◆ SetMinTolerance()

void ShapeFix_Solid::SetMinTolerance ( const double mintol)
overridevirtual

Sets minimal allowed tolerance (also to FixShellTool)

Reimplemented from ShapeFix_Root.

◆ SetMsgRegistrator()

void ShapeFix_Solid::SetMsgRegistrator ( const occ::handle< ShapeExtend_BasicMsgRegistrator > & msgreg)
overridevirtual

Sets message registrator.

Reimplemented from ShapeFix_Root.

◆ SetPrecision()

void ShapeFix_Solid::SetPrecision ( const double preci)
overridevirtual

Sets basic precision value (also to FixShellTool)

Reimplemented from ShapeFix_Root.

◆ Shape()

TopoDS_Shape ShapeFix_Solid::Shape ( )

In case of multiconnexity returns compound of fixed solids else returns one solid.

◆ Solid()

TopoDS_Shape ShapeFix_Solid::Solid ( ) const

Returns resulting solid.

◆ SolidFromShell()

TopoDS_Solid ShapeFix_Solid::SolidFromShell ( const TopoDS_Shell & shell)

Calls MakeSolid and orients the solid to be "not infinite".

◆ Status()

bool ShapeFix_Solid::Status ( const ShapeExtend_Status status) const

Returns the status of the last Fix.

Field Documentation

◆ myCreateOpenSolidMode

bool ShapeFix_Solid::myCreateOpenSolidMode
protected

◆ myFixShell

occ::handle<ShapeFix_Shell> ShapeFix_Solid::myFixShell
protected

◆ myFixShellMode

int ShapeFix_Solid::myFixShellMode
protected

◆ myFixShellOrientationMode

int ShapeFix_Solid::myFixShellOrientationMode
protected

◆ mySolid

TopoDS_Shape ShapeFix_Solid::mySolid
protected

◆ myStatus

int ShapeFix_Solid::myStatus
protected

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