Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Сравнение пространственных объектов между собой






STDistance(< объект_сравнения>)

Возвращает расстояние между ближайшими точками сравниваемых объектов.

STEquals(< объект_сравнения>)

Выполняет сравнение пространственного объекта для которого вызвана функция с пространственным объектом < объект_сравнения>. Сравнение выполняется по типу объектов, размерам и положению в пространстве.

Возвращает 1 (True) если объекты равны и 0 (False) в обратном случае.

STDisjoint(< объект_взаимодействия>)

Проверяет отсутствие пересечений и касаний пространственного объекта для которого вызвана функция с пространственным объектом < объект_взаимодействия>.

Возвращает 1 (True) если < объект_взаимодействия> пространственно никак не накладывается, не пересекает и не касается данного объекта и0 (False) в обратном случае.

STTouches(< объект_касания>)

Проверяет, не касается ли < объект_касания> пространственного объекта, для которого вызвана функция.

Возвращает 1 (True) в случае касания и 0 (False) в обратном случае.

STWithin(< объект_вхождения>)

Проверяет объект для которого вызвана функция на вхождение в пространственный объект < объект_вхождения>. Пространственный объект считается входящим в другой объект если все его точки лежат внутри границ другого объекта.

Возвращает 1 (True) в случае вхождения и 0 (False) в обратном случае.

STOverlaps(< объект_перекрытия>)

Проверяет, не перекрывает ли пространственный объект для которого вызвана функция, пространственный объект < объект_перекрытия>. Считается что один пространственный объект перекрывает другой если часть его точек лежит внутри границ второго объекта, а часть - снаружи.

STCrosses(< объект_пересечения>)

Проверяет пересекает ли пространственный объект для которого вызвана функция, объект < объект_пересечения>. Пересекать другие объекты могут пространственные объекты типов LineString и Point.

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

Возвращает 1 (True) в случае пересечения и 0 (False) в обратном случае.

STIntersects(< объект_взаимодействия>)

Проверяет пространственный объект для которого вызвана функция на пространственное взаимодействие с с объектом < объект_взаимодействия>. Взаимодействием считается касание, перекрытие, пересечение одного объекта другим и включение одного объекта в другой.

Возвращает 1 (True) в случае взаимодействия и 0 (False) в обратном случае.

STContains(< объект_вхождения>)

Проверяет, не включает ли пространственный объект для которого вызвана функция в себя пространственный объект < объект_вхождения>.

Возвращает 1 (True) в случае вхождения и 0 (False) в обратном случае.

STRelate(< объект_сравнения>, < матрица_сравнения>)

Выполняет сравнение пространственного объекта для которого вызывает функция с объектом < объект_сравнения> в соответствии с заданной матрицей сравнения < матрица_сравнения>.

Матрица сравнения является матрицей 3x3, в ячейках которой задается тип взаимодействия между внутренними областями, границами и внешними областями сравниваемых пространственных объектов. Матрица имеет вид, представленный таблицей (). Столбцы матрицы отвечают за один сравниваемый объект, строки - за другой.

В ячейках таблицы сравнения записывается какое количество измерений должно иметь взаимодействие соответствующих частей объектов:

  • F- не должно быть взаимодействия;
  • T- должно быть взаимодействие, количество измерений неважно;
  • *- не имеет значения, есть ли взаимодействие или нет;
  • 0, 1, 2- взаимодействие должно иметь указанное количество измерений.

В аргументе функции Relate матрица взаимодействия записывается в виде строки, в которой перечислены требуемые значения всех ячеек матрицы сравнения, слева-направо, сверху-внизу.

Например, для двух пространственных объектов a и b строка a.Relate(b, " TFFFTFFFT") аналогична строке a.Equals(b).

Таблица 8. Матрица сравнения пространственных объектов

  Внутренняя область Граница Внешняя область
Внутренняя область      
Граница      
Внешняя область      

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.