Units / surface
surface.twist_volume green
- Layer
- 16
- Upstream lines
- 649
- Functions
- 25
- Rust module
surface::twist_volume
Source: crates/solidcore/src/surface/twist_volume.rs
Upstream: source/SMLib/inc/SmTwistVolume.h, source/SMLib/src/SmTwistVolume.cpp
Notes
difftest green: 1572 cases (default seeds), 1572 pass, 0 deferred (ReadFromDB wired by surface.volume_p2); max_rel_err 0; wiring dropped surface.volume_p1 deferred 99 -> 39. 25 fns; largest: SmTwistVolume::Evaluate, SmTwistVolume::EvaluateSimple, SmTwistVolume::EvaluateBoundingBoxSimple, SmTwistVolume::ReadFromDB; cycle back-edges (call into later units; stub or co-port): surface.volume_p2(1); unit-SCC #22 (220 units); 319 upstream test entry points reach this unit
Difftest
- Cases
- 1,572
- Passed
- 1,572
- 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.extent3d green geom.object partial geom.pseudo_box green geom.solution_array partial geom.vector3d green surface.volume_p1 green topology.database_io green
Soft dependencies: geom.extent1d green geom.tol green
Dependents: none
Soft dependents: surface.volume_p2 partial
Upstream functions
| Upstream function | Defined at | Lines | Rust (from the file header) |
|---|---|---|---|
SmTwistVolume::SmTwistVolume | SmTwistVolume.h:345 | 4 | [TwistVolume] |
SmTwistVolume::~SmTwistVolume | SmTwistVolume.h:367 | 1 | Drop (implicit) |
SmTwistVolume::GetNaturalParamDomain | SmTwistVolume.h:402 | 4 | [TwistVolume::natural_param_domain] |
SmTwistVolume::GetTwistOrigin | SmTwistVolume.h:411 | 1 | [Volume::twist_origin], [Volume::twist_axis], [Volume::twist_mid_dir], [Volume::twist_binormal] |
SmTwistVolume::GetTwistAxis | SmTwistVolume.h:412 | 1 | [Volume::twist_origin], [Volume::twist_axis], [Volume::twist_mid_dir], [Volume::twist_binormal] |
SmTwistVolume::GetTwistMidDir | SmTwistVolume.h:413 | 1 | [Volume::twist_origin], [Volume::twist_axis], [Volume::twist_mid_dir], [Volume::twist_binormal] |
SmTwistVolume::GetTwistBinormal | SmTwistVolume.h:414 | 1 | [Volume::twist_origin], [Volume::twist_axis], [Volume::twist_mid_dir], [Volume::twist_binormal] |
SmTwistVolume::GetClassString | SmTwistVolume.h:758 | 1 | [TWIST_VOLUME_TYPE], [is_kind_of], [Volume::type_code] and friends |
SmTwistVolume::GetType | SmTwistVolume.h:758 | 1 | [TWIST_VOLUME_TYPE], [is_kind_of], [Volume::type_code] and friends |
SmTwistVolume::GetTypeString | SmTwistVolume.h:758 | 1 | [TWIST_VOLUME_TYPE], [is_kind_of], [Volume::type_code] and friends |
SmTwistVolume::SmTwistVolume | SmTwistVolume.cpp:132 | 10 | [TwistVolume] |
SmTwistVolume::Copy | SmTwistVolume.cpp:148 | 12 | [Volume::copy] (twist arm) |
SmTwistVolume::operator== | SmTwistVolume.cpp:189 | 29 | [Volume::approx_eq] (twist arm), [TwistVolume::members_eq] |
SmTwistVolume::Evaluate | SmTwistVolume.cpp:772 | 132 | [TwistVolume::evaluate] |
SmTwistVolume::EvaluateSimple | SmTwistVolume.cpp:961 | 125 | [TwistVolume::evaluate_simple] |
SmTwistVolume::EvaluateBoundingBoxSimple | SmTwistVolume.cpp:1106 | 122 | [TwistVolume::evaluate_bounding_box_simple] |
SmTwistVolume::InvEvaluateGuessPointSimple | SmTwistVolume.cpp:1642 | 23 | [TwistVolume::inv_evaluate_guess_point_simple] |
SmTwistVolume::GlobalPointSolveSimple | SmTwistVolume.cpp:1672 | 43 | [TwistVolume::global_point_solve_simple] |
SmTwistVolume::LocalPointSolveSimple | SmTwistVolume.cpp:1722 | 47 | [TwistVolume::local_point_solve_simple] |
SmTwistVolume::IsBoundedSimple | SmTwistVolume.cpp:1777 | 6 | [TwistVolume::is_bounded_simple] |
SmTwistVolume::IsPointInParamDomainSimple | SmTwistVolume.cpp:1912 | 9 | [TwistVolume::is_point_in_param_domain_simple] |
SmTwistVolume::IsLineInParamDomainSimple | SmTwistVolume.cpp:1966 | 12 | [TwistVolume::is_line_in_param_domain_simple] |
SmTwistVolume::IsCurveInParamDomainSimple | SmTwistVolume.cpp:1991 | 11 | [TwistVolume::is_curve_in_param_domain_simple] |
SmTwistVolume::ReadFromDB | SmTwistVolume.cpp:2070 | 48 | [TwistVolume::read_from_db] |
SmTwistVolume::IsKindOf | SmTwistVolume.cpp:2554 | 4 | [TWIST_VOLUME_TYPE], [is_kind_of], [Volume::type_code] and friends |
Module file-header table (21 rows)
| Rust | Upstream |
|---|---|
[TwistVolume] | SmTwistVolume (members m_dTwistPeriodDist, m_dPeriodMinDist) |
[TwistVolume::new], Default | SmTwistVolume(const SmContext*) |
[TwistVolume::create] | SmTwistVolume(crContext, Origin, Axis, MidDir, PeriodDist, PeriodMinDist) |
[Volume::copy] (twist arm) | SmTwistVolume(const SmTwistVolume&, SmBoolean), Copy |
Drop (implicit) | ~SmTwistVolume |
[Volume::approx_eq] (twist arm), [TwistVolume::members_eq] | operator== |
[TwistVolume::natural_param_domain] | GetNaturalParamDomain |
[Volume::twist_origin], [Volume::twist_axis], [Volume::twist_mid_dir], [Volume::twist_binormal] | GetTwistOrigin, GetTwistAxis, GetTwistMidDir, GetTwistBinormal |
[TwistVolume::twist_period_dist], [TwistVolume::period_min_dist] | m_dTwistPeriodDist, m_dPeriodMinDist (GetTwistPeriodDist, GetPeriodMinDist) |
[TwistVolume::evaluate] | Evaluate |
[TwistVolume::evaluate_simple] | EvaluateSimple |
[TwistVolume::evaluate_bounding_box_simple] | EvaluateBoundingBoxSimple |
[TwistVolume::inv_evaluate_guess_point_simple] | InvEvaluateGuessPointSimple |
[TwistVolume::global_point_solve_simple] | GlobalPointSolveSimple |
[TwistVolume::local_point_solve_simple] | LocalPointSolveSimple |
[TwistVolume::is_bounded_simple] | IsBoundedSimple |
[TwistVolume::is_point_in_param_domain_simple] | IsPointInParamDomainSimple |
[TwistVolume::is_line_in_param_domain_simple] | IsLineInParamDomainSimple |
[TwistVolume::is_curve_in_param_domain_simple] | IsCurveInParamDomainSimple |
[TwistVolume::read_from_db] | ReadFromDB |
[TWIST_VOLUME_TYPE], [is_kind_of], [Volume::type_code] and friends | GetType, GetTypeString, GetClassString (SM_COMMON), 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