Function closestSilhouettePoint

Returns a point on the visibility silhouette of shape s closest to a query point p. If this point is not unique, an arbitrary choice is made. If no such point exists, the query point p is returned.