Open CASCADE Technology  7.6.0
Public Member Functions

BRepOffsetAPI_MakeThickSolid Class Reference

Describes functions to build hollowed solids. A hollowed solid is built from an initial solid and a set of faces on this solid, which are to be removed. The remaining faces of the solid become the walls of the hollowed solid, their thickness defined at the time of construction. the solid is built from an initial solid and a set of faces {Fi} from , builds a solid composed by two shells closed by the {Fi}. First shell <SS> is composed by all the faces of expected {Fi}. Second shell is the offset shell of <SS>. A MakeThickSolid object provides a framework for: More...

#include <BRepOffsetAPI_MakeThickSolid.hxx>

Inheritance diagram for BRepOffsetAPI_MakeThickSolid:
Inheritance graph
[legend]

Public Member Functions

 BRepOffsetAPI_MakeThickSolid ()
 Constructor does nothing. More...
 
void MakeThickSolidBySimple (const TopoDS_Shape &theS, const Standard_Real theOffsetValue)
 Constructs solid using simple algorithm. According to its nature it is not possible to set list of the closing faces. This algorithm does not support faces removing. It is caused by fact that intersections are not computed during offset creation. Non-closed shell or face is expected as input. More...
 
void MakeThickSolidByJoin (const TopoDS_Shape &S, const TopTools_ListOfShape &ClosingFaces, const Standard_Real Offset, const Standard_Real Tol, const BRepOffset_Mode Mode=BRepOffset_Skin, const Standard_Boolean Intersection=Standard_False, const Standard_Boolean SelfInter=Standard_False, const GeomAbs_JoinType Join=GeomAbs_Arc, const Standard_Boolean RemoveIntEdges=Standard_False, const Message_ProgressRange &theRange=Message_ProgressRange())
 Constructs a hollowed solid from the solid S by removing the set of faces ClosingFaces from S, where: Offset defines the thickness of the walls. Its sign indicates which side of the surface of the solid the hollowed shape is built on;. More...
 
virtual void Build (const Message_ProgressRange &theRange=Message_ProgressRange()) override
 Does nothing. More...
 
virtual const TopTools_ListOfShapeModified (const TopoDS_Shape &S) override
 Returns the list of shapes modified from the shape . More...
 
- Public Member Functions inherited from BRepOffsetAPI_MakeOffsetShape
 BRepOffsetAPI_MakeOffsetShape ()
 Constructor does nothing. More...
 
void PerformBySimple (const TopoDS_Shape &theS, const Standard_Real theOffsetValue)
 Constructs offset shape for the given one using simple algorithm without intersections computation. More...
 
void PerformByJoin (const TopoDS_Shape &S, const Standard_Real Offset, const Standard_Real Tol, const BRepOffset_Mode Mode=BRepOffset_Skin, const Standard_Boolean Intersection=Standard_False, const Standard_Boolean SelfInter=Standard_False, const GeomAbs_JoinType Join=GeomAbs_Arc, const Standard_Boolean RemoveIntEdges=Standard_False, const Message_ProgressRange &theRange=Message_ProgressRange())
 Constructs a shape parallel to the shape S, where. More...
 
virtual const BRepOffset_MakeOffsetMakeOffset () const
 Returns instance of the unrelying intersection / arc algorithm. More...
 
virtual const TopTools_ListOfShapeGenerated (const TopoDS_Shape &S) override
 Returns the list of shapes generated from the shape . More...
 
virtual Standard_Boolean IsDeleted (const TopoDS_Shape &S) override
 Returns true if the shape has been removed from the result. More...
 
GeomAbs_JoinType GetJoinType () const
 Returns offset join type. More...
 
- Public Member Functions inherited from BRepBuilderAPI_MakeShape
virtual const TopoDS_ShapeShape ()
 Returns a shape built by the shape construction algorithm. Raises exception StdFail_NotDone if the shape was not built. More...
 
 operator TopoDS_Shape ()
 
- Public Member Functions inherited from BRepBuilderAPI_Command
virtual ~BRepBuilderAPI_Command ()
 
virtual Standard_Boolean IsDone () const
 
void Check () const
 Raises NotDone if done is false. More...
 

Additional Inherited Members

- Protected Types inherited from BRepOffsetAPI_MakeOffsetShape
enum  OffsetAlgo_Type { OffsetAlgo_NONE , OffsetAlgo_JOIN , OffsetAlgo_SIMPLE }
 
- Protected Member Functions inherited from BRepBuilderAPI_MakeShape
 BRepBuilderAPI_MakeShape ()
 
- Protected Member Functions inherited from BRepBuilderAPI_Command
 BRepBuilderAPI_Command ()
 Set done to False. More...
 
