pub enum RadiusPolicy {
Circumscribed,
Inscribed,
Multiplier(f64),
Explicit(Angle),
}Expand description
How a search radius is derived from a Field.
Passed to Field::radius, or embedded in a Constraint
via Constraint::within.
§Example
use skymath::Angle;
use target_match::{Field, RadiusPolicy};
let field = Field::from_fov(Angle::from_degrees(2.0), Angle::from_degrees(1.0)).unwrap();
let circumscribed = field.radius(RadiusPolicy::Circumscribed);
let inscribed = field.radius(RadiusPolicy::Inscribed);
assert!(circumscribed.degrees() > inscribed.degrees(), "circumscribed bounds the whole frame");Variants§
Circumscribed
Half the diagonal — the circle that circumscribes the whole frame (default).
Inscribed
Half the shorter side — the circle inscribed within the frame.
Multiplier(f64)
A multiplier applied to the circumscribed radius.
Explicit(Angle)
An explicit radius, ignoring the field extent.
Trait Implementations§
Source§impl Clone for RadiusPolicy
impl Clone for RadiusPolicy
Source§fn clone(&self) -> RadiusPolicy
fn clone(&self) -> RadiusPolicy
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for RadiusPolicy
Source§impl Debug for RadiusPolicy
impl Debug for RadiusPolicy
Source§impl<'de> Deserialize<'de> for RadiusPolicy
impl<'de> Deserialize<'de> for RadiusPolicy
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for RadiusPolicy
impl PartialEq for RadiusPolicy
Source§impl Serialize for RadiusPolicy
impl Serialize for RadiusPolicy
impl StructuralPartialEq for RadiusPolicy
Auto Trait Implementations§
impl Freeze for RadiusPolicy
impl RefUnwindSafe for RadiusPolicy
impl Send for RadiusPolicy
impl Sync for RadiusPolicy
impl Unpin for RadiusPolicy
impl UnsafeUnpin for RadiusPolicy
impl UnwindSafe for RadiusPolicy
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
Mutably borrows from an owned value. Read more