pub trait DelaunayLocateStructure<T: PointN>: Default + Clone {
    fn insert_vertex_entry(&mut self, entry: VertexEntry<T>);
    fn update_vertex_entry(&mut self, new_entry: VertexEntry<T>);
    fn remove_vertex_entry(&mut self, to_remove: &VertexEntry<T>);
    fn find_close_handle(&self, point: &T) -> FixedVertexHandle;
    fn new_query_result(&self, entry: FixedVertexHandle);
}
Expand description

Locate strategy for Delaunay triangulations.

Many operations of a Delaunay triangulation, like insertion, require to find the triangle that contains a certain point. For larger triangulations, this step tends to take most time, since it might be necessary to traverse large parts of the triangulation until the desired triangle is found. To mitigate this, spade offers different methods on how point are located. Each method implements this trait. It is recommended to choose from one of the given implementations.

Required Methods

source

fn insert_vertex_entry(&mut self, entry: VertexEntry<T>)

This method is called when a new vertex entry has been inserted.

source

fn update_vertex_entry(&mut self, new_entry: VertexEntry<T>)

This method is called when a vertex has been updated.

source

fn remove_vertex_entry(&mut self, to_remove: &VertexEntry<T>)

This method is callend when a vertex has been removed.

Returns, if possible, a vertex handle that is close to the given point.

Notifies the locate structure about the result of a query.

Implementors