Expand description
Bridge to the cadvm-geom C++/OCCT helper (Step 2: geometric diff).
The Rust core stays pure Rust: it shells out to a standalone C++ executable
(cadvm-geom, built from cpp/) and parses its JSON output. This keeps the
heavy Open CASCADE dependency isolated in a single subprocess with a narrow,
stable contract.
The binary is located via the CADVM_GEOM_BIN environment variable, falling
back to cadvm-geom on PATH.
Structs§
- BBox
- An axis-aligned bounding box.
- Face
Topo - Topological (face-to-face) classification counts.
- Geom
Diff - The geometric comparison of two STEP shapes, as reported by
cadvm-geom. - Mesh
- A flat-shaded triangle soup: every 9 floats in
positionsis one triangle, with a matching per-vertex normal innormals. - Mesh
Diff - Tessellated geometric diff produced by
cadvm-geom mesh. - Mesh
Layers - The mesh layers of a geometric diff, classified per face: the faces of the new part that are unchanged or added, and the faces of the old part that were removed.
- Piece
Metrics - Metrics for a boolean-result piece (added/removed/common).
- Shape
Metrics - Full metrics for one input shape.
Constants§
- ENV_
GEOM_ BIN - Environment variable pointing at the
cadvm-geomexecutable.
Functions§
- binary_
path - Resolve the path to the
cadvm-geombinary. - diff_
files - Run the geometric diff between two STEP files using the configured binary.
- diff_
files_ with - Run the geometric diff using an explicit binary path (used by tests).
- mesh_
files - Tessellate the geometric diff of two STEP files, writing the mesh JSON to
out_jsonand returning the parsed result. - mesh_
files_ with - Like
mesh_filesbut with an explicit binary path (used by tests).