voronoi

Crates.iovoronoi
lib.rsvoronoi
version0.1.4
sourcesrc
created_at2017-09-26 20:44:34.986273
updated_at2017-11-26 23:12:06.820303
descriptionA library to compute Voronoi diagrams, using Fortune's sweepline algorithm
homepage
repositoryhttps://github.com/petosegan/rust_voronoi
max_upload_size
id33252
size49,541
Crane Development (github:crane-foundation:crane-development)

documentation

https://docs.rs/voronoi/0.1.4/voronoi/

README

voronoi

This is a Rust implementation of Fortune's Linesweep algorithm for computing Voronoi diagrams.

Online Documentation

Usage

To use, add the following line to Cargo.toml under [dependencies]:

voronoi = "0.1.4"

or alternatively,

voronoi = { git = "https://github.com/petosegan/rust_voronoi.git" }

Example

extern crate voronoi;
use voronoi::{voronoi, Point, make_polygons};
const BOX_SIZE: f64 = 800.;
// ...
let vor_pts = vec![Point::new(0.0, 1.0), Point::new(2.0, 3.0), Point::new(10.0, 12.0)];
let vor_diagram = voronoi(vor_pts, BOX_SIZE);
let vor_polys = make_polygons(&vor_diagram);

TODO

  • Handle degeneracies in geometry.rs
  • Match DCEL faces to input points
  • Reimplement the data structures with memory management
  • Balance the trees
  • Benchmark against other implementations
Commit count: 71

cargo fmt