質問

私はmongodb地理空間クエリを使用しています - $near, geoNear, など - そして、私は回転する方法を知りたい dis の結果 geoNear コマンドだけでなく、 radius の議論 $within マイルやキロメートルのような読み取り可能なユニットへの照会。

役に立ちましたか?

解決

データが地理的座標(つまり、30.47921 n -121.45724 w)にある場合は、基礎となる投影を必要なユニットに変換する必要があります(距離を保持するプロジェクションを選択)、または座標の距離をマイルズのようなものに変換する必要があります。

計算にはHaversineフォーミュラを使用してくださいhttp://www.movable-type.co.uk/scripts/latlong.html

他のヒント

キロメートル単位でディス値にGeonearコマンドを使用すると、パラメーターが追加されます。

distanceMultiplier: (6371 * Math::PI / 180.0)

注MongoDBバージョン2.6.0を使用している場合、球状座標系の新しい動作が常にメートルで距離を返すことができるバグがあります(WGS84座標に基づいて)。

ドキュメントでは、それを与えると述べています $near Geojsonではなくレガシー座標のパラメーターは、まだラジアンを返す必要があります。これは新しいバージョンで修正されています。

バグレポート: バグ#13540

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top