SASGIS

Веб-картография и навигация

SAS.Wiki

Веб-картография и навигация

Инструменты пользователя

Инструменты сайта


логические_операции_с_полигонами

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

логические_операции_с_полигонами [10/05/2015 13:07]
109.94.188.121
логические_операции_с_полигонами [09/04/2021 11:59] (текущий)
176.59.16.190 pac
Строка 3: Строка 3:
 ====== Логические операции с полигонами ====== ====== Логические операции с полигонами ======
  
-Под логическими операциями понимаются операции,​ подобные операциям над битами (байтами) в булевой алгебре. Это операции **И (AND)**, **ИЛИ (OR)**, **НЕ (NOT)**, **ИСКЛЮЧАЮЩЕЕ ИЛИ (XOR)**. Результаты логических операций с полигонами показывают следующие рисунки.+Под логическими операциями понимаются операции,​ подобные операциям над битами (байтами) в булевой алгебре. Это операции **И (AND** или **Intersection)**, **ИЛИ (OR** или **Union)**, **НЕ (NOT** или **Difference)**, **ИСКЛЮЧАЮЩЕЕ ИЛИ (XOR)**. Результаты логических операций с полигонами показывают следующие рисунки.
  
 Имеются два полигона:​ звезда и круг. Здесь **subject** - полигон,​ относительно которого проводится логическая операция,​ **clip** - второй полигон,​ участвующий в логической операции. Имеются два полигона:​ звезда и круг. Здесь **subject** - полигон,​ относительно которого проводится логическая операция,​ **clip** - второй полигон,​ участвующий в логической операции.
Строка 25: Строка 25:
 {{:​xor.png?​200|}} {{:​xor.png?​200|}}
  
-Кроме описанных логических операций в программе имеется ещё одна операция **Group**. ​Она идентична операции **ИЛИ**, но с одним отличием: если полигоны пересекаются, результатом операции **ИЛИ** является один новый полигон,​ а результатом операции **Group** являются по-прежнему два полигона. Если полигоны не пересекаются, результаты обеих операций одинаковы.+Кроме описанных логических операций в программе имеется ещё одна операция **Group**. ​Визуально она идентична операции **ИЛИ**, но есть значительные отличия.
  
-В логических операциях может участвовать любое количество полигонов.+Если полигоны пересекаются, результатом ​операции **ИЛИ** будет **один** новый полигон,​ а результатом операции **Group** будут по-прежнему **несколько** полигонов, условно объединённых в мультиполигон. Мультиполигон может содержать любое количество полигонов. Свойства всех полигонов,​ входящих в мультиполигон,​ одинаковы. Все они одновременно выводятся на экран, используются в качестве выделенной области и т. д.
  
-Результаты логических ​операций могут быть использованы для Операций ​с выделенной областьюто есть для загрузки,​ копирования,​ удаления,​ экспорта и пр. Кроме того, результаты ​могут быть сохранены в базе меток для последующего ​использования.+Если полигоны ​не пересекаются, результаты операций **ИЛИ** и **Group** ​будут одинаковы.
  
-Для проведения логических операций с полигонами следует ​прежде всего отобразить нужные полигоны на экране. Это делается в окне Управления метками.+Также следует учитывать,​ что при всех ​логических операциях, кроме **Group**, происходит некоторое "​округление"​ координат вершин ​полигонов, из-за чего полученные новые полигоны будут иметь вершины, не совсем совпадающие с вершинами исходных полигонов. Более того, в некоторых случаях (в основном при самопересечениях полигона) возможно ​образование так называемых "​дырок"​. Дырка - это замкнутый ​полигоннаходящийся внутри другого замкнутого полигона. //На сегодняшний день дырки программой ​не обрабатываются, ​то есть игнорируются,​ однако их количество считается ​и указывается в сообщении о завершении логической операции.//
  
-Затем, зажав клавишу **Ctrl**, щёлкнуть по первому полигону. С левой стороны экрана откроется окно логических ​операций с полигонами. Окно можно ​**растягивать** по горизонтали.+В случае операции **Group** координаты вершин никаких изменений не претерпевают, поэтому операция **Group** выполняется быстрее,​ чем **ИЛИ**. В результате операции ​**Group** дырки не образуются.
  
-{{:окно_лоп.png?400|}}+Результаты логических операций могут быть использованы для //​**Операций с выделенной областью**//,​ то есть для загрузки,​ копирования,​ удаления,​ экспорта и пр. Кроме того, результаты могут быть сохранены в базе меток для последующего использования.
  
-Первому выбранному полигону автоматически присваивается ​статус **subject**.+В логических ​операциях ​может ​участвовать любое количество полигонов. Нужно лишь учитывать, что логическая операция с каждым последующим полигоном из списка проводится ​не над результатом предыдущей операции,​ а над первым в списке полигоном (**subject**).
  