void Done ()
 Set done to true. More...
 
void NotDone ()
 Set done to false. More...
 
- Protected Attributes inherited from BRepOffsetAPI_MakeOffsetShape
OffsetAlgo_Type myLastUsedAlgo
 
BRepOffset_MakeOffset myOffsetShape
 
BRepOffset_MakeSimpleOffset mySimpleOffsetShape
 
- Protected Attributes inherited from BRepBuilderAPI_MakeShape
TopoDS_Shape myShape
 
TopTools_ListOfShape myGenerated
 

Detailed Description

Describes functions to build hollowed solids. A hollowed solid is built from an initial solid and a set of faces on this solid, which are to be removed. The remaining faces of the solid become the walls of the hollowed solid, their thickness defined at the time of construction. the solid is built from an initial solid and a set of faces {Fi} from , builds a solid composed by two shells closed by the {Fi}. First shell <SS> is composed by all the faces of expected {Fi}. Second shell is the offset shell of <SS>. A MakeThickSolid object provides a framework for:

Constructor & Destructor Documentation

◆ BRepOffsetAPI_MakeThickSolid()

BRepOffsetAPI_MakeThickSolid::BRepOffsetAPI_MakeThickSolid ( )

Constructor does nothing.

Member Function Documentation

◆ Build()

virtual void BRepOffsetAPI_MakeThickSolid::Build ( const Message_ProgressRange theRange = Message_ProgressRange())
overridevirtual

Does nothing.

Reimplemented from BRepOffsetAPI_MakeOffsetShape.

◆ MakeThickSolidByJoin()

void BRepOffsetAPI_MakeThickSolid::MakeThickSolidByJoin ( const TopoDS_Shape S,
const TopTools_ListOfShape ClosingFaces,
const Standard_Real  Offset,
const Standard_Real  Tol,
const BRepOffset_Mode  Mode = BRepOffset_Skin,
const Standard_Boolean  Intersection = Standard_False,
const Standard_Boolean  SelfInter = Standard_False,
const GeomAbs_JoinType  Join = GeomAbs_Arc,
const Standard_Boolean  RemoveIntEdges = Standard_False,
const Message_ProgressRange theRange = Message_ProgressRange() 
)

Constructs a hollowed solid from the solid S by removing the set of faces ClosingFaces from S, where: Offset defines the thickness of the walls. Its sign indicates which side of the surface of the solid the hollowed shape is built on;.

  • Tol defines the tolerance criterion for coincidence in generated shapes;
  • Mode defines the construction type of parallels applied to free edges of shape S. Currently, only one construction type is implemented, namely the one where the free edges do not generate parallels; this corresponds to the default value BRepOffset_Skin; Intersection specifies how the algorithm must work in order to limit the parallels to two adjacent shapes:
  • if Intersection is false (default value), the intersection is calculated with the parallels to the two adjacent shapes,
  • if Intersection is true, the intersection is calculated by taking account of all parallels generated; this computation method is more general as it avoids self-intersections generated in the offset shape from features of small dimensions on shape S, however this method has not been completely implemented and therefore is not recommended for use;
  • SelfInter tells the algorithm whether a computation to eliminate self-intersections needs to be applied to the resulting shape. However, as this functionality is not yet implemented, you should use the default value (false);
  • Join defines how to fill the holes that may appear between parallels to the two adjacent faces. It may take values GeomAbs_Arc or GeomAbs_Intersection:
  • if Join is equal to GeomAbs_Arc, then pipes are generated between two free edges of two adjacent parallels, and spheres are generated on "images" of vertices; it is the default value,
  • if Join is equal to GeomAbs_Intersection, then the parallels to the two adjacent faces are enlarged and intersected, so that there are no free edges on parallels to faces. RemoveIntEdges flag defines whether to remove the INTERNAL edges from the result or not. Warnings Since the algorithm of MakeThickSolid is based on MakeOffsetShape algorithm, the warnings are the same as for MakeOffsetShape.

◆ MakeThickSolidBySimple()

void BRepOffsetAPI_MakeThickSolid::MakeThickSolidBySimple ( const TopoDS_Shape theS,
const Standard_Real  theOffsetValue 
)

Constructs solid using simple algorithm. According to its nature it is not possible to set list of the closing faces. This algorithm does not support faces removing. It is caused by fact that intersections are not computed during offset creation. Non-closed shell or face is expected as input.

◆ Modified()

virtual const TopTools_ListOfShape& BRepOffsetAPI_MakeThickSolid::Modified ( const TopoDS_Shape S)
overridevirtual

Returns the list of shapes modified from the shape .

Reimplemented from BRepOffsetAPI_MakeOffsetShape.


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