7 releases (3 stable)

1.0.2 Mar 21, 2023
1.0.1 Oct 31, 2021
0.2.1 Jun 10, 2021
0.2.0 Sep 15, 2018
0.1.1 Sep 14, 2018

#1355 in Algorithms

Download history 1400/week @ 2024-12-15 1027/week @ 2024-12-22 1020/week @ 2024-12-29 1524/week @ 2025-01-05 1270/week @ 2025-01-12 1166/week @ 2025-01-19 1153/week @ 2025-01-26 1123/week @ 2025-02-02 777/week @ 2025-02-09 892/week @ 2025-02-16 1013/week @ 2025-02-23 1268/week @ 2025-03-02 1200/week @ 2025-03-09 1067/week @ 2025-03-16 1190/week @ 2025-03-23 982/week @ 2025-03-30

4,497 downloads per month
Used in 13 crates (9 directly)

ISC license

96KB
460 lines

delaunator-rs

An incredibly fast and robust Rust library for Delaunay triangulation of 2D points. A port of Delaunator.

delaunator on Crates.io Tests

Documentation

Example

use delaunator::{Point, triangulate};

let points = vec![
    Point { x: 0., y: 0. },
    Point { x: 1., y: 0. },
    Point { x: 1., y: 1. },
    Point { x: 0., y: 1. },
];

let result = triangulate(&points);

println!("{:?}", result.triangles); // [0, 2, 1, 0, 3, 2]

Performance

Results for 3.1 GHz Intel Core i7 on a Macbook Pro 15'' (2017):

points time
100 16.478µs
1,000 277.64µs
10,000 3.753ms
100,000 63.627ms
1,000,000 898.78ms
10,000,000 11.857s

Dependencies

~480KB