Переміщення векторів до заданих координат у QGIS?


Відповіді:


24

Так, точно. Як Олександр сказав, що ви можете використовувати плагін qgsaffine (від інсталятора плагіна)

Верхня частина першого рядка знаходиться на 0,0, а верхня частина другого рядка - на 5,5. На початку точки ставлять 0 на X. введіть тут опис зображення

Використовуючи плагін Affine, ми можемо додати 5 до всіх координат X:

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

Потім після того, як вони будуть на другому рядку в X 5, Y 5:введіть тут опис зображення


Я радий спробувати це, але по-перше, інтерфейс плагіна зараз виглядає зовсім інакше, а по-друге, є якесь обмеження, тому що я не можу поставити туди 7500000, як це стандартне значення при використанні сітки GDA94 або сітки UTM ...
Miro

Гм, я перемістив його спочатку вручну за допомогою інструменту переміщення, як сказано у другій відповіді.
Міро

"Верхня частина першого рядка знаходиться на 0,0, а верхня частина другого рядка - на рівні 5,5." як це може бути, якщо обидві лінії вирівняні вертикально?
Родріго

7

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

Щоб перемістити їх на певний зсув x, y, можливо, ви зможете використовувати плагін python "qgsaffine".

Я не в курсі використання консолі python, але, мабуть, є і рішення.


На жаль, використання пам'яті QGIS проходить через дах і виходить з ладу, якщо ви не переміщуєте лише кілька простих об'єктів.
Демієн

6

Плагін у прийнятій відповіді більше недоступний. Трансформації Affine доступні і дуже корисні.

За допомогою цього плагіна ви можете створити формулу. На скріншоті я перемістив усі комірки на 17.396 (метрів) на північ.

скріншот головного екрана плагіна


Що означають х 'і у'? Чому перший за замовчуванням дорівнює 1, а другий 0? Чому з кожного x + та y + існує два? Чому другий х + є за замовчуванням 1, а всі інші 0?
Родріго

1
x'І y' означає , що отримані xі yз вихідного векторного шару. Ви повинні прочитати це так: derived x= (1.0 * original x) + (0.0 * original y) + 0.0Це означає, що в напрямку x немає змін, отже, в 1,0 рази x. Я хотів перемістити всі осередки вгору (на північ) на 17 396 метрів. Тож я додав лише 17,396 до (1 * у). Якщо ви взагалі не хочете мати змін, ви просто використовуєте: x' = (1 * x) + (0 * y) + 0іy' = (0 * x) + (1 * y) + 0
Герт

Дякую! Тепер я це отримав.
Родріго

3

Я вважаю плагін "Числове редагування вершин" дуже корисним для визначення нових координат для точки.

На шарі, який можна редагувати, використовуйте інструмент для вибору точки, тоді вам буде запропоновано ввести нові координати.


1

Існує плагін, викликаний moveу сховищі коду .

Він переміщує фігури з точки A і B і робить це без ускладнень.

Він переміщує всі вибрані об'єкти з точки в точку.


0

У QGIS 3.x плагін більше не потребує переміщення векторних фігур, оскільки в панелі інструментів є рутина під назвою "Перекласти" -> Векторна геометрія. Ви просто помістіть відстань зміщення для осі x і y та запустіть її, або - як сказано вище, якщо ви віддаєте перевагу ручному позиціонуванню, починайте редагувати шар, вибирати всі об'єкти та переміщувати їх за допомогою інструменту «Перемістити функцію».

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

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