Единицы радиуса Mongo DB для GeoQuerys

Я пытаюсь выяснить, какие единицы измерения используют запросы MongoDB...

У меня есть следующий запрос:

User.objects(address__point__geo_within_center=[[lat, long],maxDistance])

Я хотел бы использовать пользовательские счетчики, например. 10 метров в пределах maxDistance.

Но в документации (https://docs.mongodb.com/manual/reference/operator/query/center/#op._S_center) там написано

«Радиус круга, измеренный в единицах, используемых системой координат»

Я нигде не могу найти ссылку на "юниты"?

Я использую http://docs.mongoengine.org/guide/querying.html. для исх.

Что такое единицы?

Могу ли я установить единицы измерения?

Спасибо


person Lemex    schedule 23.07.2016    source источник


Ответы (1)


Вы пытаетесь использовать $center, который поддерживается только индексом 2d. Вы должны использовать индекс 2dshpere и его поддерживаемые операции. Для этого лучше всего начать с документов по 2dsphere.

Оператор геопространственного запроса $nearSphere должен делать то, что вы хочу. Обратите внимание, что оператор использует расстояние в метрах.

В документах mongoengine показан оператор geo_within_sphere, который, вероятно, вам нужен.

person helmy    schedule 23.07.2016