-Затем, также с зажатой клавишей **Ctrl**, щёлкнуть ​по второму ​полигону. Он автоматически добавится в список, но уже со статусом **clip**. Аналогично в список ​добавляются все последующие полигоны.+Для проведения логических операций с полигонами ​следует прежде всего ​добавить в список участвующие полигоны. Это можно сделать четырьмя способами:
  
-{{:окно_лоп1.png?400|}}+  - Щёлкнуть на нужном полигоне левой ​кнопкой мыши, зажав клавишу **Ctrl**. 
 +  - Щёлкнуть на нужном полигоне правой кнопкой мыши и в контекстном меню выбрать **Добавить к Слиянию полигонов**. 
 +  - В Менеджере меток выделить один или (используя **Ctrl** или **Shift**) несколько полигонов,​ щёлкнуть правой кнопкой мыши, в контекстном меню выбрать **Добавить к Слиянию полигонов**. 
 +  - В Менеджере меток выделить Категорию меток, щёлкнуть правой кнопкой мыши, в контекстном меню выбрать **Добавить к Слиянию полигонов**. В данном случае добавлены будут только видимые полигоны.
  
-Окно Логических операций с полигонами имеет несколько кнопок плюс выпадающий список. Рассмотрим ​назначение этих органов ​управления. Начнём слева направо.+Если ​несколько ​полигонов ​накладываются друг на друга в точке щелчка мышью, то все ​они будут добавлены в список. "​Лишние" ​полигоны можно либо удалить из списка средствами рассматриваемой панели, либо предварительно отключить ​в окне //**Управление метками**//.
  
-  ​* Изменить порядок следования полигонов в списке,​ а, значит,​ и их статусы,​ можно кнопками ​с **красной ​стрелкой вверх** и **зелёной ​стрелкой вниз**. Первый по списку полигон всегда получает статус **subject**.+С левой стороны экрана откроется панель //​**Слияние полигонов**//​ (если она ещё не открыта). Панель можно **растягивать** по горизонтали,​ а также делать постоянно видимой или убирать с экрана через меню //​**Вид**->​**Панели**//​. 
 + 
 +{{:​лоп.png?​nolink|}} 
 + 
 +Первому в списке полигону автоматически присваивается статус **subject**. 
 + 
 +Остальным полигонам в списке присваивается статус **clip**. 
 + 
 +В круглых скобках указывается,​ одиночный это полигон (**Single**),​ или мультиполигон (**Multi**). 
 + 
 +{{:​лоп1.png?​nolink|}} 
 + 
 +Панель **Слияние полигонов** имеет несколько кнопок плюс выпадающий список. Рассмотрим назначение этих органов управления. Начнём слева направо. 
 + 
 +  ​* Изменить порядок следования полигонов в списке,​ а, значит,​ и их статусы,​ можно кнопками **стрелка вверх** и **стрелка вниз**. Первый по списку полигон всегда получает статус **subject**.
   ​   ​
-  * Кнопка с **маленьким** красным ​крестиком позволяет удалить выделенный полигон из списка.+  * Кнопка с **красным ​знаком ​минус** ​позволяет удалить выделенный полигон из списка.
  
-  * Кнопка с **большим** красным крестиком полностью очищает список полигонов.+  * Кнопка с **большим красным крестом** полностью очищает список полигонов.
   ​   ​
-  * Выпадающий список содержит все доступные логические операции с полигонами.+  * Выпадающий ​**список** содержит все доступные логические операции с полигонами
 + 
 +  * Кнопка с **зелёной "​галкой"​** служит для подтверждения выбранных параметров и применения логической операции. После этого на экране появится результат выбранной логической операции. 
 + 
 +  * Следующая кнопка служит для вызова окна //​**Операции с выделенной областью**//​. 
 + 
 +  * Кнопка с изображением **дискеты** сохраняет результат в базе меток.
  
-  * Кнопка с **зелёной "​галкой"​** служит для подтвержения выбранных параметров и применения логической операции. После этого на экране появится результат выбранной логической ​операции.+{{:лоп2.png?​nolink|}}
  
-  * Следующая кнопка служит для вызова окна Операций с выделенной областью.+В окне сообщения о результате логической операции указывается общее количество созданных полигонов и "дырок". Если ​в результате логической операции получилось более одного полигонато в базе меток они будут сохранены как мультиполигон.
  
-  * Кнопка с изображением дискеты сохраняет результат в базе меток. 
  
-{{:окно_лоп2.png?​1000|}}+Допустить 
 +мы, что из нас  
 +интересуют снимки,​  
 +покрывающие части ​лицевой формы
  
-В окне сообщения о результате ​логической операции указывается общее количество созданных полигонов и "​дырок"​.+ а полигон, описывающий нужный снимок - как **clip**, и применить логическую операцию **НЕ**.