solidcore

Units / nurbs

nurbs.b_spline_curve_p3 partial

Layer
13
Upstream lines
1,187
Functions
9
Rust module
nurbs::b_spline_curve::p3

Source: crates/solidcore/src/nurbs/b_spline_curve/p3.rs

Upstream: source/SMLib/src/SmBSplineCurve.cpp

Notes

difftest partial: 2195 cases, 2036 passed, 159 deferred (curve.curve_p5 159) after curve.curve_p8 wired SmCurve::GlobalCurveIntersect (TrimGap); difftest partial: 2195 cases, 1995 passed, 200 deferred (curve.curve_p7 98, curve.curve_p8 56, curve.curve_p4 46) after curve.curve_cache co-ported SmCurve::IsLine; difftest partial: 2195 cases, 1836 passed, 359 deferred (curve.curve_p5 188, curve.curve_p7 69, curve.curve_p8 56, curve.curve_p4 46) after curve.curve_p2 wired its stubs (was 966 deferred, curve.curve_p2 734); 9 fns; largest: SmBSplineCurve::AssertValid, SmBSplineCurve::JoinWith, SmBSplineCurve::TrimGap, SmBSplineCurve::IsSegmentLine; cycle back-edges (call into later units; stub or co-port): curve.curve_p2(6), curve.line(3), curve.curve_p4(1), curve.curve_p7(1), curve.curve_p8(1); unit-SCC #22 (220 units); 317 upstream test entry points reach this unit; after curve.curve_p4 (SmCurve::AssertValid wired): 2195 cases, 2023 pass, 172 deferred (curve.curve_p7 116, curve.curve_p8 56); after curve.curve_p7 (GlobalPropertyAnalysis wired): 2195 cases, 2023 pass, 172 deferred (curve.curve_p5 116, curve.curve_p8 56)

Difftest

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

Blocked by

Unported unitDeferred cases
curve.curve_p2 green6

Report JSON (per-case results)

Dependencies

Depends on: geom.assert_array green geom.axis2_placement green geom.extent1d green geom.geom_utility_p1 green geom.object partial geom.solution_array partial geom.tol green geom.vector3d green nurbs.b_spline_curve_n_lib green nurbs.b_spline_curve_p1 green nurbs.b_spline_curve_p2 green

Soft dependencies: geom.context green geom.extent3d green geom.vector2d green nlib.geom green nlib.math green

Dependents: curve.ellipse_p1 green curve.line green

Soft dependents: blend.fillet_corner_p3 todo blend.fillet_custom_solver partial blend.fillet_standard_solver_p1 claimed curve.composite_curve_p1 green curve.curve_p5 partial intersect.surface_intersector_p4 partial nurbs.b_spline_surface_p2 partial primitive.primitive_creation_p2 todo primitive.primitive_creation_p3 todo surface.surf_of_extrusion_p1 green surface.surf_of_revolution_p1 green surface.surface_cache_p1 green sweep.rotational_sweep_geometry partial topology.brep_p5 claimed

Upstream functions

Upstream functionDefined atLinesRust (from the file header)
SmBSplineCurve::CreateByScaleTransRotSmBSplineCurve.cpp:144757[BSplineCurve::create_by_scale_trans_rot]
SmBSplineCurve::HasInternalPoleSmBSplineCurve.cpp:370179[BSplineCurve::has_internal_pole]
SmBSplineCurve::IsSegmentLineSmBSplineCurve.cpp:4911108[BSplineCurve::is_segment_line], [SegmentLine]
SmBSplineCurve::GetControlPointSmBSplineCurve.cpp:505223[BSplineCurve::control_point]
SmBSplineCurve::IsOnPlaneSmBSplineCurve.cpp:543378[BSplineCurve::is_on_plane], [OnPlane]
SmBSplineCurve::JoinWithSmBSplineCurve.cpp:5517149[BSplineCurve::join_with]
SmBSplineCurve::SubdivideAtDiscontinuitySmBSplineCurve.cpp:637150[BSplineCurve::subdivide_at_discontinuity]
SmBSplineCurve::TrimGapSmBSplineCurve.cpp:6870143[BSplineCurve::trim_gap], [GapFix]
SmBSplineCurve::AssertValidSmBSplineCurve.cpp:7612500[BSplineCurve::assert_valid]
Module file-header table (9 rows)
RustUpstream
[BSplineCurve::create_by_scale_trans_rot]CreateByScaleTransRot
[BSplineCurve::has_internal_pole]HasInternalPole
[BSplineCurve::is_segment_line], [SegmentLine]IsSegmentLine
[BSplineCurve::control_point]GetControlPoint
[BSplineCurve::is_on_plane], [OnPlane]IsOnPlane
[BSplineCurve::join_with]JoinWith
[BSplineCurve::subdivide_at_discontinuity]SubdivideAtDiscontinuity
[BSplineCurve::trim_gap], [GapFix]TrimGap
[BSplineCurve::assert_valid]AssertValid

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