# BREP_RANSAC
`BREP_RANSAC` is the kernel-free analytic recognition leaf prepared for the
BREP repository. Its Rust library target is `brep_ransac`.
It recognizes plane, cylinder, cone, sphere, and torus carriers in neutral
indexed triangle meshes. It supports generic recognition, known-type fitting,
initial guesses, constrained fitting, and exact-candidate validation. Results
contain neutral carrier parameters, support IDs, residuals, observability,
confidence evidence, and diagnostics; they contain no BREP topology.
Build and test it independently from the repository root:
```bash
cargo test --manifest-path BREP_RANSAC/Cargo.toml
```
The main entry points are `recognize_surfaces` and
`recognize_surfaces_with_unresolved` for mesh-wide recognition, plus
`reconstruct_surface` / `reconstruct_surface_from_vertices` for a selected support.
`synthetic` supplies generated test geometry, and `export_debug_obj` writes recognition
debug geometry.
The package is published as version 0.1.2. Its explicit include list
packages source, integration tests, benchmarks, examples, the manifest, README, and
license; corpora, caches, oracle tools, generated results, and repository-level validation
infrastructure are excluded. The shipped tests are self-contained. Runtime dependencies
are `serde` and `web-time`; the latter provides monotonic phase timing on native targets
and in browser workers. `criterion` and `serde_json` are development dependencies.