private IList<Point> ReduceCandidatePoints(ConvexHull hull, IList<Point> candidates)
{
var center = Point.Center(hull.Points);
var maxDistance = this.searchRadius * 3;
return candidates.Where(p => Point.Distance2D(center, p) <= maxDistance).ToList();
}