solidcore

Units / curve

curve.hermite_curve green

Layer
6
Upstream lines
383
Functions
18
Rust module
curve::hermite_curve

Source: crates/solidcore/src/curve/hermite_curve.rs

Upstream: source/SMLib/inc/SmHermiteCurve.h, source/SMLib/src/SmHermiteCurve.cpp

Notes

18 fns; largest: SmHermiteCurve::Evaluate, SmHermiteCurve::CalculateBoundingBox, SmHermiteCurve::ReadFromDB, SmHermiteCurve::GetKnots; cycle back-edges (call into later units; stub or co-port): curve.curve_p2(3), curve.curve_p5(3); unit-SCC #22 (220 units); 319 upstream test entry points reach this unit; difftest green: 2131 cases, 0 deferred, max_rel_err 0 (SmCurve::IsKindOf wired by curve.curve_p2)

Difftest

Cases
2,131
Passed
2,131
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: geom.extent1d green geom.extent3d green geom.pseudo_box green geom.vector3d green topology.database_io green

Soft dependencies: geom.geom_utility_p1 green geom.polar_box green geom.tol green

Dependents: blend.fillet_intersector claimed curve.curve_p2 green intersect.surface_intersector_p1 partial intersect.surface_tracer partial

Soft dependents: blend.fillet_geom_p1 claimed blend.fillet_geom_p5 todo blend.fillet_geom_p6 todo curve.curve_p1 partial curve.curve_p5 partial intersect.surface_drop_curve partial intersect.surface_drop_lib_p1 partial intersect.surface_intersector_p4 partial

Upstream functions

Upstream functionDefined atLinesRust (from the file header)
SmHermiteCurve::SmHermiteCurveSmHermiteCurve.h:681[HermiteCurve]
SmHermiteCurve::~SmHermiteCurveSmHermiteCurve.h:711Drop (implicit)
SmHermiteCurve::GetNaturalIntervalSmHermiteCurve.h:951[HermiteCurve::natural_interval]
SmHermiteCurve::GetClassStringSmHermiteCurve.h:1581[HermiteCurve::TYPE], [HermiteCurve::type_code], [HermiteCurve::type_string], [HermiteCurve::class_string]
SmHermiteCurve::GetTypeSmHermiteCurve.h:1581[HermiteCurve::TYPE], [HermiteCurve::type_code], [HermiteCurve::type_string], [HermiteCurve::class_string]
SmHermiteCurve::GetTypeStringSmHermiteCurve.h:1581[HermiteCurve::TYPE], [HermiteCurve::type_code], [HermiteCurve::type_string], [HermiteCurve::class_string]
SmHermiteCurve::SmHermiteCurveSmHermiteCurve.h:16717[HermiteCurve]
SmHermiteCurve::SmHermiteCurveSmHermiteCurve.h:19017[HermiteCurve]
SmHermiteCurve::GetBezierPointsSmHermiteCurve.h:21413[HermiteCurve::bezier_points]
SmHermiteCurve::operator==SmHermiteCurve.cpp:14528[HermiteCurve::approx_eq]
SmHermiteCurve::CalculateContinuitiesSmHermiteCurve.cpp:18019[HermiteCurve::calculate_continuities]
SmHermiteCurve::CalculateBoundingBoxSmHermiteCurve.cpp:20964[HermiteCurve::calculate_bounding_box]
SmHermiteCurve::EvaluateSmHermiteCurve.cpp:28389[HermiteCurve::evaluate]
SmHermiteCurve::EvaluatePointSmHermiteCurve.cpp:38220[HermiteCurve::evaluate_point]
SmHermiteCurve::ComputeChordHeightSmHermiteCurve.cpp:43622[HermiteCurve::chord_height]
SmHermiteCurve::GetKnotsSmHermiteCurve.cpp:50337[HermiteCurve::knots]
SmHermiteCurve::ReadFromDBSmHermiteCurve.cpp:73547[HermiteCurve::read_from_db]
SmHermiteCurve::IsKindOfSmHermiteCurve.cpp:7874[HermiteCurve::is_kind_of]
Module file-header table (17 rows)
RustUpstream
[HermiteCurve]SmHermiteCurve
[HermiteCurve::new]SmHermiteCurve(SmPoint3d, SmVector3d, SmPoint3d, SmVector3d, ULONG)
[HermiteCurve::from_2d]SmHermiteCurve(SmPoint2d, SmVector2d, SmPoint2d, SmVector2d, ULONG)
[HermiteCurve::empty], DefaultSmHermiteCurve(ULONG lDim = 3)
Drop (implicit)SmHermiteCurve::~SmHermiteCurve
[HermiteCurve::approx_eq]SmHermiteCurve::operator==
[HermiteCurve::calculate_continuities]SmHermiteCurve::CalculateContinuities
[HermiteCurve::calculate_bounding_box]SmHermiteCurve::CalculateBoundingBox
[HermiteCurve::chord_height]SmHermiteCurve::ComputeChordHeight
[HermiteCurve::bezier_points]SmHermiteCurve::GetBezierPoints
[HermiteCurve::natural_interval]SmHermiteCurve::GetNaturalInterval
[HermiteCurve::knots]SmHermiteCurve::GetKnots
[HermiteCurve::evaluate]SmHermiteCurve::Evaluate
[HermiteCurve::evaluate_point]SmHermiteCurve::EvaluatePoint
[HermiteCurve::read_from_db]SmHermiteCurve::ReadFromDB
[HermiteCurve::TYPE], [HermiteCurve::type_code], [HermiteCurve::type_string], [HermiteCurve::class_string]GetType, GetTypeString, GetClassString (SM_COMMON)
[HermiteCurve::is_kind_of]SmHermiteCurve::IsKindOf

Upstream tests reaching this unit

prog_test:my_test_extent3d, prog_test:my_test_vector2d, 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