Crates.io | nlsn-delaunay |
lib.rs | nlsn-delaunay |
version | 0.1.1 |
source | src |
created_at | 2020-05-01 19:48:08.848923 |
updated_at | 2020-05-01 21:08:43.826327 |
description | Delaunay Triangulation and Refinement implementation through Bowyer Watson incremental insertion, conflict maps and ghost vertices. |
homepage | https://github.com/nelsonatgithub/nlsn-delaunay-refine |
repository | https://github.com/nelsonatgithub/nlsn-delaunay-refine |
max_upload_size | |
id | 236353 |
size | 93,697 |
This repository implements Delaunay Triangulation in Rust, according to this reference [1].
The major objective is to implement a 3D refinement in pure Rust, so that it may be portable to wasm-pack applications.
I've searched for some packages in open repositories. There were good jobs and efficient implementations (svew, mourner, tynril, ucarion, d-dorazio), but none are extensible to this purpose. Some lack documentation, some follow other approaches.
The approach is to implement Bowyer Watson
incremental insertion algorithm, with ghost triangles
and conflict graph
. This approach is extensible to 3D, given the proper handle to sliver exudation and smooth surfaces.
The choice for Rust
is due to its portability in sereral rust contexts and its integration to Javascript
through wasm-pack
.
- [x] 2D Delaunay Triangulation
- [ ] publishing release to crates.io
- [ ] 2D Delaunay Refinement
- [ ] 3D Delaunay Triangulation
- [ ] 3D Delaunay Refinement
In progress
At first, clone the repository, with a cargo environment. Fork it if you want. Run the tests. Read the code.
Open an issue with suggestions, code reviews, refactoring.