solidcore

Units / nurbs

nlib.crv_adv_p1 green

Layer
8
Upstream lines
2,031
Functions
7
Rust module
nurbs::crv_adv::p1

Source: crates/solidcore/src/nurbs/crv_adv/p1.rs

Upstream: source/SMLib/src/NL_CrvAdv.cpp

Notes

difftest: 2670 cases (670 fixtures on the six pt_TestFiles .smc curves, SM_API_test rectangle/hexagon edges and edge cases + 2000 generated), 2670 pass bit-for-bit, 0 deferred; 100,670-case run clean; no UNPORTED(nlib.crv_adv_p1) stubs to wire; ST_curxcdr/ST_curxcrr ported as Curve::extend_by_dist_at_depth / extend_by_param_dist_at_depth (wrappers N_CrvExtendBy* are in nlib.crv_adv_p2); in-place ST_curxcrr G2 recursion frees an uninitialised curve upstream (findings.md); 7 fns; largest: ST_curxcdr, ST_curxcrr, N_CrvEvalEvenSpacedPts, N_CrvGetMax2ndDeriv

Difftest

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

Blocked by

Nothing: no deferred cases.

Report JSON (per-case results)

Dependencies

Depends on: nlib.crv_basic green nlib.crv_nurb green nlib.crv_tool_p1 green nlib.geom green nlib.knots green nlib.math green

Soft dependencies: nlib.basis_basic green nlib.crv_geom green

Dependents: nlib.crv_adv_p2 green

Soft dependents: nlib.crv_approx green nlib.srf_adv_p3 green nlib.srf_adv_p5 green nurbs.b_spline_curve_n_lib green

Upstream functions

Upstream functionDefined atLinesRust (from the file header)
N_CrvEvalPtNL_CrvAdv.cpp:7463[Curve::eval_pt]
N_CrvDerivsAtKnotNL_CrvAdv.cpp:18166[Curve::derivs_at_knot]
N_CrvEvalEvenSpacedPtsNL_CrvAdv.cpp:391167[Curve::eval_even_spaced_pts], [EvenSpacedPts]
ST_curxcdrNL_CrvAdv.cpp:640958[Curve::extend_by_dist_at_depth]
N_CrvGetMax2ndDerivNL_CrvAdv.cpp:305974[Curve::max_2nd_deriv]
N_CrvPlanarOffsetGetDerivNL_CrvAdv.cpp:318455[Curve::planar_offset_derivs]
ST_curxcrrNL_CrvAdv.cpp:3540648[Curve::extend_by_param_dist_at_depth]
Module file-header table (11 rows)
RustUpstream
[Curve::eval_pt]N_CrvEvalPt
[Curve::derivs_at_knot]N_CrvDerivsAtKnot
[Curve::eval_even_spaced_pts], [EvenSpacedPts]N_CrvEvalEvenSpacedPts
[Curve::max_2nd_deriv]N_CrvGetMax2ndDeriv
[Curve::planar_offset_derivs]N_CrvPlanarOffsetGetDeriv
[Curve::extend_by_dist_at_depth]ST_curxcdr (file-private)
[Curve::extend_by_param_dist_at_depth]ST_curxcrr (file-private)
[CurveEnd]NL_START / NL_END
[Continuity]NL_G1 / NL_G2 / NL_CMAX
[KNOT_TOL]KN_TOL (file-private)
[MAX_DIST_DEPTH], [MAX_PARAM_DEPTH]recursion limits of ST_curxcdr / ST_curxcrr

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