Bestellung einer Liste von Punkten, die am nächsten zu einem bestimmten Punkt

Ich versuche, um eine Liste der Punkte, durch die Entfernung von einem gegebenen Punkt.

Ist die Anwendung zu finden, die nächsten Sehenswürdigkeiten (gps-Koordinaten), um Ihre aktuelle gps-Koordinate.

wenn du also folgenden code :

public static void main(String[] args) throws SQLException {
        ArrayList<Point2D.Double> points = new ArrayList<Point2D.Double>();

        Point2D.Double point1 = new Point2D.Double(1,1);
        Point2D.Double point2 = new Point2D.Double(2,2);
        Point2D.Double point3 = new Point2D.Double(3,3);

        points.add(point1);
        points.add(point2);
        points.add(point3);

        Point2D.Double myPoint = new Point2D.Double(4,4);

    }

Wenn ich einen Komparator zum Sortieren der Punkte-array bekomme ich eine schön geordnete Liste von Punkten, aber wie finde ich heraus, welche näher zu myPoint? und was sind die Entfernungen.

Sollte sicherlich meine Frage beantworten, aber für bonus-Punkte.. wie kann ich beschränken, das Ergebnis der Punkte zurück, wenn Sie geben eine maximale Entfernung. eg : Rückkehr eine geordnete Liste von Koordinaten, die nicht weiter als 100 Meilen.

  • Wie willst du den Abstand berechnet werden? Euklidische Distanz? Manhattan-Distanz? Und das sieht eher wie eine Hausaufgaben-Frage ...
  • Ich habe keine Ahnung, um ehrlich zu sein. Das ist alles neu für mich. und ich versichere Ihnen, es ist nicht Hausaufgaben.
InformationsquelleAutor Fuzz | 2014-03-27
Schreibe einen Kommentar