Доступно с лицензией Data Reviewer.
Опция DE-9IM - это пользовательский тип пространственного отношения, доступный при проверке Объект на объекте, который использует Dimensionally Extended 9-Intersection Model или строку формата DE-9IM. Пользовательские пространственные операции задаются внешними, граничными и внутренними объектами из двух классов объектов.
При выборе DE-9IM в качестве типа пространственного отношения выполняется сравнение любых возможных пересечений между двумя геометриями на основе трех следующих признаков:
- Внутренняя часть – геометрия целиком за исключением границы. Все типы геометрии имеют внутреннюю часть.
- Граница – конечные точки всех линейных частей линейных объектов или линейный контур полигона. Границы есть только у линий и полигонов.
- Внешняя часть – область снаружи геометрии, которая не включает границу. Все типы геометрии имеют внешнюю часть.
Понимание того, как внутренняя часть, граница и внешняя часть определяются для каждого типа геометрии пространственного объекта, важно для понимания операторов отношений:
- Точка - точка представляет собой отдельное местоположение в пространстве. Внутренняя часть точки - это сама точка, граница - это пустое множество (или несуществующая граница), а внешняя часть - это все остальные точки.
- Мультиточка - представляет собой упорядоченный набор точек. Внутренняя часть мультиточки - это набор точек в коллекции, граница - это пустой набор (или несуществующая граница), а внешняя часть - это набор точек, которых нет в коллекции.
- Полилиния - это упорядоченный набор из одного или нескольких путей, каждый из которых представляет собой набор смежных сегментов. У сегмента есть начальная и конечная точки.
Граница полилинии - это набор начальных и конечных точек каждого пути, внутренняя часть - это набор точек в полилинии, которые не находятся на границе, а внешняя часть - это набор точек, которые не находятся на границе или во внутренней части.
Для полилинии на следующем изображении набор точек, составляющих границу, показан синим цветом. Внутренняя часть полилинии отображается оранжевым цветом.
Полигон - определяется кольцом или набором колец. Каждое кольцо представляет собой набор смежных сегментов, так что начальная и конечная точки совпадают.
Граница полигона - это кольцо или набор колец, определяющих полигон. Граница содержит одно или несколько внешних колец и ноль или несколько внутренних колец. Внешнее кольцо ориентировано по часовой стрелке, а внутреннее кольцо - против часовой стрелки. Представьте, что вы идете по границе по часовой стрелке. Область справа от вас - это внутренняя часть полигона, а слева - внешняя часть. Для полигона на следующем изображении граница показана синим цветом, внутренняя часть показана оранжевым цветом, а внешняя часть представляет собой пустое пространство за пределами границы.
Пространственное отношение DE-9IM определяется с помощью строки последовательности из девяти символов, состоящей из следующих символов:
- T (true) - объекты имеют пересекающиеся внутренние части, границы или внешние части.
- F (false) - объекты не имеют пересекающихся внутренних частей, границ или внешних частей.
- 0 (без измерения) - пересечение между внутренними частями, границами или внешними частями объектов образует точку.
- 1 (одно измерение) - пересечение между внутренними частями, границами или внешними частями объектов образует линию.
- 2 (два измерения) - пересечение между внутренними частями, границами или внешними частями объектов образует полигон.
- * (не проверять) - проверка на наличие пересекающихся внутренних частей, границ или внешних частей объектов не выполняется.
Размещение соответствующих символов важно, поскольку оно определяет, какие характеристики будут проверяться между двумя объектами. В следующей таблице показан порядок символов, описывающих пространственные отношения между двумя регионами, классом объектов один и классом объектов два.
Например, если вы хотите сравнить внутреннюю часть класса пространственных объектов 1 и класса пространственных объектов 2, введите T для первого слота. Если вы не хотите сравнивать их, введите * для первого слота.
Символ номер слота | Класс объектов 1 | Класс объектов 2 |
---|---|---|
1 | Внутренняя | Внутренняя |
2 | Внутренняя | Границы |
3 | Внутренняя | Внешняя часть |
4 | Границы | Внутренняя |
5 | Границы | Границы |
6 | Границы | Внешняя часть |
7 | Внешняя часть | Внутренняя |
8 | Внешняя часть | Границы |
9 | Внешняя часть | Внешняя часть |
Примеры иллюстраций
В следующих сценариях показано, как типы геометрии, выделенные красным, соотносятся друг с другом в зависимости от их внутренних частей, границ или внешних частей.
Класс объектов 2Внутренняя | Класс объектов 2Границы | Класс объектов 2Внешняя часть | |
---|---|---|---|
Класс объектов 1 (Полигон) | T***T**** FC1 (полигон) имеет общую границу с FC2 (полигон), а внутренние части пересекаются. | F***1**** FC1 (полигон) имеет общую границу с FC2 (полигон). Внутренние части не пересекаются, а общие границы образуют линию. | ***1***** Внешняя часть FC1 (полигона) пересекает внутреннюю часть FC2 (линии) по конгруэнтной длине. |
Класс объектов 1 (Линия/Полигон) | TT*FFT*** Внутренняя часть FC1 (линия) содержится в FC2 (линия). | FF*FT**** FC1 (линия) касается границы FC2 (точки) и внутренние части не пересекаются. | TT**F**** Внешняя часть и внутренняя часть FC1 (линия) пересекаются с FC2 (полигон). |
Класс объектов 1 (Точка) | T******** Внутренняя часть FC1 (точка) находится внутри FC2 (линия). | *T******* Внутренняя часть FC1 (точка) касается границы FC2 (линия). | TF****T** Внешняя часть FC1 (точка) находится внутри FC2 (полигон), за исключением границы FC2. |
Шаблоны отношений
После того, как вы выберете опцию DE-9IM, появится текстовое окно DE-9IM String, в котором вы можете ввести строку шаблона. Шаблоны, которые можно использовать для поиска определенных отношений, перечислены в следующей таблице:
Пространственное отношение | Класс объектов 1 | Класс объектов 2 | Стока |
---|---|---|---|
Содержат | Линия | Линия | TT*FFT*** |
Содержат | Линия | Точка | T**F*T*** |
Содержат | Точка | Точка | T******** |
Содержат | Полигон | Линия | TT*FFT*** |
Содержат | Полигон | Полигон | TT*FFT*** |
Пересекает | Линия | Линия | TF*FF**** |
Пересекает | Линия | Полигон | TT**F**** |
Пересекает | Полигон | Линия | T***F**T* |
Перекрытия | Линия | Линия | TT*T***** |
Перекрытия | Точка | Точка | T******** |
Перекрытия | Полигон | Полигон | TT*T***** |
Касание | Линия | Линия | FF*FT**** |
Касание | Линия | Полигон | FF*FT**** |
Касание | Полигон | Линия | FF*FT**** |
Касание | Полигон | Полигон | FF*FT**** |
Внутри | Линия | Линия | TF**F**** |
Внутри | Линия | Точка | T******** |
Внутри | Точка | Точка | T******** |
Внутри | Полигон | Линия | TF**F**** |
Внутри | Полигон | Полигон | TF**F**** |
Другие примеры строк, которые используются в текстовом окне DE-9IM String, перечислены в следующей таблице:
Пространственное отношение | Класс объектов 1 | Класс объектов 2 | Используемая строка |
---|---|---|---|
Общая граница | Полигон | Полигон | ****T**** |
Общая граница и пересекающиеся внутренние части | Полигон | Полигон | T***T**** |
Общая граница и непересекающиеся внутренние части | Линия | Линия | F***T**** |
Нет общей границы и пересекающиеся внутренние части | Полигон | Полигон | T***F**** |
Граница полигона пересекает внутреннюю часть линии вдоль общего участка | Полигон | Линия | ***1***** |
Идентичны | Полигон | Полигон | **F*TF*** |
Касается границы | Линия | Линия | ****T**** |
Имеют общий линейный сегмент с | Полигон | Полигон | F***1**** |
Пересекает по контуру | Полигон | Линия | TT**F**** |