Commit Graph

4 Commits

Author SHA1 Message Date
Brett Lawson a359870582 difftest: lazy NURB const-make cases for sphere, torus and surface of revolution
Build each kind without MakeNurb in the shim and in Rust, run the const natural-domain
query that makes the NURB lazily, then point/normal evaluations at the domain corners,
Copy, == and Transform, comparing has-NURB, the NURB data and evaluations. Cases cover
swap/inside-out, partial domains, sphere caps ending at a pole, a torus with minor radius
equal to and above the major radius, and revolutions about an axis touched or crossed by
the generator.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SdcgEtgaA54W2nr8dK1EYp
2026-10-28 07:44:44 +01:00
Thijs Damsma b444b16fea surface: Sphere/Torus TrimWithDomain (#76)
SmSphere and SmTorus inherit SmSurfOfRevolution::TrimWithDomain; its
virtual ConvertUVFromNURBSToSTEP (UpdateAnalyticalDomain) and
CreateIsoParametricCurve (MakeNurb, Reparameterize, RebuildPolarConverter)
now reach the sphere/torus overrides through trim_with_domain_using, and
SurfaceKind::Sphere/Torus dispatch to it instead of a dispatch gap.
surface.sphere and surface.torus difftest a TrimDomain op.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H9QwJFBTKLZ9FFK3nVd1X4
2026-10-22 07:35:08 +02:00
jijinbei 4418ba3204 shim: share flg(SmBoolean), put_ivl and put_mat through sc_sm.h
Adds the three helpers to sc_sm.h, copied from the per-shim copies they
replace, and switches 19 shims to the shared flg/put_mat/put_vec/put_ivl/st/
put_dom. Shims touched by open PRs are left alone.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 11:00:12 +09:00
froglemonade2 aad4181c50 surface.sphere: difftest unit, C++ shim, read_from_db wiring; mark green
Add the surface.sphere difftest runner (800 generated cases, 0 deferred,
--perturb 800/800), C++ shim and FFI binding. Wire Sphere::read_from_db into
Surface::read_from_db and the ssi engine deferral, clamp the sqrt in
circle_radius, and point read_from_db_unported_types at the still-unported
offset surface type. plan/modules.toml: surface.sphere green.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-15 13:22:23 +02:00