Open CASCADE Technology  6.9.1
Data Structures | Public Types | Public Member Functions | Protected Member Functions
BRepBuilderAPI_FastSewing Class Reference

This class performs fast sewing of surfaces (faces). It supposes that all surfaces are finite and are naturally restricted by their bounds. Moreover, it supposes that stitched together surfaces have the same parameterization along common boundaries, therefore it does not perform time-consuming check for SameParameter property of edges. More...

#include <BRepBuilderAPI_FastSewing.hxx>

Inheritance diagram for BRepBuilderAPI_FastSewing:
Inheritance graph
[legend]

Data Structures

class  FS_Edge
 The struct corresponding to a edge. More...
 
struct  FS_Face
 The struct corresponding to an face. More...
 
struct  FS_Vertex
 The struct corresponding to a vertex. More...
 
class  NodeInspector
 This inspector will find a node nearest to the given point not far than on the given tolerance. More...
 

Public Types

enum  FS_Statuses {
  FS_OK = 0x00000000, FS_Degenerated = 0x00000001, FS_FindVertexError = 0x00000002, FS_FindEdgeError = 0x00000004,
  FS_FaceWithNullSurface = 0x00000008, FS_NotNaturalBoundsFace = 0x00000010, FS_InfiniteSurface = 0x00000020, FS_EmptyInput = 0x00000040,
  FS_Exception = 0x00000080
}
 Enumeration of result statuses. More...
 
typedef unsigned int FS_VARStatuses
 

Public Member Functions

 BRepBuilderAPI_FastSewing (const Standard_Real theTolerance=1.0e-06)
 Creates an object with tolerance of connexity. More...
 
Standard_Boolean Add (const TopoDS_Shape &theShape)
 Adds faces of a shape. More...
 
Standard_Boolean Add (const Handle< Geom_Surface > &theSurface)
 Adds a surface. More...
 
void Perform (void)
 Compute resulted shape. More...
 
void SetTolerance (const Standard_Real theToler)
 Sets tolerance. More...
 
Standard_Real GetTolerance () const
 Returns tolerance. More...
 
const TopoDS_ShapeGetResult () const
 Returns resulted shape. More...
 
FS_VARStatuses GetStatuses (Standard_OStream *const theOS=0)
 Returns list of statuses. Print message if theOS != 0. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual void Delete () const
 Memory deallocator for transient classes. More...
 
virtual const Handle_Standard_Type & DynamicType () const
 Returns a type information object about this object. More...
 
Standard_Boolean IsInstance (const 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 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...
 
virtual Handle_Standard_Transient This () const
 Returns a Handle which references this object. Must never be called to objects created in stack. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 

Protected Member Functions

void FindVertexes (const Standard_Integer theSurfID, NCollection_CellFilter< NodeInspector > &theCells)
 
void FindEdges (const Standard_Integer theSurfID)
 
void UpdateEdgeInfo (const Standard_Integer theIDPrevVertex, const Standard_Integer theIDCurrVertex, const Standard_Integer theFaceID, const Standard_Integer theIDCurvOnFace)
 
void CreateNewEdge (const Standard_Integer theIDPrevVertex, const Standard_Integer theIDCurrVertex, const Standard_Integer theFaceID, const Standard_Integer theIDCurvOnFace)
 
Standard_Real Compute3DRange ()
 
FS_VARStatuses SetStatus (FS_Statuses theStatus)
 Sets status. Returns numeric value of the status set. More...
 

Detailed Description

This class performs fast sewing of surfaces (faces). It supposes that all surfaces are finite and are naturally restricted by their bounds. Moreover, it supposes that stitched together surfaces have the same parameterization along common boundaries, therefore it does not perform time-consuming check for SameParameter property of edges.

For sewing, use this function as following:

Member Typedef Documentation

Member Enumeration Documentation

Enumeration of result statuses.

Enumerator
FS_OK 
FS_Degenerated 
FS_FindVertexError 
FS_FindEdgeError 
FS_FaceWithNullSurface 
FS_NotNaturalBoundsFace 
FS_InfiniteSurface 
FS_EmptyInput 
FS_Exception 

Constructor & Destructor Documentation

BRepBuilderAPI_FastSewing::BRepBuilderAPI_FastSewing ( const Standard_Real  theTolerance = 1.0e-06)

Creates an object with tolerance of connexity.

Member Function Documentation

Standard_Boolean BRepBuilderAPI_FastSewing::Add ( const TopoDS_Shape theShape)

Adds faces of a shape.

Standard_Boolean BRepBuilderAPI_FastSewing::Add ( const Handle< Geom_Surface > &  theSurface)

Adds a surface.

Standard_Real BRepBuilderAPI_FastSewing::Compute3DRange ( )
protected
void BRepBuilderAPI_FastSewing::CreateNewEdge ( const Standard_Integer  theIDPrevVertex,
const Standard_Integer  theIDCurrVertex,
const Standard_Integer  theFaceID,
const Standard_Integer  theIDCurvOnFace 
)
protected
void BRepBuilderAPI_FastSewing::FindEdges ( const Standard_Integer  theSurfID)
protected
void BRepBuilderAPI_FastSewing::FindVertexes ( const Standard_Integer  theSurfID,
NCollection_CellFilter< NodeInspector > &  theCells 
)
protected
const TopoDS_Shape& BRepBuilderAPI_FastSewing::GetResult ( ) const
inline

Returns resulted shape.

FS_VARStatuses BRepBuilderAPI_FastSewing::GetStatuses ( Standard_OStream *const  theOS = 0)

Returns list of statuses. Print message if theOS != 0.

Standard_Real BRepBuilderAPI_FastSewing::GetTolerance ( ) const
inline

Returns tolerance.

void BRepBuilderAPI_FastSewing::Perform ( void  )

Compute resulted shape.

FS_VARStatuses BRepBuilderAPI_FastSewing::SetStatus ( FS_Statuses  theStatus)
inlineprotected

Sets status. Returns numeric value of the status set.

void BRepBuilderAPI_FastSewing::SetTolerance ( const Standard_Real  theToler)
inline

Sets tolerance.

void BRepBuilderAPI_FastSewing::UpdateEdgeInfo ( const Standard_Integer  theIDPrevVertex,
const Standard_Integer  theIDCurrVertex,
const Standard_Integer  theFaceID,
const Standard_Integer  theIDCurvOnFace 
)
protected

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