Spec-Zone.ru › RethinkDB ruby

Команда ReQL: intersects

Синтаксис команды

sequence.intersects(geometry) → sequence
geometry.intersects(geometry) → bool
r.intersects(sequence, geometry) → sequence
r.intersects(geometry, geometry) → bool

Описание

Проверяет, пересекаются ли два геометрических объекта. При применении к последовательности геометрических объектов, intersects выполняет функцию фильтра, возвращая последовательность объектов из исходной последовательности, которые пересекаются с аргументом.

Пример: Находится ли point2 внутри круга радиусом 2000 метров вокруг point1?

> point1 = r.point(-117.220406,32.719464)
> point2 = r.point(-117.206201,32.725186)
> r.circle(point1, 2000).intersects(point2).run(conn)

true

Пример: Какие из объектов в списке парков пересекаются с circle1?

circle1 = r.circle([-117.220406,32.719464], 10, {:unit => 'mi'})
r.table('parks')('area').intersects(circle1).run(conn)

Команда intersects не может использовать геопространственный вторичный индекс. Если вы работаете с большими наборами данных, следует рассмотреть использование индекса и команды get_intersecting вместо intersects.

Связанные команды

  • includes
  • get_intersecting

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/ruby/intersects/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API