Команда ReQL: distance
Синтаксис команды
geometry.distance(geometry) → number r.distance(geometry, geometry) → number
Описание
Вычисляет расстояние между точкой и другим геометрическим объектом. По крайней мере, один из указанных геометрических объектов должен быть точкой.
Доступны необязательные аргументы с distance:
-
geo_system: эллипсоид отсчета для географических координат. Возможные значения:WGS84(по умолчанию), стандартная модель Земли, илиunit_sphere, идеальная сфера радиусом 1 метр. -
unit: единицы измерения расстояния. Возможные значения:m(метр, по умолчанию),km(километр),mi(миля),nm(морская миля),ft(фут).
Если один из объектов является полигоном или линией, точка будет спроецирована на линию или полигон, предполагая модель идеальной сферы, перед вычислением расстояния (используя модель, заданную с geo_system). Вследствие этого, если полигон или линия чрезвычайно велики по сравнению с радиусом Земли, а расстояние вычисляется с использованием модели WGS84 по умолчанию, результаты distance следует считать приближенными из-за отклонения между эллипсоидальной и сферической моделями.
Пример: Вычисление расстояния между двумя точками на Земле в километрах.
r.distance(
r.point(-122.423246,37.779388),
r.point(-117.220406,32.719464)
).optArg("unit", "km").run(conn);
// Result:
734.1252496021841
© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/java/distance/