2010-11-19 7 views
1

Ich möchte einen zufälligen GeoPoint innerhalb von 50 Fuß von einem bestimmten GeoPoint erstellen. (Verwenden von SQL Server 2008 oder IPhone SDK)Erstellen Sie zufällig einen Geopoint innerhalb von 50 Fuß eines gegebenen Geopoint (Spatial SQL)

Kann ich nur eine Nummer zum langen & Lat hinzufügen, um dieses zufällige Geopoint zu erstellen?

Beispiel:

mylatdistance = Random(1,50) newlat = lat + mylatdistance 

oder

Ist das ein Spatial SQL/Bereich Problem? am Äquator

Dank

+0

Welche Verteilung möchten Sie? An einem beliebigen Ort in einem Kreiskreis von 50 Fuß gleichmäßig platziert? –

+0

Nur ein Gedanke; Auf dem iPhone können Sie den Kehrwert der Abstand zwischen zwei Punkten Funktionalität verwenden, um eine Position X Abstand entfernt zu bekommen? – KevinDTimm

+0

Mark-Jeder einzelne Punkt innerhalb + -50 Fuß Radius. – ActionFactory

Antwort

1

Dieser Ansatz sollte funktionieren, solange Sie die delta_longitude Werte um den Faktor 1/cos (Breitengrad) -Skala, seit dem 1. Breitengrad nur 1 Längengrad entspricht. Wenn Sie diese Skalierung nicht durchführen, wird Ihr zufälliges Ensemble von Punkten in der Längengrad-Dimension "gequetscht", wenn sich Ihr Mittelpunkt vom Äquator entfernt.

+0

Ich sehe. Danke Jim. Also kann ich dies als ein einfacheres mathematisches Problem behandeln - wenn ich die Länge skaliere, um die Krümmung zu kompensieren. Gr8 Beratung. Danke – ActionFactory