Generiert zufällige Koordinaten um einen Standort

Ich würde gerne eine Funktion akzeptiert eine geo-location (Latitude, Longitude) und generiert zufällige Sätze von Koordinaten, die um es herum, sondern nimmt auch diese Parameter als Teil der Berechnung:

  • Anzahl Der Zufälligen Koordinaten Um
  • Radius zu erzeugen, in
  • Min Abstand zwischen den zufälligen Koordinaten in Metern
  • Die root-Koordinaten zu erzeugen, die locations um ihn herum.

Beispiel dafür, wie die generation wäre:

Generiert zufällige Koordinaten um einen Standort

Was ist ein guter Ansatz um dies zu erreichen?

  • Zum Beispiel könnten Sie wählen Sie eine Regel - oder gleichmäßig verteilt radius mit vorgeschriebenen Mittelwert oder range und einer gleichmäßig verteilten Winkel.
  • Und dann mit einem brute-force-Methode zu überprüfen, den Abstand zwischen den Punkten 🙂
  • Ja, man konnte wählen Sie einen zufälligen Winkel und einen zufälligen radius. Aber immer die zufälligen Winkel nach rechts ist wohl schwierig. Könnte besser sein, zu wählen (innerhalb der Grenzen, die gehören der Kreis) zufällige X-und Y-Werte, und diejenigen ausschließen, die nicht in den Kreis (sqrt(X2 + Y2)).
  • Wie viele Meter ist ein pixel?
  • Was ist der Zweck dieser Aufgabe? Eine Art von wissenschaftlicher Forschung? oder Visualisierung? Was ist die maximale Anzahl der Punkte? Was ist das wichtigste problem, das Sie derzeit konfrontiert? Die Geschwindigkeit?
  • Irgendwie, das Hauptproblem ist wirklich die Geschwindigkeit.
  • Der schwierige Teil des Problems ist die minimale Distanz. Erzeugung von Zufallszahlen Punkte machen es schwieriger und schwieriger zu finden, einen Punkt Befestigung. Vielleicht, wenn dies ist zufällig genug, Sie könnte die erste partition der Kreis im Quadrat in den Kreis, und platzieren Sie Punkte in zufälliger verfügbaren Plätze?

InformationsquelleAutor Ryan | 2011-10-01
Schreibe einen Kommentar