Currently these functions all use the viewport centroid as the reference point, but it would be nice to be able to specify the point explicitly.