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

Fixing orientation of faces in shell. More...

#include <ShapeFix_Shell.hxx>

Inheritance diagram for ShapeFix_Shell:
Inheritance graph
[legend]

Public Member Functions

 ShapeFix_Shell ()
 Empty constructor.
 
 ShapeFix_Shell (const TopoDS_Shell &shape)
 Initializes by shell.
 
void Init (const TopoDS_Shell &shell)
 Initializes by shell.
 
bool Perform (const Message_ProgressRange &theProgress=Message_ProgressRange())
 Iterates on subshapes and performs fixes (for each face calls ShapeFix_Face::Perform and then calls FixFaceOrientation). The passed progress indicator allows user to consult the current progress stage and abort algorithm if needed.
 
bool FixFaceOrientation (const TopoDS_Shell &shell, const bool isAccountMultiConex=true, const bool NonManifold=false)
 Fixes orientation of faces in shell. Changes orientation of face in the shell, if it is oriented opposite to neighbouring faces. If it is not possible to orient all faces in the shell (like in case of mebious band), this method orients only subset of faces. Other faces are stored in Error compound. Modes : isAccountMultiConex - mode for account cases of multiconnexity. If this mode is equal to true, separate shells will be created in the cases of multiconnexity. If this mode is equal to false, one shell will be created without account of multiconnexity.By default - true; NonManifold - mode for creation of non-manifold shells. If this mode is equal to true one non-manifold will be created from shell contains multishared edges. Else if this mode is equal to false only manifold shells will be created. By default - false.
 
TopoDS_Shell Shell ()
 Returns fixed shell (or subset of oriented faces).
 
TopoDS_Shape Shape ()
 In case of multiconnexity returns compound of fixed shells else returns one shell..
 
int NbShells () const
 Returns Number of obtainrd shells;.
 
TopoDS_Compound ErrorFaces () const
 Returns not oriented subset of faces.
 
bool Status (const ShapeExtend_Status status) const
 Returns the status of the last Fix.
 
occ::handle< ShapeFix_FaceFixFaceTool ()
 Returns tool for fixing faces.
 
void SetMsgRegistrator (const occ::handle< ShapeExtend_BasicMsgRegistrator > &msgreg) override
 Sets message registrator.
 
void SetPrecision (const double preci) override
 Sets basic precision value (also to FixWireTool)
 
void SetMinTolerance (const double mintol) override
 Sets minimal allowed tolerance (also to FixWireTool)
 
void SetMaxTolerance (const double maxtol) override
 Sets maximal allowed tolerance (also to FixWireTool)
 
intFixFaceMode ()
 Returns (modifiable) the mode for applying fixes of ShapeFix_Face, by default True.
 
intFixOrientationMode ()
 Returns (modifiable) the mode for applying FixFaceOrientation, by default True.
 
virtual void SetNonManifoldFlag (const bool isNonManifold)
 Sets NonManifold flag.
 
- 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_Shell myShell
 
TopoDS_Compound myErrFaces
 
int myStatus
 
occ::handle< ShapeFix_FacemyFixFace
 
int myFixFaceMode
 
int myFixOrientationMode
 
int myNbShells
 
bool myNonManifold
 
- 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

Fixing orientation of faces in shell.

Constructor & Destructor Documentation

◆ ShapeFix_Shell() [1/2]

ShapeFix_Shell::ShapeFix_Shell ( )

Empty constructor.

◆ ShapeFix_Shell() [2/2]

ShapeFix_Shell::ShapeFix_Shell ( const TopoDS_Shell & shape)

Initializes by shell.

Member Function Documentation

◆ ErrorFaces()

TopoDS_Compound ShapeFix_Shell::ErrorFaces ( ) const

Returns not oriented subset of faces.

◆ FixFaceMode()

int & ShapeFix_Shell::FixFaceMode ( )

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

◆ FixFaceOrientation()

bool ShapeFix_Shell::FixFaceOrientation ( const TopoDS_Shell & shell,
const bool isAccountMultiConex = true,
const bool NonManifold = false )

Fixes orientation of faces in shell. Changes orientation of face in the shell, if it is oriented opposite to neighbouring faces. If it is not possible to orient all faces in the shell (like in case of mebious band), this method orients only subset of faces. Other faces are stored in Error compound. Modes : isAccountMultiConex - mode for account cases of multiconnexity. If this mode is equal to true, separate shells will be created in the cases of multiconnexity. If this mode is equal to false, one shell will be created without account of multiconnexity.By default - true; NonManifold - mode for creation of non-manifold shells. If this mode is equal to true one non-manifold will be created from shell contains multishared edges. Else if this mode is equal to false only manifold shells will be created. By default - false.

◆ FixFaceTool()

occ::handle< ShapeFix_Face > ShapeFix_Shell::FixFaceTool ( )

Returns tool for fixing faces.

◆ FixOrientationMode()

int & ShapeFix_Shell::FixOrientationMode ( )

Returns (modifiable) the mode for applying FixFaceOrientation, by default True.

◆ Init()

void ShapeFix_Shell::Init ( const TopoDS_Shell & shell)

Initializes by shell.

◆ NbShells()

int ShapeFix_Shell::NbShells ( ) const

Returns Number of obtainrd shells;.

◆ Perform()

bool ShapeFix_Shell::Perform ( const Message_ProgressRange & theProgress = Message_ProgressRange())

Iterates on subshapes and performs fixes (for each face calls ShapeFix_Face::Perform and then calls FixFaceOrientation). The passed progress indicator allows user to consult the current progress stage and abort algorithm if needed.

◆ SetMaxTolerance()

void ShapeFix_Shell::SetMaxTolerance ( const double maxtol)
overridevirtual

Sets maximal allowed tolerance (also to FixWireTool)

Reimplemented from ShapeFix_Root.

◆ SetMinTolerance()

void ShapeFix_Shell::SetMinTolerance ( const double mintol)
overridevirtual

Sets minimal allowed tolerance (also to FixWireTool)

Reimplemented from ShapeFix_Root.

◆ SetMsgRegistrator()

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

Sets message registrator.

Reimplemented from ShapeFix_Root.

◆ SetNonManifoldFlag()

virtual void ShapeFix_Shell::SetNonManifoldFlag ( const bool isNonManifold)
virtual

Sets NonManifold flag.

◆ SetPrecision()

void ShapeFix_Shell::SetPrecision ( const double preci)
overridevirtual

Sets basic precision value (also to FixWireTool)

Reimplemented from ShapeFix_Root.

◆ Shape()

TopoDS_Shape ShapeFix_Shell::Shape ( )

In case of multiconnexity returns compound of fixed shells else returns one shell..

◆ Shell()

TopoDS_Shell ShapeFix_Shell::Shell ( )

Returns fixed shell (or subset of oriented faces).

◆ Status()

bool ShapeFix_Shell::Status ( const ShapeExtend_Status status) const

Returns the status of the last Fix.

Field Documentation

◆ myErrFaces

TopoDS_Compound ShapeFix_Shell::myErrFaces
protected

◆ myFixFace

occ::handle<ShapeFix_Face> ShapeFix_Shell::myFixFace
protected

◆ myFixFaceMode

int ShapeFix_Shell::myFixFaceMode
protected

◆ myFixOrientationMode

int ShapeFix_Shell::myFixOrientationMode
protected

◆ myNbShells

int ShapeFix_Shell::myNbShells
protected

◆ myNonManifold

bool ShapeFix_Shell::myNonManifold
protected

◆ myShell

TopoDS_Shell ShapeFix_Shell::myShell
protected

◆ myStatus

int ShapeFix_Shell::myStatus
protected

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