Як конвертувати файл форми у WKT?


12

Я намагаюсь перетворити файл форми у простий добре відомий текст (WKT) у наведеному нижче прикладі (з http://en.wikipedia.org/wiki/Well-known_text ).

MULTIPOLYGON (((40 40, 20 45, 45 30, 40 40)),
((20 35, 45 20, 30 5, 10 10, 10 30, 20 35),
(30 20, 20 25, 20 15, 30 20)))

Я знаю, що я використовую QGIS для збереження файлу форми як CSV, і я можу використовувати ogr2ogr для здійснення будь-якої кількості конверсій. Насправді ogr2ogr -f CSV out.wkt source.shp -lco GEOMETRY=AS_WKTзближує мене так само, як я прийшов так далеко, але не зовсім там. Будь-які пропозиції?

ps Як зазначив Mapperz, ця нитка дуже схожа на цю . Цей потік, хоча він забезпечував підхід ogr2ogr, який я зазначив вище, не вирішив цього особливого завдання. Вихід ogr2ogr, який я отримую, виглядає приблизно так (я врізав рядки). Мабуть, я просто не зрозумів, як змусити ogr2ogr використовувати багатополігон.

WKT,AREA,PERIMETER,PINUPOND_,PINUPOND_I,CODE
"POLYGON ((-120.630531650950061 50.838562484449184, . . .
"POLYGON ((-123.206067372148397 51.038984074378327, . . .


Яка проблема з виходом ogr2ogr?
til_b

@til_b: адресовано в редагуванні.
Григорій

1
Ваша форма MULTIPOLYGON?
Юрген Зорніг

@ JürgenZornig: Як я можу це сказати? Це було б сенсом, щоб це було багатополігоном, але я хотів би це перевірити.
Григорій

Відповіді:


10

Добре відомий текст не призначений для збереження шарів, як файлів форми, що складається з багатьох об'єктів. WKT визначає, як зобразити геометрію одного об’єкта. Геометрія може бути одно- чи багаточастковою. Багаточастотна геометрія означає, що геометрія одного об’єкта складається з багатьох частин. Наприклад, Гавайські острови можуть бути представлені як один об'єкт, але він складається з безлічі геометрій.

Файл форми - це сукупність таких видів об’єктів. Об'єкти зазвичай також мають деяку інформацію про атрибути, яка також є частиною файлу форми.

Ваш підхід ogr2ogr перетворює ці об'єкти у формат csv з геометриєю WKT (та текстовими поданнями атрибутів). Якщо ви дійсно хочете об'єднати всі геометрії в один MULTIPOLYGON, вам слід спершу перетворити всі об'єкти в одну мультигеометрію. Це можна зробити в QGIS. Виберіть у меню "Інструменти геометрії" вектор, а потім "Одночастинки" на "багаточастинки". Тоді ви можете перетворити це на wkt за допомогою ogr2ogr.

Сподіваємось, це має сенс.


Це має сенс, і я незабаром спробую це спробувати.
Григорій

Гаразд, у QGIS я використовував векторні / геометричні інструменти / окремі частини для багаточастин. Я зберегла вихідний файл як новий файл форми, але коли я завантажував цей файл у QGIS, він видається порожнім, а таблиця атрибутів є абсолютно порожньою (можливо, кращий опис буде недійсним, оскільки немає і заголовків).
Григорій

Ви обрали @pyrogerg якесь унікальне поле, коли інструмент цього вимагав? Це означає, що інструмент "групує" всі функції, які мають однакове значення в цьому полі. Якщо у вас немає поля, яке ви хочете би унікальним, ви можете просто створити його за допомогою калькулятора поля. Ви можете отримати доступ до цього з таблиці атрибутів. Переконайтесь, що шар знаходиться в режимі редагування (значок пера). Потім виберіть поле Калькулятор і "обчисліть", наприклад, значення 1 для кожного ряду нового поля.
LauriK

1
+1 Я зважився на подальшу роз'яснення вашої редакції, чітко зазначивши, що у висновок будуть входити атрибути.
whuber

5

Я написав плагін QGIS, який негайно зберігає активний шар у файл .wkt.

Назва плагіна - "WktExport". Ви можете шукати його на панелі плагінів QGIS за замовчуванням.

BTW, посилання на сторінку плагіна:

https://plugins.qgis.org/plugins/wktexport/

Плагін "WktExport" для QGIS створює папку з назвою "WktExport", де знаходиться оригінальний SHP, і вставляє в папку файл .wkt, що містить елементи у форматі WKT ascii всіх об'єктів SHP (але також KML або іншого оригінального файлу формат).

Ім'я .wkt має дату та час збереження, тому зберігаючи його багато разів, у вас буде багато версій одного файлу.

Це може бути корисним для створення анімації прогресу роботи з картографією або для документування поточного стану файлу.

Будь ласка, надішліть повідомлення до списку qgis-developer, особливо якщо wktexport корисний.


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