BRepGraphInc
OCCT package BRepGraphInc: BRepGraphInc_BaseDef, BRepGraphInc_BaseRef, BRepGraphInc_BaseRep, BRepGraphInc_ChildRef, and 32 more bound classes.
BRepGraphInc_BaseDef
Constructors(1)
Properties(4)
BRepGraphInc_BaseRef
Constructors(1)
Properties(3)
BRepGraphInc_BaseRep
Constructors(1)
Properties(2)
BRepGraphInc_ChildRef
Constructors(1)
Properties(3)
BRepGraphInc_CoEdgeDef
Constructors(1)
Instance methods(1)
- InitVectors(argNo0: NCollection_BaseAllocator): voidParameters (1)
argNo0
Properties(10)
BRepGraphInc_CoEdgeRef
Constructors(1)
Properties(2)
BRepGraphInc_CompoundDef
Constructors(1)
Instance methods(1)
- InitVectors(theAlloc: NCollection_BaseAllocator): voidParameters (1)
theAlloc
Properties(1)
BRepGraphInc_CompSolidDef
Constructors(1)
Instance methods(1)
- InitVectors(theAlloc: NCollection_BaseAllocator): voidParameters (1)
theAlloc
Properties(1)
BRepGraphInc_Curve2DRep
Constructors(1)
Properties(1)
BRepGraphInc_Curve3DRep
Constructors(1)
Properties(1)
BRepGraphInc_EdgeDef
Constructors(1)
Instance methods(1)
- InitVectors(theAlloc: NCollection_BaseAllocator): voidParameters (1)
theAlloc
Properties(12)
BRepGraphInc_FaceDef
Constructors(1)
Instance methods(1)
- InitVectors(theAlloc: NCollection_BaseAllocator): voidParameters (1)
theAlloc
Properties(6)
BRepGraphInc_FaceRef
Constructors(1)
Properties(3)
BRepGraphInc_OccurrenceDef
Constructors(1)
Instance methods(1)
- InitVectors(argNo0: NCollection_BaseAllocator): voidParameters (1)
argNo0
Properties(1)
BRepGraphInc_OccurrenceRef
Constructors(1)
Properties(2)
BRepGraphInc_Polygon2DRep
Constructors(1)
Properties(1)
BRepGraphInc_Polygon3DRep
Constructors(1)
Properties(1)
BRepGraphInc_PolygonOnTriRep
Constructors(1)
Properties(2)
BRepGraphInc_Populate
Backend population pipeline for BRepGraphInc_Storage.
This class is part of the BRepGraphInc backend and is intended for backend maintenance, tests, and low-level infrastructure only. External code should enter through BRepGraph_Builder::Add(), which owns the public lifecycle, cache invalidation, and layer coordination.
Adapted from BRepGraph_Builder, but writes to incidence-table storage instead of Def/Usage two-layer storage. Entity structs carry forward child references directly (no separate Usage objects).
The population pipeline:
- Sequential hierarchy traversal (Compound/CompSolid/Solid/Shell)
- Parallel per-face geometry extraction
- Sequential registration with TShape deduplication
- Reverse index construction
Static methods(3)
- Perform(theStorage: BRepGraphInc_Storage, theShape: TopoDS_Shape, theParallel: boolean, theOptions?: BRepGraphInc_Populate_Options, theParamLayer?: BRepGraph_LayerParam, theRegularityLayer?: BRepGraph_LayerRegularity, theTmpAlloc?: NCollection_BaseAllocator): void
Build backend incidence storage from a
TopoDS_Shape.Parameters (7)theStorage—storage to populate (cleared first)theShape—root shapetheParallel—if true, face-level extraction runs in paralleltheOptions—optional post-pass controlstheParamLayer—optional point-rep layer to populatetheRegularityLayer—optional edge-regularity layer to populatetheTmpAlloc—optional allocator for temporary scratch data
- AppendFlattened(theStorage: BRepGraphInc_Storage, theShape: TopoDS_Shape, theParallel: boolean, theAppendedRoots: NCollection_DynamicArray_BRepGraph_NodeId, theOptions: BRepGraphInc_Populate_Options, theParamLayer: BRepGraph_LayerParam, theRegularityLayer: BRepGraph_LayerRegularity, theTmpAlloc: NCollection_BaseAllocator): void
Extend existing backend storage with additional shapes (no clear). Flattens hierarchy containers away; Solid/Shell/Compound/CompSolid inputs contribute appended face roots instead of container entities. Recomputes the built-in metadata layers from the populated storage.
Parameters (8)theStorage—storage to extendtheShape—shape to appendtheParallel—if true, face-level extraction runs in paralleltheAppendedRoots—collected root NodeIds for non-container shapes Mutated in place; read the updated value from this argument after the call.theOptions—optional post-pass controlstheParamLayertheRegularityLayertheTmpAlloc—optional allocator for temporary scratch data
- Append(theStorage: BRepGraphInc_Storage, theShape: TopoDS_Shape, theParallel: boolean, theOptions?: BRepGraphInc_Populate_Options, theParamLayer?: BRepGraph_LayerParam, theRegularityLayer?: BRepGraph_LayerRegularity, theTmpAlloc?: NCollection_BaseAllocator): void
Extend existing backend storage with additional shapes (no clear). Preserves the full shape hierarchy: Solid/Shell/Compound/CompSolid nodes are created alongside Face/Edge/Vertex nodes. Shapes already present in the storage (same TShape pointer) are deduplicated and not re-added.
Parameters (7)theStorage—storage to extendtheShape—shape to appendtheParallel—if true, face-level extraction runs in paralleltheOptions—optional post-pass controlstheParamLayertheRegularityLayertheTmpAlloc—optional allocator for temporary scratch data
BRepGraphInc_ProductDef
Constructors(1)
Instance methods(1)
- InitVectors(theAlloc: NCollection_BaseAllocator): voidParameters (1)
theAlloc
Properties(1)
BRepGraphInc_Reconstruct
Backend reconstruction helpers over incidence-table storage.
Converts BRepGraphInc_Storage entity data back into TopoDS shapes. This class is part of the BRepGraphInc backend; external callers should prefer BRepGraph::Shapes() so reconstruction stays behind the facade. Supports single-node and cached multi-face reconstruction with shared edge/vertex reuse via the Cache.
Static methods(3)
- Node(theStorage: BRepGraphInc_Storage, theNode: BRepGraph_NodeId, theParams: BRepGraph_LayerParam, theRegularities: BRepGraph_LayerRegularity): TopoDS_Shape
Reconstruct a
TopoDS_Shapefrom an entity node. Creates a local cache internally; shared vertices/edges are not reused across calls.Parameters (4)theStorage—incidence storagetheNode—entity node idtheParamstheRegularities
Returnsreconstructed shape
- Node(theStorage: BRepGraphInc_Storage, theNode: BRepGraph_NodeId, theCache: BRepGraphInc_Reconstruct_Cache, theParams: BRepGraph_LayerParam, theRegularities: BRepGraph_LayerRegularity): TopoDS_Shape
Reconstruct a
TopoDS_Shapewith a shared cache for sub-shape reuse. Vertices and edges already in theCache are returned directly.Parameters (5)theStorage—incidence storagetheNode—entity node idtheCache—shared cache for vertex/edge/face shapes Mutated in place; read the updated value from this argument after the call.theParamstheRegularities
Returnsreconstructed shape
- FaceWithCache(theStorage: BRepGraphInc_Storage, theFaceId: BRepGraph_FaceId, theCache: BRepGraphInc_Reconstruct_Cache, theParams: BRepGraph_LayerParam, theRegularities: BRepGraph_LayerRegularity): TopoDS_Shape
Reconstruct a face with shared edge/vertex cache for multi-face contexts.
Parameters (5)theStorage—incidence storagetheFaceId—face entity idtheCache—shared cache for edge and vertex shapes Mutated in place; read the updated value from this argument after the call.theParamstheRegularities
Returnsreconstructed face shape
BRepGraphInc_Reconstruct_Cache
Constructors(1)
Instance methods(3)
- Seek(theNode: BRepGraph_NodeId): TopoDS_ShapeParameters (1)
theNode
- Bind(theNode: BRepGraph_NodeId, theShape: TopoDS_Shape): voidParameters (2)
theNodetheShape
- IsBound(theNode: BRepGraph_NodeId): booleanParameters (1)
theNode
Properties(3)
BRepGraphInc_Reconstruct_Cache_TempScope
Constructors(1)
- Parameters (1)
theCache
BRepGraphInc_ReverseIndex
Backend reverse incidence indices for O(1) upward navigation.
Built from entity and reference-entry tables after population. Full ReverseIndex::Build() is used for initial construction, while builder-side mutations maintain the index incrementally through targeted bind/unbind operations and ReverseIndex::BuildDelta() for append workflows.
Two query tiers
Pointer-returning methods (e.g. WiresOfEdge() -> nullptr for empty) serve performance-critical backend code that avoids static-empty-vector overhead. Safe-reference methods (e.g. WiresOfEdgeRef() -> static empty vector) serve the public facade (TopoView delegates to Ref variants).
Constructors(1)
Instance methods(56)
- SetAllocator(theAlloc: NCollection_BaseAllocator): void
Set allocator for internal index tables.
Parameters (1)theAlloc
- Clear(): void
Clear all indices.
- Build(theStorage: BRepGraphInc_Storage): void
Rebuild all reverse indices from storage tables. Thin wrapper over the explicit-table overload retained for compatibility.
Parameters (1)theStorage
- Build(theVertices: NCollection_DynamicArray_BRepGraphInc_VertexDef, theEdges: NCollection_DynamicArray_BRepGraphInc_EdgeDef, theCoEdges: NCollection_DynamicArray_BRepGraphInc_CoEdgeDef, theWires: NCollection_DynamicArray_BRepGraphInc_WireDef, theFaces: NCollection_DynamicArray_BRepGraphInc_FaceDef, theShells: NCollection_DynamicArray_BRepGraphInc_ShellDef, theSolids: NCollection_DynamicArray_BRepGraphInc_SolidDef, theCompounds: NCollection_DynamicArray_BRepGraphInc_CompoundDef, theCompSolids: NCollection_DynamicArray_BRepGraphInc_CompSolidDef, theShellRefs: NCollection_DynamicArray_BRepGraphInc_ShellRef, theFaceRefs: NCollection_DynamicArray_BRepGraphInc_FaceRef, theWireRefs: NCollection_DynamicArray_BRepGraphInc_WireRef, theCoEdgeRefs: NCollection_DynamicArray_BRepGraphInc_CoEdgeRef, theSolidRefs: NCollection_DynamicArray_BRepGraphInc_SolidRef, theChildRefs: NCollection_DynamicArray_BRepGraphInc_ChildRef, theVertexRefs: NCollection_DynamicArray_BRepGraphInc_VertexRef): void
Rebuild all reverse indices from the entity and reference-entry tables. Edge-to-face index is derived from CoEdge.FaceDefId links.
Parameters (16)theVerticestheEdges—edge entity vector (for vertex-to-edge, edge-to-face)theCoEdges—coedge entity vector (for edge-to-coedge and edge-to-face)theWires—wire entity vector (parent validation for coedge refs)theFaces—face entity vector (parent validation for wire refs)theShells—shell entity vector (parent validation for face refs)theSolids—solid entity vector (parent validation for shell refs)theCompounds—compound entity vector (parent validation for child refs)theCompSolids—compsolid entity vector (parent validation for solid refs)theShellRefs—shell ref-entry table (solid -> shell reverse)theFaceRefs—face ref-entry table (shell -> face reverse)theWireRefs—wire ref-entry table (face -> wire reverse)theCoEdgeRefs—coedge ref-entry table (wire -> coedge/edge reverse)theSolidRefs—solid ref-entry table (compsolid -> solid reverse)theChildRefs—child ref-entry table (compound child reverse)theVertexRefs—vertex ref-entry table (edge vertex resolution)
- BuildDelta(theVertices: NCollection_DynamicArray_BRepGraphInc_VertexDef, theEdges: NCollection_DynamicArray_BRepGraphInc_EdgeDef, theCoEdges: NCollection_DynamicArray_BRepGraphInc_CoEdgeDef, theWires: NCollection_DynamicArray_BRepGraphInc_WireDef, theFaces: NCollection_DynamicArray_BRepGraphInc_FaceDef, theShells: NCollection_DynamicArray_BRepGraphInc_ShellDef, theSolids: NCollection_DynamicArray_BRepGraphInc_SolidDef, theCompounds: NCollection_DynamicArray_BRepGraphInc_CompoundDef, theCompSolids: NCollection_DynamicArray_BRepGraphInc_CompSolidDef, theShellRefs: NCollection_DynamicArray_BRepGraphInc_ShellRef, theFaceRefs: NCollection_DynamicArray_BRepGraphInc_FaceRef, theWireRefs: NCollection_DynamicArray_BRepGraphInc_WireRef, theCoEdgeRefs: NCollection_DynamicArray_BRepGraphInc_CoEdgeRef, theSolidRefs: NCollection_DynamicArray_BRepGraphInc_SolidRef, theChildRefs: NCollection_DynamicArray_BRepGraphInc_ChildRef, theVertexRefs: NCollection_DynamicArray_BRepGraphInc_VertexRef, theOldNbEdges: number, theOldNbWires: number, theOldNbFaces: number, theOldNbShells: number, theOldNbSolids: number, theOldNbCompounds: number, theOldNbCompSolids: number, theOldNbChildRefs: number, theOldNbSolidRefs: number): void
Incrementally update reverse indices for entities/ref-parents appended after a previous ReverseIndex::Build(). Only processes entities from the old counts to the current vector lengths and appended reference entries.
Parameters (25)theVerticestheEdgestheCoEdgestheWirestheFacestheShellstheSolidstheCompoundstheCompSolidstheShellRefstheFaceRefstheWireRefstheCoEdgeRefstheSolidRefstheChildRefstheVertexRefstheOldNbEdges—edge count before the append operationtheOldNbWires—wire count before the append operationtheOldNbFaces—face count before the append operationtheOldNbShells—shell count before the append operationtheOldNbSolids—solid count before the append operationtheOldNbCompounds—compound count before the append operationtheOldNbCompSolids—compsolid count before the append operationtheOldNbChildRefs—ChildRef count before the append operationtheOldNbSolidRefs—SolidRef count before the append operation
- BuildProductOccurrences(theOccurrences: NCollection_DynamicArray_BRepGraphInc_OccurrenceDef, theNbProducts: number): void
Build product-to-occurrences reverse index.
Parameters (2)theOccurrences—occurrence entity vectortheNbProducts—total number of products (for pre-sizing)
- WiresOfEdge(theEdgeId: BRepGraph_EdgeId): any
Return wire indices containing the given edge.
Parameters (1)theEdgeId
Return face indices containing the given edge (derived from CoEdge.FaceDefId links).
Parameters (1)theEdgeId
Return coedge indices referencing the given edge.
Parameters (1)theEdgeId
- NbFacesOfEdge(theEdgeId: BRepGraph_EdgeId): number
Return the number of faces incident to an edge - O(1). Derived directly from the edge-to-faces adjacency vector to keep a single source of truth.
Parameters (1)theEdgeId
Return edge indices incident to the given vertex.
Parameters (1)theVertexId
Return face indices containing the given wire.
Parameters (1)theWireId
- ShellsOfFace(theFaceId: BRepGraph_FaceId): any
Return shell indices containing the given face.
Parameters (1)theFaceId
- SolidsOfShell(theShellId: BRepGraph_ShellId): any
Return solid indices containing the given shell.
Parameters (1)theShellId
Return compound indices containing the given solid as a NodeInstance.
Parameters (1)theSolidId
Return compsolid indices containing the given solid as a SolidInstance.
Parameters (1)theSolidId
Return compound indices containing the given shell as a NodeInstance.
Parameters (1)theShellId
Return compound indices containing the given face as a NodeInstance.
Parameters (1)theFaceId
- CompoundsOfCompound(theCompoundId: BRepGraph_CompoundId): NCollection_DynamicArray_BRepGraph_CompoundId
Return compound indices containing the given compound as a NodeInstance.
Parameters (1)theCompoundId
- CompoundsOfCompSolid(theCompSolidId: BRepGraph_CompSolidId): NCollection_DynamicArray_BRepGraph_CompoundId
Return compound indices containing the given compsolid as a NodeInstance.
Parameters (1)theCompSolidId
Return compound indices containing the given wire as a NodeInstance. OCCT
TopoDS_Compoundcan legally hold atomic topology (wire / edge / vertex); these reverse maps round-trip that case.Parameters (1)theWireId
Return compound indices containing the given edge as a NodeInstance.
Parameters (1)theEdgeId
Return compound indices containing the given vertex as a NodeInstance.
Parameters (1)theVertexId
- WiresOfCoEdge(theCoEdgeId: BRepGraph_CoEdgeId): any
Return wire indices containing the given coedge.
Parameters (1)theCoEdgeId
- OccurrencesOfProduct(theProductId: BRepGraph_ProductId): any
Return occurrence indices that reference the given product.
Parameters (1)theProductId
- WiresOfEdgeRef(theEdgeId: BRepGraph_EdgeId): any
Return wire indices containing the given edge (safe reference, never null).
Parameters (1)theEdgeId
Return face indices containing the given edge (safe reference, never null).
Parameters (1)theEdgeId
Return coedge indices referencing the given edge (safe reference, never null).
Parameters (1)theEdgeId
Return face indices containing the given wire (safe reference, never null).
Parameters (1)theWireId
Return edge indices incident to the given vertex (safe reference, never null).
Parameters (1)theVertexId
- ShellsOfFaceRef(theFaceId: BRepGraph_FaceId): any
Return shell indices containing the given face (safe reference, never null).
Parameters (1)theFaceId
- SolidsOfShellRef(theShellId: BRepGraph_ShellId): any
Return solid indices containing the given shell (safe reference, never null).
Parameters (1)theShellId
- Validate(theVertices: NCollection_DynamicArray_BRepGraphInc_VertexDef, theEdges: NCollection_DynamicArray_BRepGraphInc_EdgeDef, theCoEdges: NCollection_DynamicArray_BRepGraphInc_CoEdgeDef, theWires: NCollection_DynamicArray_BRepGraphInc_WireDef, theFaces: NCollection_DynamicArray_BRepGraphInc_FaceDef, theShells: NCollection_DynamicArray_BRepGraphInc_ShellDef, theSolids: NCollection_DynamicArray_BRepGraphInc_SolidDef, theCompounds: NCollection_DynamicArray_BRepGraphInc_CompoundDef, theCompSolids: NCollection_DynamicArray_BRepGraphInc_CompSolidDef, theShellRefs: NCollection_DynamicArray_BRepGraphInc_ShellRef, theFaceRefs: NCollection_DynamicArray_BRepGraphInc_FaceRef, theWireRefs: NCollection_DynamicArray_BRepGraphInc_WireRef, theCoEdgeRefs: NCollection_DynamicArray_BRepGraphInc_CoEdgeRef, theSolidRefs: NCollection_DynamicArray_BRepGraphInc_SolidRef, theChildRefs: NCollection_DynamicArray_BRepGraphInc_ChildRef, theVertexRefs: NCollection_DynamicArray_BRepGraphInc_VertexRef): boolean
Verify reverse index consistency against forward entity/reference-entry tables. For each forward ref (e.g., wire->edge), checks that the corresponding reverse entry exists (edge->wire). Intended for debug validation.
Parameters (16)theVerticestheEdgestheCoEdgestheWirestheFacestheShellstheSolidstheCompoundstheCompSolidstheShellRefstheFaceRefstheWireRefstheCoEdgeRefstheSolidRefstheChildRefstheVertexRefs
Returnstrue if all forward refs have matching reverse entries
- BindEdgeToWire(theEdgeId: BRepGraph_EdgeId, theWireId: BRepGraph_WireId): void
Register an edge as belonging to a wire (O(1) amortized).
Parameters (2)theEdgeIdtheWireId
- UnbindEdgeFromWire(theEdgeId: BRepGraph_EdgeId, theWireId: BRepGraph_WireId): void
Remove a wire from the edge-to-wire index for a given edge.
Parameters (2)theEdgeIdtheWireId
- ReplaceEdgeInWireMap(theOldEdgeId: BRepGraph_EdgeId, theNewEdgeId: BRepGraph_EdgeId, theWireId: BRepGraph_WireId): void
Replace an edge in the edge-to-wire index for a specific wire.
Parameters (3)theOldEdgeIdtheNewEdgeIdtheWireId
- BindVertexToEdge(theVertexId: BRepGraph_VertexId, theEdgeId: BRepGraph_EdgeId): void
Register a vertex as incident to an edge (O(1) amortized, deduplicates).
Parameters (2)theVertexIdtheEdgeId
- UnbindVertexFromEdge(theVertexId: BRepGraph_VertexId, theEdgeId: BRepGraph_EdgeId): void
Remove an edge from the vertex-to-edge index for a given vertex.
Parameters (2)theVertexIdtheEdgeId
- BindEdgeToCoEdge(theEdgeId: BRepGraph_EdgeId, theCoEdgeId: BRepGraph_CoEdgeId): void
Register a coedge as referencing an edge (O(1) amortized).
Parameters (2)theEdgeIdtheCoEdgeId
- UnbindEdgeFromCoEdge(theEdgeId: BRepGraph_EdgeId, theCoEdgeId: BRepGraph_CoEdgeId): void
Remove a coedge from the edge-to-coedge index for a given edge.
Parameters (2)theEdgeIdtheCoEdgeId
- BindCoEdgeToWire(theCoEdgeId: BRepGraph_CoEdgeId, theWireId: BRepGraph_WireId): void
Register a coedge as belonging to a wire (O(1) amortized).
Parameters (2)theCoEdgeIdtheWireId
- UnbindCoEdgeFromWire(theCoEdgeId: BRepGraph_CoEdgeId, theWireId: BRepGraph_WireId): void
Remove a wire from the coedge-to-wire index for a given coedge.
Parameters (2)theCoEdgeIdtheWireId
- BindEdgeToFace(theEdgeId: BRepGraph_EdgeId, theFaceId: BRepGraph_FaceId): void
Register an edge as belonging to a face (O(1) amortized, deduplicates).
Parameters (2)theEdgeIdtheFaceId
- UnbindEdgeFromFace(theEdgeId: BRepGraph_EdgeId, theFaceId: BRepGraph_FaceId): void
Remove a face from the edge-to-face index for a given edge.
Parameters (2)theEdgeIdtheFaceId
- BindWireToFace(theWireId: BRepGraph_WireId, theFaceId: BRepGraph_FaceId): void
Register a wire as belonging to a face (O(1) amortized, deduplicates).
Parameters (2)theWireIdtheFaceId
- UnbindWireFromFace(theWireId: BRepGraph_WireId, theFaceId: BRepGraph_FaceId): void
Remove a face from the wire-to-face index for a given wire.
Parameters (2)theWireIdtheFaceId
- BindFaceToShell(theFaceId: BRepGraph_FaceId, theShellId: BRepGraph_ShellId): void
Register a face as belonging to a shell (O(1) amortized, deduplicates).
Parameters (2)theFaceIdtheShellId
- UnbindFaceFromShell(theFaceId: BRepGraph_FaceId, theShellId: BRepGraph_ShellId): void
Remove a shell from the face-to-shell index for a given face.
Parameters (2)theFaceIdtheShellId
- BindShellToSolid(theShellId: BRepGraph_ShellId, theSolidId: BRepGraph_SolidId): void
Register a shell as belonging to a solid (O(1) amortized, deduplicates).
Parameters (2)theShellIdtheSolidId
- UnbindShellFromSolid(theShellId: BRepGraph_ShellId, theSolidId: BRepGraph_SolidId): void
Remove a solid from the shell-to-solid index for a given shell.
Parameters (2)theShellIdtheSolidId
- BindSolidToCompSolid(theSolidId: BRepGraph_SolidId, theCompSolidId: BRepGraph_CompSolidId): void
Register a solid as belonging to a compsolid (O(1) amortized, deduplicates).
Parameters (2)theSolidIdtheCompSolidId
- UnbindSolidFromCompSolid(theSolidId: BRepGraph_SolidId, theCompSolidId: BRepGraph_CompSolidId): void
Remove a compsolid from the solid-to-compsolid index for a given solid.
Parameters (2)theSolidIdtheCompSolidId
- BindCompoundChild(theChildDefId: BRepGraph_NodeId, theCompoundId: BRepGraph_CompoundId): void
Register a child node as belonging to a compound (dispatched on NodeKind). Routes to the appropriate per-kind compound reverse map. No-op for unsupported kinds.
Parameters (2)theChildDefIdtheCompoundId
- UnbindCompoundChild(theChildDefId: BRepGraph_NodeId, theCompoundId: BRepGraph_CompoundId): void
Remove a compound from the per-kind compound reverse map for a given child node.
Parameters (2)theChildDefIdtheCompoundId
- BindProductOccurrence(theOccurrenceId: BRepGraph_OccurrenceId, theProductId: BRepGraph_ProductId): void
Register an occurrence as referencing a product (O(1) amortized, deduplicates).
Parameters (2)theOccurrenceIdtheProductId
- UnbindProductOccurrence(theOccurrenceId: BRepGraph_OccurrenceId, theProductId: BRepGraph_ProductId): void
Remove an occurrence from the product-to-occurrences index for a given product.
Parameters (2)theOccurrenceIdtheProductId
BRepGraphInc_ShellDef
Constructors(1)
Instance methods(1)
- InitVectors(theAlloc: NCollection_BaseAllocator): voidParameters (1)
theAlloc
Properties(3)
BRepGraphInc_ShellRef
Constructors(1)
Properties(3)
BRepGraphInc_SolidDef
Constructors(1)
Instance methods(1)
- InitVectors(theAlloc: NCollection_BaseAllocator): voidParameters (1)
theAlloc
Properties(2)
BRepGraphInc_SolidRef
Constructors(1)
Properties(3)
BRepGraphInc_Storage
Constructors(1)
- constructor(theAlloc?: NCollection_BaseAllocator): BRepGraphInc_Storage
Construct with allocator for internal collections. If null, uses CommonBaseAllocator.
Parameters (1)theAlloc
Instance methods(157)
Return the allocator used for internal collections.
- NbVertices(): number
Returns the total number of vertex entities (including removed).
- NbEdges(): number
Returns the total number of edge entities (including removed).
- NbCoEdges(): number
Returns the total number of coedge entities (including removed).
- NbWires(): number
Returns the total number of wire entities (including removed).
- NbFaces(): number
Returns the total number of face entities (including removed).
- NbShells(): number
Returns the total number of shell entities (including removed).
- NbSolids(): number
Returns the total number of solid entities (including removed).
- NbCompounds(): number
Returns the total number of compound entities (including removed).
- NbCompSolids(): number
Returns the total number of compsolid entities (including removed).
- NbProducts(): number
Returns the total number of product entities (including removed).
- NbOccurrences(): number
Returns the total number of occurrence entities (including removed).
- NbShellRefs(): number
Returns the total number of shell reference entries (including removed).
- NbFaceRefs(): number
Returns the total number of face reference entries (including removed).
- NbWireRefs(): number
Returns the total number of wire reference entries (including removed).
- NbCoEdgeRefs(): number
Returns the total number of coedge reference entries (including removed).
- NbVertexRefs(): number
Returns the total number of vertex reference entries (including removed).
- NbSolidRefs(): number
Returns the total number of solid reference entries (including removed).
- NbChildRefs(): number
Returns the total number of child reference entries (including removed).
- NbOccurrenceRefs(): number
Returns the total number of occurrence reference entries (including removed).
- NbSurfaces(): number
Returns the total number of surface representations.
- NbCurves3D(): number
Returns the total number of 3D curve representations.
- NbCurves2D(): number
Returns the total number of 2D curve representations.
- NbTriangulations(): number
Returns the total number of triangulation representations.
- NbPolygons3D(): number
Returns the total number of 3D polygon representations.
- NbPolygons2D(): number
Returns the total number of 2D polygon representations.
- NbPolygonsOnTri(): number
Returns the total number of polygon-on-triangulation representations.
- NbActiveSurfaces(): number
Returns the number of active surface representations (excluding removed).
- NbActiveCurves3D(): number
Returns the number of active 3D curve representations (excluding removed).
- NbActiveCurves2D(): number
Returns the number of active 2D curve representations (excluding removed).
- NbActiveTriangulations(): number
Returns the number of active triangulation representations (excluding removed).
- NbActivePolygons3D(): number
Returns the number of active 3D polygon representations (excluding removed).
- NbActivePolygons2D(): number
Returns the number of active 2D polygon representations (excluding removed).
- NbActivePolygonsOnTri(): number
Returns the number of active polygon-on-triangulation representations (excluding removed).
- NbActiveVertices(): number
Returns the number of active vertex entities (excluding removed).
- NbActiveEdges(): number
Returns the number of active edge entities (excluding removed).
- NbActiveCoEdges(): number
Returns the number of active coedge entities (excluding removed).
- NbActiveWires(): number
Returns the number of active wire entities (excluding removed).
- NbActiveFaces(): number
Returns the number of active face entities (excluding removed).
- NbActiveShells(): number
Returns the number of active shell entities (excluding removed).
- NbActiveSolids(): number
Returns the number of active solid entities (excluding removed).
- NbActiveCompounds(): number
Returns the number of active compound entities (excluding removed).
- NbActiveCompSolids(): number
Returns the number of active compsolid entities (excluding removed).
- NbActiveProducts(): number
Returns the number of active product entities (excluding removed).
- NbActiveOccurrences(): number
Returns the number of active occurrence entities (excluding removed).
- NbActiveShellRefs(): number
Returns the number of active shell reference entries (excluding removed).
- NbActiveFaceRefs(): number
Returns the number of active face reference entries (excluding removed).
- NbActiveWireRefs(): number
Returns the number of active wire reference entries (excluding removed).
- NbActiveCoEdgeRefs(): number
Returns the number of active coedge reference entries (excluding removed).
- NbActiveVertexRefs(): number
Returns the number of active vertex reference entries (excluding removed).
- NbActiveSolidRefs(): number
Returns the number of active solid reference entries (excluding removed).
- NbActiveChildRefs(): number
Returns the number of active child reference entries (excluding removed).
- NbActiveOccurrenceRefs(): number
Returns the number of active occurrence reference entries (excluding removed).
- MarkRemoved(theNodeId: BRepGraph_NodeId): boolean
Mark an entity node as removed and decrement its active counter once.
Parameters (1)theNodeId—typed entity id
Returnstrue if the node transitioned from active to removed
- MarkRemovedRef(theRefId: BRepGraph_RefId): boolean
Mark a reference entry as removed and decrement its active counter once.
Parameters (1)theRefId—typed reference id
Returnstrue if the ref transitioned from active to removed
- MarkRemovedRep(theRepId: BRepGraph_RepId): boolean
Mark a representation entry as removed and decrement its active counter once.
Parameters (1)theRepId—typed representation id
Returnstrue if the representation transitioned from active to removed
Returns the surface representation at the given typed id.
Parameters (1)theRep—typed surface representation id
Returns the 3D curve representation at the given typed id.
Parameters (1)theRep—typed curve-3D representation id
Returns the 2D curve representation at the given typed id.
Parameters (1)theRep—typed curve-2D representation id
Returns the triangulation representation at the given typed id.
Parameters (1)theRep—typed triangulation representation id
Returns the 3D polygon representation at the given typed id.
Parameters (1)theRep—typed polygon-3D representation id
Returns the 2D polygon representation at the given typed id.
Parameters (1)theRep—typed polygon-2D representation id
Returns the polygon-on-triangulation representation at the given typed id.
Parameters (1)theRep—typed polygon-on-triangulation representation id
Returns a mutable reference to the surface representation at the given typed id.
Parameters (1)theRep—typed surface representation id
Returns a mutable reference to the 3D curve representation at the given typed id.
Parameters (1)theRep—typed curve-3D representation id
Returns a mutable reference to the 2D curve representation at the given typed id.
Parameters (1)theRep—typed curve-2D representation id
Returns a mutable reference to the triangulation representation at the given typed id.
Parameters (1)theRep—typed triangulation representation id
Returns a mutable reference to the 3D polygon representation at the given typed id.
Parameters (1)theRep—typed polygon-3D representation id
Returns a mutable reference to the 2D polygon representation at the given typed id.
Parameters (1)theRep—typed polygon-2D representation id
Returns a mutable reference to the polygon-on-triangulation representation at the given typed id.
Parameters (1)theRep—typed polygon-on-triangulation representation id
Appends a new surface representation slot and returns its typed id.
Appends a new 3D curve representation slot and returns its typed id.
Appends a new 2D curve representation slot and returns its typed id.
Appends a new triangulation representation slot and returns its typed id.
Appends a new 3D polygon representation slot and returns its typed id.
Appends a new 2D polygon representation slot and returns its typed id.
Appends a new polygon-on-triangulation representation slot and returns its typed id.
- Vertex(theVertex: BRepGraph_VertexId): BRepGraphInc_VertexDef
Returns the vertex entity at the given typed id.
Parameters (1)theVertex—typed vertex id
- Edge(theEdge: BRepGraph_EdgeId): BRepGraphInc_EdgeDef
Returns the edge entity at the given typed id.
Parameters (1)theEdge—typed edge id
- CoEdge(theCoEdge: BRepGraph_CoEdgeId): BRepGraphInc_CoEdgeDef
Returns the coedge entity at the given typed id.
Parameters (1)theCoEdge—typed coedge id
- Wire(theWire: BRepGraph_WireId): BRepGraphInc_WireDef
Returns the wire entity at the given typed id.
Parameters (1)theWire—typed wire id
- Face(theFace: BRepGraph_FaceId): BRepGraphInc_FaceDef
Returns the face entity at the given typed id.
Parameters (1)theFace—typed face id
- Shell(theShell: BRepGraph_ShellId): BRepGraphInc_ShellDef
Returns the shell entity at the given typed id.
Parameters (1)theShell—typed shell id
- Solid(theSolid: BRepGraph_SolidId): BRepGraphInc_SolidDef
Returns the solid entity at the given typed id.
Parameters (1)theSolid—typed solid id
- Compound(theCompound: BRepGraph_CompoundId): BRepGraphInc_CompoundDef
Returns the compound entity at the given typed id.
Parameters (1)theCompound—typed compound id
- CompSolid(theCompSolid: BRepGraph_CompSolidId): BRepGraphInc_CompSolidDef
Returns the compsolid entity at the given typed id.
Parameters (1)theCompSolid—typed comp-solid id
- Product(theProduct: BRepGraph_ProductId): BRepGraphInc_ProductDef
Returns the product entity at the given typed id.
Parameters (1)theProduct—typed product id
- Occurrence(theOccurrence: BRepGraph_OccurrenceId): BRepGraphInc_OccurrenceDef
Returns the occurrence entity at the given typed id.
Parameters (1)theOccurrence—typed occurrence id
- ShellRef(theRefId: BRepGraph_ShellRefId): BRepGraphInc_ShellRef
Returns the shell reference entry at the given typed id.
Parameters (1)theRefId
- FaceRef(theRefId: BRepGraph_FaceRefId): BRepGraphInc_FaceRef
Returns the face reference entry at the given typed id.
Parameters (1)theRefId
- WireRef(theRefId: BRepGraph_WireRefId): BRepGraphInc_WireRef
Returns the wire reference entry at the given typed id.
Parameters (1)theRefId
- CoEdgeRef(theRefId: BRepGraph_CoEdgeRefId): BRepGraphInc_CoEdgeRef
Returns the coedge reference entry at the given typed id.
Parameters (1)theRefId
- VertexRef(theRefId: BRepGraph_VertexRefId): BRepGraphInc_VertexRef
Returns the vertex reference entry at the given typed id.
Parameters (1)theRefId
- SolidRef(theRefId: BRepGraph_SolidRefId): BRepGraphInc_SolidRef
Returns the solid reference entry at the given typed id.
Parameters (1)theRefId
- ChildRef(theRefId: BRepGraph_ChildRefId): BRepGraphInc_ChildRef
Returns the child reference entry at the given typed id.
Parameters (1)theRefId
Returns the occurrence reference entry at the given typed id.
Parameters (1)theRefId
- ChangeVertex(theVertex: BRepGraph_VertexId): BRepGraphInc_VertexDef
Returns a mutable reference to the vertex entity at the given typed id.
Parameters (1)theVertex—typed vertex id
- ChangeEdge(theEdge: BRepGraph_EdgeId): BRepGraphInc_EdgeDef
Returns a mutable reference to the edge entity at the given typed id.
Parameters (1)theEdge—typed edge id
- ChangeCoEdge(theCoEdge: BRepGraph_CoEdgeId): BRepGraphInc_CoEdgeDef
Returns a mutable reference to the coedge entity at the given typed id.
Parameters (1)theCoEdge—typed coedge id
- ChangeWire(theWire: BRepGraph_WireId): BRepGraphInc_WireDef
Returns a mutable reference to the wire entity at the given typed id.
Parameters (1)theWire—typed wire id
- ChangeFace(theFace: BRepGraph_FaceId): BRepGraphInc_FaceDef
Returns a mutable reference to the face entity at the given typed id.
Parameters (1)theFace—typed face id
- ChangeShell(theShell: BRepGraph_ShellId): BRepGraphInc_ShellDef
Returns a mutable reference to the shell entity at the given typed id.
Parameters (1)theShell—typed shell id
- ChangeSolid(theSolid: BRepGraph_SolidId): BRepGraphInc_SolidDef
Returns a mutable reference to the solid entity at the given typed id.
Parameters (1)theSolid—typed solid id
- ChangeCompound(theCompound: BRepGraph_CompoundId): BRepGraphInc_CompoundDef
Returns a mutable reference to the compound entity at the given typed id.
Parameters (1)theCompound—typed compound id
- ChangeCompSolid(theCompSolid: BRepGraph_CompSolidId): BRepGraphInc_CompSolidDef
Returns a mutable reference to the compsolid entity at the given typed id.
Parameters (1)theCompSolid—typed comp-solid id
- ChangeProduct(theProduct: BRepGraph_ProductId): BRepGraphInc_ProductDef
Returns a mutable reference to the product entity at the given typed id.
Parameters (1)theProduct—typed product id
- ChangeOccurrence(theOccurrence: BRepGraph_OccurrenceId): BRepGraphInc_OccurrenceDef
Returns a mutable reference to the occurrence entity at the given typed id.
Parameters (1)theOccurrence—typed occurrence id
- ChangeShellRef(theRefId: BRepGraph_ShellRefId): BRepGraphInc_ShellRef
Returns a mutable reference to the shell reference entry at the given typed id.
Parameters (1)theRefId
- ChangeFaceRef(theRefId: BRepGraph_FaceRefId): BRepGraphInc_FaceRef
Returns a mutable reference to the face reference entry at the given typed id.
Parameters (1)theRefId
- ChangeWireRef(theRefId: BRepGraph_WireRefId): BRepGraphInc_WireRef
Returns a mutable reference to the wire reference entry at the given typed id.
Parameters (1)theRefId
Returns a mutable reference to the coedge reference entry at the given typed id.
Parameters (1)theRefId
Returns a mutable reference to the vertex reference entry at the given typed id.
Parameters (1)theRefId
- ChangeSolidRef(theRefId: BRepGraph_SolidRefId): BRepGraphInc_SolidRef
Returns a mutable reference to the solid reference entry at the given typed id.
Parameters (1)theRefId
- ChangeChildRef(theRefId: BRepGraph_ChildRefId): BRepGraphInc_ChildRef
Returns a mutable reference to the child reference entry at the given typed id.
Parameters (1)theRefId
Returns a mutable reference to the occurrence reference entry at the given typed id.
Parameters (1)theRefId
Appends a new vertex entity and returns its typed id.
Appends a new edge entity and returns its typed id.
Appends a new coedge entity and returns its typed id.
Appends a new wire entity and returns its typed id.
Appends a new face entity and returns its typed id.
Appends a new shell entity and returns its typed id.
Appends a new solid entity and returns its typed id.
Appends a new compound entity and returns its typed id.
Appends a new compsolid entity and returns its typed id.
Appends a new product entity and returns its typed id.
Appends a new occurrence entity and returns its typed id.
Appends a new shell reference entry and returns its typed id.
Appends a new face reference entry and returns its typed id.
Appends a new wire reference entry and returns its typed id.
Appends a new coedge reference entry and returns its typed id.
Appends a new vertex reference entry and returns its typed id.
Appends a new solid reference entry and returns its typed id.
Appends a new child reference entry and returns its typed id.
Appends a new occurrence reference entry and returns its typed id.
- UIDs(theKind: BRepGraph_NodeId_Kind): NCollection_DynamicArray_BRepGraph_UID
Return the per-kind UID vector for a given Kind.
Parameters (1)theKind
- ChangeUIDs(theKind: BRepGraph_NodeId_Kind): NCollection_DynamicArray_BRepGraph_UID
Return the per-kind UID vector for a given Kind (mutable).
Parameters (1)theKind
- ResetAllUIDs(): void
Clear all UID vectors (reset lengths to 0).
- BaseRef(theRefId: BRepGraph_RefId): BRepGraphInc_BaseRef
Return the BaseRef portion of any ref entry by generic RefId.
Parameters (1)theRefId—generic reference identifier
Returnsconst reference to the BaseRef base of the ref entry
- ChangeBaseRef(theRefId: BRepGraph_RefId): BRepGraphInc_BaseRef
Return the mutable BaseRef portion of any ref entry by generic RefId.
Parameters (1)theRefId—generic reference identifier
Returnsmutable reference to the BaseRef base of the ref entry
- RefUIDs(theKind: BRepGraph_RefId_Kind): NCollection_DynamicArray_BRepGraph_RefUID
Return the per-kind transitional reference UID vector.
Parameters (1)theKind
- ChangeRefUIDs(theKind: BRepGraph_RefId_Kind): NCollection_DynamicArray_BRepGraph_RefUID
Return the per-kind transitional reference UID vector (mutable).
Parameters (1)theKind
- ResetAllRefUIDs(): void
Clear all transitional reference UID vectors.
Returns the reverse index for parent-child relationship queries.
Returns a mutable reference to the reverse index.
- FindNodeByTShape(theTShape: TopoDS_TShape): BRepGraph_NodeId
Returns the node id bound to the given TShape, or nullptr if not bound.
Parameters (1)theTShape
- HasTShapeBinding(theTShape: TopoDS_TShape): boolean
Returns true if the given TShape is bound to a node.
Parameters (1)theTShape
- BindTShapeToNode(theTShape: TopoDS_TShape, theNodeId: BRepGraph_NodeId): void
Binds the given TShape to a node id.
Parameters (2)theTShapetheNodeId
- FindOriginal(theNodeId: BRepGraph_NodeId): TopoDS_Shape
Back-reference to the source
TopoDS_Shapea node was built from. Only populated during Build; absent bindings are a valid state.
Returns the original shape for the given node id, or nullptr if not bound.Parameters (1)theNodeId
- HasOriginal(theNodeId: BRepGraph_NodeId): boolean
Returns true if the given node id has an original shape binding.
Parameters (1)theNodeId
- BindOriginal(theNodeId: BRepGraph_NodeId, theShape: TopoDS_Shape): void
Binds the given node id to its original shape.
Parameters (2)theNodeIdtheShape
- UnBindOriginal(theNodeId: BRepGraph_NodeId): void
Removes the original shape binding for the given node id.
Parameters (1)theNodeId
- GetIsDone(): boolean
- SetIsDone(theVal: boolean): voidParameters (1)
theVal
- Clear(): void
Clear all storage.
- BuildReverseIndex(): void
Build reverse indices from entity and relationship tables. Call after population is complete.
- BuildDeltaReverseIndex(theOldNbEdges: number, theOldNbWires: number, theOldNbFaces: number, theOldNbShells: number, theOldNbSolids: number, theOldNbCompounds: number, theOldNbCompSolids: number, theOldNbChildRefs: number, theOldNbSolidRefs: number): void
Incrementally update reverse indices for entities appended after a previous
BuildReverseIndex(). Only processes entities and refs from the old counts to the current vector lengths - the caller must snapshot ChildRef / SolidRef counts before any Append so this remains O(delta), not O(total).Parameters (9)theOldNbEdgestheOldNbWirestheOldNbFacestheOldNbShellstheOldNbSolidstheOldNbCompoundstheOldNbCompSolidstheOldNbChildRefstheOldNbSolidRefs
- ValidateReverseIndex(): boolean
Debug: verify reverse index consistency against entity tables.
Returnstrue if all forward refs have matching reverse entries
BRepGraphInc_SurfaceRep
Constructors(1)
Properties(1)
BRepGraphInc_TriangulationRep
Constructors(1)
Properties(1)
BRepGraphInc_VertexDef
Constructors(1)
Instance methods(1)
- InitVectors(argNo0: NCollection_BaseAllocator): voidParameters (1)
argNo0
Properties(2)
BRepGraphInc_VertexRef
Constructors(1)
Properties(3)
BRepGraphInc_WireDef
Constructors(1)
Instance methods(1)
- InitVectors(theAlloc: NCollection_BaseAllocator): voidParameters (1)
theAlloc