The HBuilder algorithm constructs topological objects from an existing topology and new geometries attached to the topology. It is used to construct the result of a topological operation; the existing topologies are the parts involved in the topological operation and the new geometries are the intersection lines and points.
More...
|
| | TopOpeBRepBuild_HBuilder (const TopOpeBRepDS_BuildTool &BT) |
| |
| const TopOpeBRepDS_BuildTool & | BuildTool () const |
| |
| void | Perform (const occ::handle< TopOpeBRepDS_HDataStructure > &HDS) |
| | Stores the data structure <HDS>, Create shapes from the new geometries described in <HDS>.
|
| |
| void | Perform (const occ::handle< TopOpeBRepDS_HDataStructure > &HDS, const TopoDS_Shape &S1, const TopoDS_Shape &S2) |
| | Same as previous + evaluates if an operation performed on shapes S1,S2 is a particular case.
|
| |
| void | Clear () |
| | Removes all split and merge already performed. Does NOT clear the handled DS.
|
| |
| occ::handle< TopOpeBRepDS_HDataStructure > | DataStructure () const |
| | returns the DS handled by this builder
|
| |
| TopOpeBRepDS_BuildTool & | ChangeBuildTool () |
| |
| void | MergeShapes (const TopoDS_Shape &S1, const TopAbs_State TB1, const TopoDS_Shape &S2, const TopAbs_State TB2) |
| | Merges the two shapes <S1> and <S2> keeping the parts of states <TB1>,<TB2> in <S1>,<S2>.
|
| |
| void | MergeSolids (const TopoDS_Shape &S1, const TopAbs_State TB1, const TopoDS_Shape &S2, const TopAbs_State TB2) |
| | Merges the two solids <S1> and <S2> keeping the parts in each solid of states <TB1> and <TB2>.
|
| |
| void | MergeSolid (const TopoDS_Shape &S, const TopAbs_State TB) |
| | Merges the solid keeping the parts of state <TB>.
|
| |
| bool | IsSplit (const TopoDS_Shape &S, const TopAbs_State ToBuild) const |
| | Returns True if the shape has been split.
|
| |
| const NCollection_List< TopoDS_Shape > & | Splits (const TopoDS_Shape &S, const TopAbs_State ToBuild) const |
| | Returns the split parts <ToBuild> of shape .
|
| |
| bool | IsMerged (const TopoDS_Shape &S, const TopAbs_State ToBuild) const |
| | Returns True if the shape has been merged.
|
| |
| const NCollection_List< TopoDS_Shape > & | Merged (const TopoDS_Shape &S, const TopAbs_State ToBuild) const |
| | Returns the merged parts <ToBuild> of shape .
|
| |
| const TopoDS_Shape & | NewVertex (const int I) const |
| | Returns the vertex created on point .
|
| |
| const NCollection_List< TopoDS_Shape > & | NewEdges (const int I) const |
| | Returns the edges created on curve .
|
| |
| NCollection_List< TopoDS_Shape > & | ChangeNewEdges (const int I) |
| | Returns the edges created on curve .
|
| |
| const NCollection_List< TopoDS_Shape > & | NewFaces (const int I) const |
| | Returns the faces created on surface .
|
| |
| const NCollection_List< TopoDS_Shape > & | Section () |
| |
| void | InitExtendedSectionDS (const int k=3) |
| |
| void | InitSection (const int k=3) |
| |
| bool | MoreSection () const |
| |
| void | NextSection () |
| |
| const TopoDS_Shape & | CurrentSection () const |
| |
| int | GetDSEdgeFromSectEdge (const TopoDS_Shape &E, const int rank) |
| |
| NCollection_List< int > & | GetDSFaceFromDSEdge (const int indexEdg, const int rank) |
| |
| int | GetDSCurveFromSectEdge (const TopoDS_Shape &SectEdge) |
| |
| int | GetDSFaceFromDSCurve (const int indexCur, const int rank) |
| |
| int | GetDSPointFromNewVertex (const TopoDS_Shape &NewVert) |
| |
| bool | EdgeCurveAncestors (const TopoDS_Shape &E, TopoDS_Shape &F1, TopoDS_Shape &F2, int &IC) |
| | search for the couple of face F1,F2 (from arguments of supra Perform(S1,S2,HDS)) method which intersection gives section edge E built on an intersection curve. returns True if F1,F2 have been valued. returns False if E is not a section edge built on intersection curve IC.
|
| |
| bool | EdgeSectionAncestors (const TopoDS_Shape &E, NCollection_List< TopoDS_Shape > &LF1, NCollection_List< TopoDS_Shape > &LF2, NCollection_List< TopoDS_Shape > &LE1, NCollection_List< TopoDS_Shape > &LE2) |
| | search for the couple of face F1,F2 (from arguments of supra Perform(S1,S2,HDS)) method which intersection gives section edge E built on at least one edge. returns True if F1,F2 have been valued. returns False if E is not a section edge built on at least one edge of S1 and/or S2. LE1,LE2 are edges of S1,S2 which common part is edge E. LE1 or LE2 may be empty() but not both.
|
| |
| int | IsKPart () |
| | Returns 0 is standard operation, != 0 if particular case.
|
| |
| void | MergeKPart (const TopAbs_State TB1, const TopAbs_State TB2) |
| |
| TopOpeBRepBuild_Builder & | ChangeBuilder () |
| |
Public Member Functions inherited from Standard_Transient |
| | Standard_Transient () |
| | Empty constructor.
|
| |
| | Standard_Transient (const Standard_Transient &) |
| | Copy constructor – does nothing.
|
| |
| Standard_Transient & | operator= (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_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.
|
| |
| 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.
|
| |
The HBuilder algorithm constructs topological objects from an existing topology and new geometries attached to the topology. It is used to construct the result of a topological operation; the existing topologies are the parts involved in the topological operation and the new geometries are the intersection lines and points.