Incrementally compute approximate-geodesic-based furthest-point sampling of the mesh until NumPoints samples have been found, then compute local geodesic patches (eg approximate surface voronoi diagaram). Optionally weight geodesic-distance computation, which will produce different patch shapes. If StartingGroups are provided, then new groups are constrained to subdivide existing groups, ie none of the new groups will cross the boundaries of the StartingGroups