Struct boostvoronoi::sync_diagram::SyncVoronoiDiagram[][src]

pub struct SyncVoronoiDiagram<I1, F1> where
    I1: InputType + Neg<Output = I1>,
    F1: OutputType + Neg<Output = F1>, 
{ pub cells: Vec<VoronoiCell<I1, F1>>, pub vertices: Vec<VoronoiVertex<I1, F1>>, pub edges: Vec<VoronoiEdge<I1, F1>>, }

! See https://www.boost.org/doc/libs/1_75_0/libs/polygon/doc/voronoi_diagram.htm Sync version of the boostvoronoi::diagram::VoronoiDiagram struct. This is useful when traversing the diagram in a multi threaded environment.

Fields

cells: Vec<VoronoiCell<I1, F1>>vertices: Vec<VoronoiVertex<I1, F1>>edges: Vec<VoronoiEdge<I1, F1>>

Implementations

impl<I1, F1> SyncVoronoiDiagram<I1, F1> where
    I1: InputType + Neg<Output = I1>,
    F1: OutputType + Neg<Output = F1>, 
[src]

pub fn cells(&self) -> &Vec<VoronoiCell<I1, F1>>[src]

Returns a reference to the list of cells

pub fn edge_rot_next_iterator(
    &self,
    edge_id: Option<VoronoiEdgeIndex>
) -> EdgeRotNextIterator<'_, I1, F1>

Notable traits for EdgeRotNextIterator<'s, I1, F1>

impl<'s, I1, F1> Iterator for EdgeRotNextIterator<'s, I1, F1> where
    I1: InputType + Neg<Output = I1>,
    F1: OutputType + Neg<Output = F1>, 
type Item = VoronoiEdgeIndex;
[src]

Returns an edge iterator, the edges will all originate at the same vertex as ‘edge_id’. ‘edge_id’ will be the first edge returned by the iterator.

pub fn edge_rot_next(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<Option<VoronoiEdgeIndex>, BvError>
[src]

Returns a pointer to the rotation next edge over the starting point of the half-edge.

pub fn edge_rot_prev(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<Option<VoronoiEdgeIndex>, BvError>
[src]

Returns a pointer to the rotation previous edge over the starting point of the half-edge.

pub fn edge_get_next_err(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<VoronoiEdgeIndex, BvError>
[src]

Returns the next edge or an error

pub fn edge_get_prev_err(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<VoronoiEdgeIndex, BvError>
[src]

Returns the previous edge or an BvError if it does not exist

pub fn edge_get_twin_err(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<VoronoiEdgeIndex, BvError>
[src]

Returns the twin edge as a Result or a BvError if it does not exists

pub fn edge_is_finite(&self, edge_id: VoronoiEdgeIndex) -> Result<bool, BvError>[src]

Returns true if the edge is finite (segment, parabolic arc). Returns false if the edge is infinite (ray, line).

pub fn edge_is_infinite(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<bool, BvError>
[src]

Returns true if the edge is infinite (ray, line). Returns false if the edge is finite (segment, parabolic arc).

pub fn edges(&self) -> &Vec<VoronoiEdge<I1, F1>>[src]

pub fn edge_get(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<&VoronoiEdge<I1, F1>, BvError>
[src]

pub fn edge_get_mut(
    &mut self,
    edge_id: VoronoiEdgeIndex
) -> Result<&mut VoronoiEdge<I1, F1>, BvError>
[src]

pub fn edge_get_vertex0(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<Option<VoronoiVertexIndex>, BvError>
[src]

Returns the vertex0 of the edge

pub fn edge_get_vertex1(
    &self,
    edge_id: VoronoiEdgeIndex
) -> Result<Option<VoronoiVertexIndex>, BvError>
[src]

Returns the vertex1 of the edge

pub fn cell_get(
    &self,
    cell_id: VoronoiCellIndex
) -> Result<&VoronoiCell<I1, F1>, BvError>
[src]

pub fn vertices(&self) -> &Vec<VoronoiVertex<I1, F1>>[src]

Returns a reference to all of the vertices

pub fn vertex_get(
    &self,
    vertex_id: VoronoiVertexIndex
) -> Result<&VoronoiVertex<I1, F1>, BvError>
[src]

pub fn vertex_get_mut(
    &mut self,
    vertex_id: VoronoiVertexIndex
) -> Result<&mut VoronoiVertex<I1, F1>, BvError>
[src]

Trait Implementations

impl<I1: Debug, F1: Debug> Debug for SyncVoronoiDiagram<I1, F1> where
    I1: InputType + Neg<Output = I1>,
    F1: OutputType + Neg<Output = F1>, 
[src]

impl<I1: Default, F1: Default> Default for SyncVoronoiDiagram<I1, F1> where
    I1: InputType + Neg<Output = I1>,
    F1: OutputType + Neg<Output = F1>, 
[src]

impl<I1, F1> From<VoronoiDiagram<I1, F1>> for SyncVoronoiDiagram<I1, F1> where
    I1: InputType + Neg<Output = I1>,
    F1: OutputType + Neg<Output = F1>, 
[src]

Auto Trait Implementations

impl<I1, F1> RefUnwindSafe for SyncVoronoiDiagram<I1, F1> where
    F1: RefUnwindSafe,
    I1: RefUnwindSafe

impl<I1, F1> Send for SyncVoronoiDiagram<I1, F1> where
    F1: Send,
    I1: Send

impl<I1, F1> Sync for SyncVoronoiDiagram<I1, F1> where
    F1: Sync,
    I1: Sync

impl<I1, F1> Unpin for SyncVoronoiDiagram<I1, F1> where
    F1: Unpin,
    I1: Unpin

impl<I1, F1> UnwindSafe for SyncVoronoiDiagram<I1, F1> where
    F1: UnwindSafe,
    I1: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.