public WayPoint FindNearestPoint(Vector2 aPosition) { AntSorter <WayPoint> sorter = new AntSorter <WayPoint>(); WayPoint point; float dist; for (int i = 0, n = points.Count; i < n; i++) { point = points[i]; dist = AntMath.Distance(aPosition, point.position); if (dist <= linkRadius) { sorter.Add(point, dist); } } if (sorter.Count > 0) { sorter.Sort(AntSorterOrder.ASC); return(sorter[0]); } return(null); }