OCCT3D About OCCT
Open CASCADE Technology Reference Manual 8.0.1
Loading...
Searching...
No Matches
Data Structures | Public Types | Public Member Functions | Static Public Member Functions
BRepGraphInc_Populate Class Reference

Backend topology/geometry population for BRepGraph. More...

#include <BRepGraphInc_Populate.hxx>

Data Structures

struct  Options
 Options controlling population. More...
 

Public Types

enum class  BuildStatus { Success , SuccessWithWarnings , Failed }
 Result of a build operation. More...
 

Public Member Functions

 BRepGraphInc_Populate ()=delete
 

Static Public Member Functions

static BuildStatus Perform (BRepGraph &theGraph, const TopoDS_Shape &theShape, bool theParallel, const Options &theOptions=Options())
 Build backend incidence storage from a TopoDS_Shape.
 
static BuildStatus AppendFlattened (BRepGraph &theGraph, const TopoDS_Shape &theShape, bool theParallel, NCollection_LinearVector< BRepGraph_NodeId > &theAppendedRoots, const Options &theOptions=Options())
 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.
 
static BuildStatus Append (BRepGraph &theGraph, const TopoDS_Shape &theShape, bool theParallel, const Options &theOptions=Options())
 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 with the same definition identity (TShape + Location, orientation ignored) are deduplicated and not re-added.
 

Detailed Description

Backend topology/geometry population for BRepGraph.

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::ShapesView::Add(), which owns the public lifecycle, cache invalidation, and layer coordination.

The builder stores forward child relations only. Reverse relations are rebuilt by BRepGraphInc_Storage after population.

Member Enumeration Documentation

◆ BuildStatus

Result of a build operation.

Enumerator
Success 

All faces built successfully.

SuccessWithWarnings 

Build completed with diagnostics, e.g. unbounded natural faces.

Failed 

Build failed (e.g., null shape, internal error).

Constructor & Destructor Documentation

◆ BRepGraphInc_Populate()

BRepGraphInc_Populate::BRepGraphInc_Populate ( )
delete

Member Function Documentation

◆ Append()

static BuildStatus BRepGraphInc_Populate::Append ( BRepGraph & theGraph,
const TopoDS_Shape & theShape,
bool theParallel,
const Options & theOptions = Options() )
static

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 with the same definition identity (TShape + Location, orientation ignored) are deduplicated and not re-added.

Parameters
[in,out]theGraphgraph whose storage to extend
[in]theShapeshape to append
[in]theParallelif true, face-level extraction runs in parallel
[in]theOptionsoptional post-pass controls
Returns
build status indicating success, warnings, or failure

◆ AppendFlattened()

static BuildStatus BRepGraphInc_Populate::AppendFlattened ( BRepGraph & theGraph,
const TopoDS_Shape & theShape,
bool theParallel,
NCollection_LinearVector< BRepGraph_NodeId > & theAppendedRoots,
const Options & theOptions = Options() )
static

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
[in,out]theGraphgraph whose storage to extend
[in]theShapeshape to append
[in]theParallelif true, face-level extraction runs in parallel
[out]theAppendedRootscollected root NodeIds for non-container shapes
[in]theOptionsoptional post-pass controls
Returns
build status indicating success, warnings, or failure

◆ Perform()

static BuildStatus BRepGraphInc_Populate::Perform ( BRepGraph & theGraph,
const TopoDS_Shape & theShape,
bool theParallel,
const Options & theOptions = Options() )
static

Build backend incidence storage from a TopoDS_Shape.

Parameters
[out]theGraphgraph whose storage to populate (cleared first)
[in]theShaperoot shape
[in]theParallelif true, face-level extraction runs in parallel
[in]theOptionsoptional post-pass controls
Returns
build status indicating success, warnings, or failure

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