# Projects

Here you will find a non-exhaustive list of projects I worked on (during my studies or in my free time).

### Adaptive point cloud denoising

During my master's degree, I was interested in developing an algorithm to simulate anisotropic mean curvature flows on point clouds. We show that we can approximate the mean curvature vector by taking the gradient of the function that computes the volume of a union of balls centered at the points. The main application is the anisotropic smoothing of point clouds in 2D and 3D. The code can be found here and my master's thesis here.

### Procedural submarine generation and rendering

OpenGL and CUDA demo scene that features animated bubbles as a CUDA particle system with procedural sprites, animated seaweeds as a CUDA mass-spring system, animated water and real time procedural terrain and cave generation (using a shader-based marching cubes algorithm). The code can be found here.

*Team members:* Jocelyn Meyron, Jean-Baptiste Keck, Gauthier Zirnhelt

### Computational geometry in Haskell

I also developed a simple library in Haskell for doing computational geometry in 2D. It includes the following algorithms:

- convex hull,
- triangulation of a convex polygon,
- triangulation of a point set.

The code (along with a simple OpenGL viewer) can be found here.