muhuk's blog

Nature, to Be Commanded, Must Be Obeyed

January 26, 2014

Announcing Triangulate, a Delanuay Triangulation Library for Clojure.

Triangulate is a clojure library for generating delanuay meshes for 2D point clouds. The goal is to find a solution that doesn’t have triangles with sharp corners. I have been working on this, whenever I found time, for the last few months and I think the public API is mature enough to release a first version.

It can triangulate 10 points in 350 miliseconds and 1000 points in 1.6 seconds. Not horribly slow but there is a lot of room for improvement. So I will be working on performance next.

Another feature is probably incremental processing, this is important especially for interactive applications. The algorithm is inserting points one by one internally, so it is inherently incremental. But it also uses a bounding mesh during calculations and then removes it before returning the result. I am interested in adding this feature just to see how it would work.

I didn’t know enough clojure when I started this project, and now I can at least say I have coded a dozen functions. I will definitely be doing more clojure personal projects. It is joyful to write clojure code.

If you have any questions, suggestions or corrections feel free to drop me a line.