Devotd Github
NewDeveloper tools

tangency-labs/solidcore — Rust port of the NVIDIA SMLib B-rep kernel

tangency-labs/solidcore is a CAD solid modeling project that ports the NVIDIA SMLib B-rep kernel to Rust.

Repositorytangency-labs/solidcore ↗

tangency-labs/solidcore is a CAD solid modeling project that ports the NVIDIA SMLib B-rep kernel to Rust.

GitHub description: A Rust port of NVIDIA's SMLib B-rep kernel (CAD subset): safe, deterministic, wasm-compatible

stars
★ 255
Forks
101
Language
Rust
License
Apache-2.0
Read original source ↗View on GitHub ↗

tangency-labs/solidcore is a project porting the B-rep solid modeling kernel of NVIDIA SMLib to Rust. The repository description states the goal is a safe, deterministic kernel compatible with wasm. There is no latest release, and the provided information gives no version. So this is not the content of a specific version release but an introduction to the porting project currently under way. The described porting scope includes NURBS math, curve and surface geometry, B-rep topology structures, and Boolean operations.

According to the README summary, the math, NURBS and curve layers have been verified against the C++ implementation, while surfaces and topology structures are still work in progress. The research notes describe a method that checks unit-by-unit agreement with C++ at a relative error of 1e-9. Progress, difftest results and the upstream issue log are regenerated on every merge and managed on a public dashboard, which is also evidence for tracking the porting process. The first consumer is listed as SolidCraft. The repository license is Apache-2.0.

However, the README makes clear that the port has not yet reached the full scope and is not in a state that can be used end to end from the start. Surfaces and topology structures are still under way, and end features such as primitives, booleans and fillets do not exist yet either. The cross-check against the C++ implementation is therefore material for watching progress, not evidence that a finished geometry kernel could be replaced.