Constrained triangulation