pub struct TrajectoryRequest {Show 25 fields
pub bc_value: f64,
pub bc_type: String,
pub bullet_mass: f64,
pub muzzle_velocity: f64,
pub target_distance: f64,
pub zero_range: Option<f64>,
pub wind_speed: Option<f64>,
pub wind_angle: Option<f64>,
pub temperature: Option<f64>,
pub pressure: Option<f64>,
pub humidity: Option<f64>,
pub altitude: Option<f64>,
pub latitude: Option<f64>,
pub longitude: Option<f64>,
pub shot_direction: Option<f64>,
pub shooting_angle: Option<f64>,
pub twist_rate: Option<f64>,
pub bullet_diameter: Option<f64>,
pub bullet_length: Option<f64>,
pub ground_threshold: Option<f64>,
pub enable_weather_zones: Option<bool>,
pub enable_3d_weather: Option<bool>,
pub wind_shear_model: Option<String>,
pub weather_zone_interpolation: Option<String>,
pub sample_interval: Option<f64>,
}Expand description
Request structure for trajectory calculation via Flask API
Fields§
§bc_value: f64Ballistic coefficient value
bc_type: StringBC type: “G1” or “G7”
bullet_mass: f64Bullet mass in grams
muzzle_velocity: f64Muzzle velocity in m/s
target_distance: f64Target distance in meters
zero_range: Option<f64>Zero range in meters (optional)
wind_speed: Option<f64>Wind speed in m/s (optional)
wind_angle: Option<f64>Wind angle in degrees (optional)
temperature: Option<f64>Temperature in Celsius (optional)
pressure: Option<f64>Pressure in hPa/mbar (optional)
humidity: Option<f64>Humidity percentage 0-100 (optional)
altitude: Option<f64>Altitude in meters (optional)
latitude: Option<f64>Latitude for Coriolis calculations (optional)
longitude: Option<f64>Longitude for weather zones (optional)
shot_direction: Option<f64>Shot direction/azimuth in degrees (optional, 0=North, 90=East)
shooting_angle: Option<f64>Shooting angle in degrees (optional)
twist_rate: Option<f64>Barrel twist rate in inches per turn (optional)
bullet_diameter: Option<f64>Bullet diameter in meters (optional)
bullet_length: Option<f64>Bullet length in meters (optional)
ground_threshold: Option<f64>Ground threshold in meters (optional, negative = ignore ground impact)
enable_weather_zones: Option<bool>Enable weather zones (optional)
enable_3d_weather: Option<bool>Enable 3D weather corrections (optional)
wind_shear_model: Option<String>Wind shear model (optional: none, logarithmic, power_law, ekman_spiral)
weather_zone_interpolation: Option<String>Weather zone interpolation method (optional: linear, cubic, step)
sample_interval: Option<f64>Sample/trajectory step interval in meters (optional) Will be converted to yards for API as trajectory_step
Trait Implementations§
Source§impl Clone for TrajectoryRequest
impl Clone for TrajectoryRequest
Source§fn clone(&self) -> TrajectoryRequest
fn clone(&self) -> TrajectoryRequest
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TrajectoryRequest
impl Debug for TrajectoryRequest
Auto Trait Implementations§
impl Freeze for TrajectoryRequest
impl RefUnwindSafe for TrajectoryRequest
impl Send for TrajectoryRequest
impl Sync for TrajectoryRequest
impl Unpin for TrajectoryRequest
impl UnwindSafe for TrajectoryRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.