mourner/delaunator-rs

Fast 2D Delaunay triangulation in Rust. A port of Delaunator.

253

stars

51

commits

Rust

primary language

May 12, 2026

updated

docs.rs/delaunator
algorithms
delaunay-triangulation
geometry
rust
spatial
Browse cluster: Delaunay Triangulation Libraries

README

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):

pointstime
10016.478µs
1,000277.64µs
10,0003.753ms
100,00063.627ms
1,000,000898.78ms
10,000,00011.857s

Contributors

mourner

32 commits

RReverser

5 commits

andreesteve

5 commits

mourner/delaunator-rs

Fast 2D Delaunay triangulation in Rust. A port of Delaunator.

253

stars

51

commits

Rust

primary language

May 12, 2026

updated

docs.rs/delaunator
algorithms
delaunay-triangulation
geometry
rust
spatial
Browse cluster: Delaunay Triangulation Libraries

README

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):

pointstime
10016.478µs
1,000277.64µs
10,0003.753ms
100,00063.627ms
1,000,000898.78ms
10,000,00011.857s

Contributors

mourner

32 commits

RReverser

5 commits

andreesteve

5 commits

Languages

Rust

100.0%