Open CASCADE Technology
7.1.0.beta
|
This tool tries to unify faces and edges of the shape which lies on the same geometry. Faces/edges considering as 'same-domain' if a group of neighbouring faces/edges lying on coincident surfaces/curves. In this case these faces/edges can be unified into one face/edge. ShapeUpgrade_UnifySameDomain initialized by the shape and the next optional parameters: UnifyFaces - tries to unify all possible faces UnifyEdges - tries to unify all possible edges ConcatBSplines - if this flag set to true then all neighbouring edges which lays on the BSpline or Bezier curves with C1 continuity on their common vertices will be merged into one common edge The output result of tool is an unified shape All the modifications of initial shape are recorded during unifying. Method Generated() can be used to obtain the new (unified) shape from the old one. More...
#include <ShapeUpgrade_UnifySameDomain.hxx>
Public Member Functions | |
ShapeUpgrade_UnifySameDomain () | |
empty constructor More... | |
ShapeUpgrade_UnifySameDomain (const TopoDS_Shape &aShape, const Standard_Boolean UnifyEdges=Standard_True, const Standard_Boolean UnifyFaces=Standard_True, const Standard_Boolean ConcatBSplines=Standard_False) | |
void | Initialize (const TopoDS_Shape &aShape, const Standard_Boolean UnifyEdges=Standard_True, const Standard_Boolean UnifyFaces=Standard_True, const Standard_Boolean ConcatBSplines=Standard_False) |
Initializes with a shape. More... | |
void | AllowInternalEdges (const Standard_Boolean theValue) |
Sets the flag defining whether it is allowed to create internal edges inside merged faces in the case of non-manifold topology. Without this flag merging through multi connected edge is forbidden. Default value is false. More... | |
void | SetLinearTolerance (const Standard_Real theValue) |
Sets the linear tolerance. Default value is Precision::Confusion(). More... | |
void | SetAngularTolerance (const Standard_Real theValue) |
Sets the angular tolerance. Default value is Precision::Angular(). More... | |
void | Build () |
Builds the resulting shape. More... | |
const TopoDS_Shape & | Shape () const |
Gives the resulting shape. More... | |
TopoDS_Shape | Generated (const TopoDS_Shape &aShape) const |
Gets new common shape from the old one. More... | |
void | UnifyFaces () |
this method makes if possible a common face from each group of faces lying on coincident surfaces More... | |
void | UnifyEdges () |
this method makes if possible a common edge from each group of edges connecting common couple of faces More... | |
void | UnifyFacesAndEdges () |
this method unifies same domain faces and edges More... | |
Public Member Functions inherited from MMgt_TShared | |
virtual void | Delete () const override |
Memory deallocator for transient classes. More... | |
Public Member Functions inherited from Standard_Transient | |
Standard_Transient () | |
Empty constructor. More... | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. More... | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. More... | |
virtual | ~Standard_Transient () |
Destructor must be virtual. More... | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. More... | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. More... | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. More... | |
Standard_Boolean | 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. More... | |
Standard_Boolean | IsKind (const Standard_CString 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. More... | |
Standard_Transient * | This () 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. More... | |
Standard_Integer | GetRefCount () const |
Get the reference counter of this object. More... | |
void | IncrementRefCounter () const |
Increments the reference counter of this object. More... | |
Standard_Integer | DecrementRefCounter () const |
Decrements the reference counter of this object; returns the decremented value. More... | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. More... | |
Static Public Member Functions inherited from Standard_Transient | |
static const char * | get_type_name () |
Returns a type descriptor about this object. More... | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. More... | |
This tool tries to unify faces and edges of the shape which lies on the same geometry. Faces/edges considering as 'same-domain' if a group of neighbouring faces/edges lying on coincident surfaces/curves. In this case these faces/edges can be unified into one face/edge. ShapeUpgrade_UnifySameDomain initialized by the shape and the next optional parameters: UnifyFaces - tries to unify all possible faces UnifyEdges - tries to unify all possible edges ConcatBSplines - if this flag set to true then all neighbouring edges which lays on the BSpline or Bezier curves with C1 continuity on their common vertices will be merged into one common edge The output result of tool is an unified shape All the modifications of initial shape are recorded during unifying. Method Generated() can be used to obtain the new (unified) shape from the old one.
ShapeUpgrade_UnifySameDomain::ShapeUpgrade_UnifySameDomain | ( | ) |
empty constructor
ShapeUpgrade_UnifySameDomain::ShapeUpgrade_UnifySameDomain | ( | const TopoDS_Shape & | aShape, |
const Standard_Boolean | UnifyEdges = Standard_True , |
||
const Standard_Boolean | UnifyFaces = Standard_True , |
||
const Standard_Boolean | ConcatBSplines = Standard_False |
||
) |
void ShapeUpgrade_UnifySameDomain::AllowInternalEdges | ( | const Standard_Boolean | theValue | ) |
Sets the flag defining whether it is allowed to create internal edges inside merged faces in the case of non-manifold topology. Without this flag merging through multi connected edge is forbidden. Default value is false.
void ShapeUpgrade_UnifySameDomain::Build | ( | ) |
Builds the resulting shape.
TopoDS_Shape ShapeUpgrade_UnifySameDomain::Generated | ( | const TopoDS_Shape & | aShape | ) | const |
Gets new common shape from the old one.
void ShapeUpgrade_UnifySameDomain::Initialize | ( | const TopoDS_Shape & | aShape, |
const Standard_Boolean | UnifyEdges = Standard_True , |
||
const Standard_Boolean | UnifyFaces = Standard_True , |
||
const Standard_Boolean | ConcatBSplines = Standard_False |
||
) |
Initializes with a shape.
|
inline |
Sets the angular tolerance. Default value is Precision::Angular().
|
inline |
Sets the linear tolerance. Default value is Precision::Confusion().
const TopoDS_Shape& ShapeUpgrade_UnifySameDomain::Shape | ( | ) | const |
Gives the resulting shape.
void ShapeUpgrade_UnifySameDomain::UnifyEdges | ( | ) |
this method makes if possible a common edge from each group of edges connecting common couple of faces
void ShapeUpgrade_UnifySameDomain::UnifyFaces | ( | ) |
this method makes if possible a common face from each group of faces lying on coincident surfaces
void ShapeUpgrade_UnifySameDomain::UnifyFacesAndEdges | ( | ) |
this method unifies same domain faces and edges