Struct intersect2d::algorithm::AlgorithmData [−][src]
Contains the data the sweepline intersection algorithm needs to operate. Most of these containers are stored inside an Option. This makes it possible to take() them and make the borrow-checker happy.
Fields
ignore_end_point_intersections: bool
Implementations
impl<T> AlgorithmData<T> where
T: Float + Display + ToPrimitive + CoordNum + PartialOrd + AbsDiffEq + UlpsEq,
T::Epsilon: Copy,
[src]
T: Float + Display + ToPrimitive + CoordNum + PartialOrd + AbsDiffEq + UlpsEq,
T::Epsilon: Copy,
pub fn get_sweepline_pos(&self) -> &Coordinate<T>
[src]
pub fn get_lines(&self) -> &Vec<Line<T>>
[src]
pub fn get_results(&self) -> &Option<RBMap<SiteEventKey<T>, Vec<usize>>>
[src]
pub fn get_site_events(&self) -> &Option<RBMap<SiteEventKey<T>, SiteEvent<T>>>
[src]
pub fn get_active_lines(&self) -> &Option<FnvHashSet<usize>>
[src]
pub fn get_intersection_calls(&self) -> usize
[src]
pub fn with_stop_at_first_intersection(&mut self, value: bool)
[src]
pub fn with_ignore_end_point_intersections(&mut self, value: bool)
[src]
pub fn with_lines<'a, I>(&mut self, data: I) where
T: 'a,
I: Iterator<Item = &'a Line<T>>,
[src]
T: 'a,
I: Iterator<Item = &'a Line<T>>,
Add data to the input lines. Sort the end point according to the order of SiteEventKey. Populate the event queue Todo add error when data contains NaN (for example)
pub fn compute(&mut self, interactive: bool) -> bool
[src]
handles input event, returns true when done If interactive is set, the method will handle only one event for each call
Trait Implementations
impl<T> Default for AlgorithmData<T> where
T: Float + Display + ToPrimitive + CoordNum + PartialOrd + AbsDiffEq + UlpsEq,
T::Epsilon: Copy,
[src]
T: Float + Display + ToPrimitive + CoordNum + PartialOrd + AbsDiffEq + UlpsEq,
T::Epsilon: Copy,
Auto Trait Implementations
impl<T> RefUnwindSafe for AlgorithmData<T> where
T: RefUnwindSafe,
[src]
T: RefUnwindSafe,
impl<T> Send for AlgorithmData<T> where
T: Send,
[src]
T: Send,
impl<T> Sync for AlgorithmData<T> where
T: Sync,
[src]
T: Sync,
impl<T> Unpin for AlgorithmData<T> where
T: Unpin,
[src]
T: Unpin,
impl<T> UnwindSafe for AlgorithmData<T> where
T: UnwindSafe,
[src]
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,