Expand description
HoldCurve: a solved, sampled drop-vs-range curve read by interpolation, and the
sampled-trajectory helpers it is built on (MBA-1361/MBA-1362).
Promoted out of the CLI binary (0.33.0 decision-support Task 8) so a library consumer can
reuse it without the cli feature – starting with the constant-drop range-card work
HoldCurve’s own doc comment already nominates as its next consumer. No feature gate:
must compile for wasm32 (pure math over already-resolved inputs; no fs, no clap – CLI
argument resolution, InverseSolverLoadArgs::resolve, stays in main.rs and constructs
HoldCurveLoad there).
Structs§
- Card
Truncation - A card that stopped short of the rows it was asked for, in the caller’s DISPLAY unit (MBA-1476 follow-up).
- Hold
Curve - A solved, sampled drop-vs-range curve expressed in ANGULAR units (MBA-1361/MBA-1362).
- Hold
Curve Load - Everything one sampled hold curve needs, already in METRIC (MBA-1361/MBA-1362).
- Hold
Point - One point read off a
HoldCurve, in the ANGULAR units a hold is expressed in. - Sampled
Flight - A solved flight: the sampled grid, plus how far the bullet ACTUALLY got (MBA-1476).
Enums§
- Mark
ToRange Outcome - Result of inverting the hold curve for one mark subtension (MBA-1362).
Constants§
- CARD_
SAMPLE_ INTERVAL_ M - Distance interval every DOPE-card surface samples its trajectory on, meters (~1 yard).
Functions§
- build_
trajectory_ components - Shared: build BallisticInputs + atmosphere + wind from common parameters (all in metric)
- card_
sample_ max_ range_ m - How far out a card’s trajectory must be solved and sampled, given the furthest row it
asked for (
end_m). Meters in, meters out. - range_
not_ sampled_ message - The one wording every card surface uses when its solved flight supplies NONE of the rows asked for (MBA-1476) — stated in the caller’s display unit, because that is the unit the request named the range in.
- run_
sampled_ flight - Run a trajectory and return its sampled points AND its terminal reach at the given zero
angle. See
SampledFlightfor why the reach is carried out alongside the samples. - run_
sampled_ trajectory - Run a trajectory and return sampled points at the given zero angle.
- sample_
at_ range - Read a sampled trajectory at an EXACT range by linear interpolation between the two samples that bracket it (MBA-1476).