Як створити багатокутну маску "цікавої області"?


12

Я створив інструмент GP за допомогою ArcGIS, який створює маску "області інтересу" з вибраних функцій. Ефективно він створює новий шар багатокутника з пончиками, де отвір був раніше обраними функціями. Чи можу я повторити це завдання в QGIS?

Приклад: Для конкретної карти я хочу виділити округ у межах штату і замаскувати решту штату та особливості поза межами графства сірим, напівпрозорим шаром багатокутника вгорі. Концептуально я би зробив це подібним до цього.

  1. Користувач завантажує прошарок штату, округу та річки
  2. Користувач вибирає округ, що цікавить
  3. Запустіть утиліту (якщо вона існує), яка експортує всі невибрані функції у формат-файл пончика без оригінально вибраного багатокутника. Якби ця маска шару була шаром "у пам'яті", доступним лише для QGIS, це теж було б добре, можливо, навіть краще.

Чи існує такий тип інструменту чи можливості вже в QGIS або мені доведеться записати це як власну функцію?

Ось як я це зробив в ArcGIS з ModelBuilder, і результат, який би я шукав, де жовтий шар і шар річки існують у загальнодержавному масштабі (на всьому протязі зображення), а сірий шар прозорий з "пончиковою дірою", дозволяючи яскраво-жовтому ділянці відображатись та привертати увагу глядачів до цікавої області:

введіть тут опис зображення введіть тут опис зображення

Відповіді:


12

Щоб створити маску, я б запропонував використовувати Polygon із розширень шару (вектор - інструменти дослідження) та Difference (вектор - інструменти для геообробки) із активованою опцією "використовувати лише вибрані функції".

Якщо ви дійсно хочете "експортувати всі невибрані функції у форматну форму пончика", ви можете спробувати Dissolve , але це досить повільно, і у вас можуть виникнути неоптимальні результати, такі як крихітні отвори тощо.

Створення на великому багатокутнику з багатокутника з інструменту розширювачів шару і потім вирізання вибраного округу повинно бути набагато швидшим.


12

Дякуємо @underdark за ваш напрямок до цього рішення. Функція fTools "Різниця" була саме тим інструментом, який виконав це завдання. Однак, відмінна від вашої пропозиції, мені не довелося спочатку створити "Полігон із розшарувань шару".

Натомість рішення було:

  1. Завантажте рівень даних (графства)
  2. Виберіть особливість, що цікавить (графство А)
  3. Використовуйте інструмент Вектор-> Геообробка-> Різниця
  4. Виберіть рівень графства як обидва входи, "використовувати вибрані функції" встановлено прапорець OFF для вхідного векторного шару, ON для рівня різниці.

введіть тут опис зображення

Це дасть шару з усіма функціями з включеного вхідного джерела, крім вибраних функцій. Дякую!


2
Оновлення буде достатньо "спасибі";)
underdark

Це чудово працює. Єдиним недоліком є ​​те, де графство межує з морем або іншою територією без полігонів, і тому ці райони не маскуються.
JimS-W

3

Симетричний різниця в QGIS 1.6 знаходиться в Векторі> геообработки Інструменти> Симетрична різниця (стандартні основні засоби) повинен генерувати маску з двох вхідних полігонів ...

введіть тут опис зображення

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.