Construction of the section lines between two shapes. For this Boolean operation, each face of the first shape is intersected by each face of the second shape. The resulting intersection edges are brought together into a compound object, but not chained or grouped into wires. Computation of the intersection of two Shapes or Surfaces The two parts involved in this Boolean operation may be defined from geometric surfaces: the most common use is the computation of the planar section of a shape. A Section object provides the framework for:
More...
|
| BRepAlgo_Section (const TopoDS_Shape &Sh1, const TopoDS_Shape &Sh2, const Standard_Boolean PerformNow=Standard_True) |
|
| BRepAlgo_Section (const TopoDS_Shape &Sh, const gp_Pln &Pl, const Standard_Boolean PerformNow=Standard_True) |
|
| BRepAlgo_Section (const TopoDS_Shape &Sh, const Handle< Geom_Surface > &Sf, const Standard_Boolean PerformNow=Standard_True) |
|
| BRepAlgo_Section (const Handle< Geom_Surface > &Sf, const TopoDS_Shape &Sh, const Standard_Boolean PerformNow=Standard_True) |
|
| BRepAlgo_Section (const Handle< Geom_Surface > &Sf1, const Handle< Geom_Surface > &Sf2, const Standard_Boolean PerformNow=Standard_True) |
| This and the above algorithms construct a framework for computing the section lines of. More...
|
|
void | Init1 (const TopoDS_Shape &S1) |
| Initializes the first part. More...
|
|
void | Init1 (const gp_Pln &Pl) |
| Initializes the first part. More...
|
|
void | Init1 (const Handle< Geom_Surface > &Sf) |
| Initializes the first part. More...
|
|
void | Init2 (const TopoDS_Shape &S2) |
| initialize second part More...
|
|
void | Init2 (const gp_Pln &Pl) |
| Initializes the second part. More...
|
|
void | Init2 (const Handle< Geom_Surface > &Sf) |
| This and the above algorithms reinitialize the first and the second parts on which this algorithm is going to perform the intersection computation. This is done with either: the surface Sf, the plane Pl or the shape Sh. You use the function Build to construct the result. More...
|
|
void | Approximation (const Standard_Boolean B) |
| Defines an option for computation of further intersections. This computation will be performed by the function Build in this framework. By default, the underlying 3D geometry attached to each elementary edge of the result of a computed intersection is: More...
|
|
void | ComputePCurveOn1 (const Standard_Boolean B) |
| Indicates if the Pcurve must be (or not) performed on first part. More...
|
|
void | ComputePCurveOn2 (const Standard_Boolean B) |
| Define options for the computation of further intersections which will be performed by the function Build in this framework. By default, no parametric 2D curve (pcurve) is defined for the elementary edges of the result. If ComputePCurve1 equals true, further computations performed in this framework with the function Build will attach an additional pcurve in the parametric space of the first shape to the constructed edges. If ComputePCurve2 equals true, the additional pcurve will be attached to the constructed edges in the parametric space of the second shape. These two functions may be used together. Note that as a result, pcurves will only be added onto edges built on new intersection lines. More...
|
|
void | Build () override |
| Performs the computation of the section lines between the two parts defined at the time of construction of this framework or reinitialized with the Init1 and Init2 functions. The constructed shape will be returned by the function Shape. This is a compound object composed of edges. These intersection edges may be built: More...
|
|
Standard_Boolean | HasAncestorFaceOn1 (const TopoDS_Shape &E, TopoDS_Shape &F) const |
| Identifies the ancestor faces of the new intersection edge E resulting from the last computation performed in this framework, that is, the faces of the two original shapes on which the edge E lies: More...
|
|
Standard_Boolean | HasAncestorFaceOn2 (const TopoDS_Shape &E, TopoDS_Shape &F) const |
| Identifies the ancestor faces of the new intersection edge E resulting from the last computation performed in this framework, that is, the faces of the two original shapes on which the edge E lies: More...
|
|
virtual | ~BRepAlgo_BooleanOperation () |
|
void | PerformDS () |
|
void | Perform (const TopAbs_State St1, const TopAbs_State St2) |
|
Handle< TopOpeBRepBuild_HBuilder > | Builder () const |
|
const TopoDS_Shape & | Shape1 () const |
| Returns the first shape involved in this Boolean operation. More...
|
|
const TopoDS_Shape & | Shape2 () const |
| Returns the second shape involved in this Boolean operation. More...
|
|
virtual const TopTools_ListOfShape & | Modified (const TopoDS_Shape &S) override |
| Returns the list of shapes modified from the shape <S>. More...
|
|
virtual Standard_Boolean | IsDeleted (const TopoDS_Shape &S) override |
| Returns true if the shape S has been deleted. More...
|
|
virtual const TopoDS_Shape & | Shape () |
| Returns a shape built by the shape construction algorithm. Raises exception StdFail_NotDone if the shape was not built. More...
|
|
| operator TopoDS_Shape () |
|
virtual const TopTools_ListOfShape & | Generated (const TopoDS_Shape &S) |
| Returns the list of shapes generated from the shape <S>. More...
|
|
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...
|
|
Construction of the section lines between two shapes. For this Boolean operation, each face of the first shape is intersected by each face of the second shape. The resulting intersection edges are brought together into a compound object, but not chained or grouped into wires. Computation of the intersection of two Shapes or Surfaces The two parts involved in this Boolean operation may be defined from geometric surfaces: the most common use is the computation of the planar section of a shape. A Section object provides the framework for:
- defining the shapes to be intersected, and the computation options,
- implementing the construction algorithm, and
- consulting the result. Example : giving two shapes S1,S2 accessing faces, let compute the section edges R on S1,S2, performing approximation on new curves, performing PCurve on part 1 but not on part 2 : Standard_Boolean PerformNow = Standard_False; BRepBoolAPI_Section S(S1,S2,PerformNow); S.ComputePCurveOn1(Standard_True); S.Approximation(Standard_True); S.Build(); TopoDS_Shape R = S.Shape(); On Null Shapes of geometries, NotDone() is called.