solidcore

Units / intersect

intersect.curve_class_p8 partial

Layer
37
Upstream lines
1,900
Functions
5
Rust module
intersect::curve_class::p8

Source: crates/solidcore/src/intersect/curve_class/p8.rs

Upstream: source/SMLib/src/SmCurveClass.cpp

Notes

5 fns; largest: SmCurveClassification::Intersect3DDiscontinuities, SmCurveClassification::Intersect3DDiscontinuties, SmCurveClassification::IntersectUVDiscontinuties, SmCurveClassification::IntersectNaturalBounds; unit-SCC #22 (220 units); 317 upstream test entry points reach this unit; PR #152: 1127 cases (327 fixtures + 800 generated), 853 exact state comparisons, 0 failures, 274 deferred (curve.crv_on_surf 52, intersect.curve_class_p2 60, intersect.curve_class_p4 162). Maintainer integration wired sm_InsertSolutions (p5::insert_solutions; temporary boundaries named by ClassObject::temporary and resolved by a geometry wrapper) and SmSurface::GlobalCurveIntersect on the volume boundary planes (surface.surface_p8), emulating the WR-155 slot-4/5 shared buffer; the 12 wr155_* fixtures and every crossing insertion defer deeper to p2 InsertAt. Pre-wiring, all 785 perturbations were detected. 614 surface-operation state comparisons, 119 defined UV-volume rejections, 52 no-discontinuity volume early returns. 3D surface-discontinuity and discontinuous-volume solve branches remain uncertified (now behind p2/p4/crv_on_surf); finite extreme-input coverage and the WR-155 alias emulation recorded in findings. Incoming CrvOnSurf/CrvInVolume paths still stop at part-4 construction/context plumbing; no units promoted.

Difftest

Cases
1,127
Passed
853
Deferred
274
Failed
0
Both errored
0
Max rel. error
0.0
Tolerance
1e-09 rel.
Seeds
16

Blocked by

Unported unitDeferred cases
intersect.curve_class_p4 claimed162
intersect.curve_class_p2 claimed60
curve.crv_on_surf partial52

Report JSON (per-case results)

Dependencies

Depends on: curve.crv_on_surf partial curve.curve_p2 green geom.extent2d green geom.extent3d green geom.object partial geom.solution_array partial geom.tol green geom.vector2d green geom.vector3d green intersect.curve_class_p1 partial intersect.curve_class_p3 partial intersect.curve_class_p5 partial intersect.point_class partial surface.surface_p2 partial surface.volume_p1 green

Soft dependencies: curve.curve_p4 partial curve.curve_p8 green curve.line green geom.extent1d green nurbs.b_spline_surface_p1 green surface.plane_p1 partial surface.surface_p5 green surface.surface_p6 green surface.surface_p7 partial surface.surface_p8 partial surface.volume_p2 partial

Dependents: audit.recursion todo

Soft dependents: none

Upstream functions

Upstream functionDefined atLinesRust (from the file header)
SmCurveClassification::IntersectNaturalBoundsSmCurveClass.cpp:8462352[CurveClassification::intersect_natural_bounds]
SmCurveClassification::IntersectNaturalUVBoundsSmCurveClass.cpp:8829314[CurveClassification::intersect_natural_uv_bounds]
SmCurveClassification::IntersectUVDiscontinutiesSmCurveClass.cpp:9158391[CurveClassification::intersect_uv_discontinuities]
SmCurveClassification::Intersect3DDiscontinutiesSmCurveClass.cpp:9564393[CurveClassification::intersect_3d_discontinuities]
SmCurveClassification::Intersect3DDiscontinuitiesSmCurveClass.cpp:9970450[CurveClassification::intersect_volume_discontinuities]
Module file-header table (7 rows)
RustUpstream
[CurveClassification::intersect_natural_bounds]IntersectNaturalBounds
[CurveClassification::intersect_natural_uv_bounds]IntersectNaturalUVBounds
[CurveClassification::intersect_uv_discontinuities]IntersectUVDiscontinuties
[CurveClassification::intersect_3d_discontinuities]Intersect3DDiscontinuties (surface)
[CurveClassification::intersect_volume_discontinuities]Intersect3DDiscontinuities (volume)
insert_solutions (private)sm_InsertSolutions call adapter (part 5)
plane_intersections (private)SmSurface::GlobalCurveIntersect call on a boundary plane

Upstream tests reaching this unit

prog_test:my_test_surface_closest_point, prog_test:my_test_drop_point, prog_test:my_test_matrix, prog_test:my_test_reversed_line_join, SM_API_test:TestSmCreateRectangle, SM_API_test:TestSmCreateRegularPolygon