Це команда v.out.postgisgrass, яку можна запустити у безкоштовного хостинг-провайдера OnWorks за допомогою однієї з наших безкоштовних онлайн-робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS
ПРОГРАМА:
ІМ'Я
v.out.postgis - Експорт шару векторної карти до таблиці об'єктів PostGIS.
КЛЮЧОВІ СЛОВА
вектор, експорт, PostGIS, прості функції, топологія, 3D
СИНТАКСИС
v.out.postgis
v.out.postgis --допомога
v.out.postgis [-tlxnumx] вхід=ім'я [тип=рядок[,рядок,...]] [шар=рядок]
вихід=рядок [вихідний_рів=ім'я] [вихідне_посилання=ім'я]
[опції=ключ=значення[,ключ=значення,...]] [--перезаписати] [--допомога] [--докладний] [--тихий]
[--ui]
Прапори:
-t
Не експортуйте таблицю атрибутів
-l
Експортуйте топологію PostGIS замість простих функцій
-2
Примусове виведення 2D, навіть якщо вхід є 3D
Корисно, якщо вхід є 3D, але всі координати z ідентичні
--перезаписати
Дозволити вихідним файлам замінювати наявні файли
--допомога
Роздрукувати підсумок використання
-багатослівний
Детальний вихід модуля
--спокійно
Тихий вихід модуля
--ui
Примусово запустити діалогове вікно графічного інтерфейсу
Параметри:
вхід=ім'я [вимагається]
Назва вхідної векторної карти
тип=рядок [, рядок,...]
Тип вхідної функції
варіанти: вказують, лінія, межа, центроїд, площа, обличчя, ядро, автоматичний
За умовчанням: автоматичний
шар=рядок
Номер або назва шару
За умовчанням: 1
вихід=рядок [вимагається]
Ім'я вихідного джерела даних PostGIS
Починається з префікса «PG», напр. «PG:dbname=grass»
вихідний_рів=ім'я
Назва вихідного шару PostGIS
Якщо не вказано, використовується назва введення
вихідне_посилання=ім'я
Ім’я вихідної векторної карти, визначене як посилання на таблицю об’єктів PostGIS
Якщо не вказано, векторне посилання не створюється. Посилання можна також зробити вручну
створений модулем v.external.
опції=ключ=значення[,ключ=значення,...]
Варіанти створення
Приклади:
’FID=cat’: визначте стовпець ідентифікатора функції ’cat’
’GEOMETRY_NAME=wkb_geometry’: визначте стовпець геометрії ’wkb_geometry’
’SPATIAL_INDEX=NO’: не створювати просторовий індекс у стовпці геометрії
ОПИС
v.out.postgis експортує наявний шар векторної карти GRASS до таблиці об’єктів PostGIS.
Функції без категорії пропускаються.
За замовчуванням топологічні об’єкти GRASS GIS перетворюються на прості об’єкти (див. OGC
Специфікація доступу до простих функцій для отримання деталей). Прапор -l дозволяє експортувати векторні об’єкти
як топологічні елементи, що зберігаються в схемі топології PostGIS. Зауважте, що топологічний експорт
вимагає PostGIS версії 2 або новішої.
Можна визначити додаткові параметри створення опції параметр:
· FID= - ім'я стовпця, який буде використовуватися як первинний ключ (ідентифікатор функції),
за замовчуванням: fid
· GEOMETRY_NAME= назва стовпця, який буде використовуватися для зберігання геометричних даних
у таблиці об'єктів, за замовчуванням: geom
· SPATIAL_INDEX=YES|NO - увімкнути/вимкнути створення просторового індексу в стовпці геометрії,
за замовчуванням: ТАК
· PRIMARY_KEY=YES|NO - увімкнути/вимкнути додавання первинного ключа до стовпця FID, за замовчуванням: YES
· SRID= - ідентифікатор просторової прив'язки, за замовчуванням: не визначено
Параметри, пов’язані з топологією PostGIS (актуальні лише для -l прапор):
· TOPOSCHEMA_NAME= - назва схеми топології PostGIS, за замовчуванням:
topo_
· TOPOGEOM_NAME= - назва колонки, яка буде використовуватися для зберігання
топогеометричні дані в таблиці об'єктів, за замовчуванням: топо
· TOPO_TOLERANCE= - допуск для схеми топології PostGIS, див. CreateTopology
функція для несправностей, за замовчуванням: 0
· TOPO_GEO_ONLY=YES|NO - зберігати в схемі топології PostGIS лише дані, що стосуються
Модель даних Topo-Geo, за замовчуванням: НІ
Створення опції є парами, розділеними комами (ключ=значення), параметри нечутливі до регістру.
Зверніть увагу, що опції визначені v.external.out ігноруються v.out.postgis.
v.out.postgis додатково також створює нову векторну карту в поточному наборі карт, якщо
вихідне_посилання визначено.
ПРИМІТКИ
За замовчуванням v.out.postgis експортує векторні дані як простий риси, тобто меж і
центроїди (утворюючи топологічні області) стають багатокутниками, острови стають дірками. Геометрія
прості елементи об’єктів зберігаються в таблиці об’єктів PostGIS у стовпці під назвою «geom».
Назву стовпця геометрії можна змінити параметри=GEOMETRY_NAME=. Зауважте, що
для експорту векторних об’єктів, оскільки прості об’єкти можна альтернативно використовувати PostgreSQL
драйвер з бібліотеки OGR через v.out.ogr модуль
Також зауважте, що в таблиці властивостей дозволяється зберігати тільки ознаки одного типу,
тобто. змішування точок і ліній наразі неможливе. Визначено тип ознаки
для вихідної таблиці ознак з першого векторного об’єкта, що звертається до даних послідовно
(тип=авто). Векторні об'єкти інших типів під час експорту пропускаються. Користувач може вибрати
бажаний тип функції за тип параметр. Наразі дозволений лише один тип (див. TODO
розділ для детальної інформації).
v.out.postgis наразі підтримує лише три основні типи простих функцій виводу: точки,
Лінійки та багатокутники. Також підтримуються тривимірні функції того самого типу, напр. 3D точки
експортуються як проста функція PointZ. Грані експортуються як тривимірні багатокутники. Функції 3D є
записується на вихід автоматично, якщо вхідна векторна карта є 3D. Якщо -2 тоді дається прапор
вихід завжди 2D (z-координата мовчки ігнорується для 3D вхідних векторних карт).
Мультигеометрії наразі не підтримуються. Об’єкти тієї самої категорії експортуються
як кілька окремих функцій.
v.out.postgis також дозволяє експортувати векторні об’єкти як топологічний елементи в PostGIS
Топологічна схема. Розширення топології PostGIS використовує три таблиці для зберігання базової топології
елементів, які утворюють топологічні об’єкти, такі як області або острови в термінології GRASS. Nodes
(0-вимірні топологічні елементи) зберігаються в таблиці "node", краю (1-вимірний
елементів) у таблиці "край" і особи (2-вимірні елементи) в таблиці "face".
· Вузли GRASS зберігаються в вузол таблиця
· Точки GRASS зберігаються в вузол таблицю як регулярні вузли
· Центроїди GRASS зберігаються в вузол таблицю як звичайні вузли ("containing_face"
відноситься до суміжної області)
· Лінії GRASS зберігаються в край таблиця
· Межі GRASS зберігаються в край таблиця
· Зони GRASS зберігаються в особа таблиця
таблиці вузол, край та особа зберігаються в даній топологічній схемі. За замовчуванням
v.out.postgis визначає свою назву як topo_. Крім того, назва для топології
схему можна визначити за допомогою параметри=TOPOSCHEMA_NAME=.
ПРИКЛАДИ
Експорт простий Функції
Експортуйте векторну карту "urbanarea" як таблицю функцій "urbanarea", розташовану в базі даних "grass",
схема «публічний». Зауважте, що ця схема бази даних використовується автоматично, якщо не визначена
користувач.
v.out.postgis input=urbanarea output="PG:dbname=grass"
Області GRASS перетворюються на багатокутники, острівці — на ями. Ми можемо перевірити номер або
створив полігони за простим SQL-запитом нижче.
db.select driver=pg database=grass \
sql="SELECT ST_GeometryType(geom) as geom_type, count(*) from urbanarea group by geom_type"
geom_type|кільк
ST_Полігон|657
Примітка: ту саму процедуру можна виконати v.out.ogr модуль, напр.
v.out.ogr input=urbanarea output="PG:dbname=grass" format=PostgreSQL
У цьому випадку векторні дані GRASS експортуються до бази даних PostGIS за допомогою бібліотеки OGR, а саме
за допомогою драйвера PostgreSQL. Всупереч v.out.ogr модуль, v.out.postgis використовує безпосередньо
Постачальник даних PostGIS, який є частиною векторної системи GRASS. Крім того, що, v.out.postgis is
оптимізовано для експорту PostGIS, включаючи топологічний доступ до даних.
Експорт дані в конкретний база даних схема
Схему бази даних для зберігання експортованих даних можна визначити за допомогою вихідний_рів as
.. Якщо зазначена схема не існує в базі даних, тоді
воно створюється автоматично.
Експорт векторної карти «мости» як таблицю функцій у схемі бази даних «grassout».
v.out.postgis input=bridges output="PG:dbname=grass" output_layer=grassout.bridges
Експорт дані з створення опції
Приклад нижче демонструє, як визначити ім’я для стовпця геометрії та вимкнути побудову
просторовий індекс. Просторова система відліку визначається ідентифікатором srid, який відповідає в
у цьому випадку з EPSG 3358 (набір даних Північної Кароліни).
v.out.postgis input=roadsmajor output="PG:dbname=grass" options="GEOMETRY_NAME=wkb_geometry,SPATIAL_INDEX=NO,SRID=3358"
посилання експортується дані
Експортовані дані можна зв’язати як векторну карту, створену в поточному наборі карт, вказавши
вихідне_посилання параметр. У наведеному нижче прикладі векторна карта "busstopsall" із набору PERMANENT
експортується в базу даних PostGIS "трава". v.out.postgis також після успішного експорту
створює в поточному наборі карт векторну карту GRASS як посилання на таблицю об’єктів PostGIS.
v.out.postgis input=busstopsall@PERMANENT output="PG:dbname=grass" output_link=busstopsall_pg
Створене посилання можна перевірити за v.info:
v.info busstopsall_pg
...
|------------------------------------------------ ---------------------------|
| Формат карти: PostGIS (PostgreSQL) |
| Таблиця БД: public.busstopsall |
| Назва БД: трава |
| Стовпець геометрії: geom |
| Тип функції: точка |
| Топологія: псевдо (прості функції) |
|------------------------------------------------ ---------------------------|
...
Експорт дані без Атрибути
v.out.postgis дозволяє ігнорувати атрибути під час експорту векторних об’єктів, вказавши -t
прапор. Команда нижче експортує векторні об’єкти без атрибутів. Функція міститиме
лише два стовпці, стовпець fid і геометрія.
v.out.postgis -t input=railroads output="PG:dbname=grass"
Експорт топологічний дані
За замовчуванням v.out.postgis експортує дані як прості функції. Прапор -l дозволяє експортувати дані як
топологічні елементи замість простих ознак. Топологічні елементи експорту зберігаються в
Схема топології PostGIS.
v.out.postgis -l input=busrouteall output="PG:dbname=grass"
Для отримання додаткової інформації про реалізацію топології PostGIS у GRASS перегляньте вікі-сторінку.
ALL
· Багатофункціональний експорт
· Дозволити змішані функції (точки, лінії)
· Підтримка інших простих типів функцій, таких як GeometryCollection та інші
· Реалізувати відсутні варіанти з v.out.ogr: -a, -s, -c, -p, -n
· Додати параметри: коти, де
ВИМОГИ
· PostGIS 2.x або новішої версії для топологічного експорту (прапорець -l)
Посилання
· Специфікація OGC Simple Feature Access
· Документація з топології PostGIS
· Постачальник даних GRASS-PostGIS
Використовуйте v.out.postgisgrass онлайн за допомогою сервісів onworks.net