Это команда 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 [-tl2] вход=имя [напишите=string[,string, ...]] [слой=string]
выходной=string [выходной_слой=имя] [выходная_ссылка=имя]
[кредита=ключ = значение[,ключ = значение, ...]] [-затирать] [-помощь] [-подробный] [-тихий]
[-ui]
Флаги:
-t
Не экспортировать таблицу атрибутов
-l
Экспорт топологии PostGIS вместо простых функций
-2
Принудительный вывод 2D, даже если вход 3D
Полезно, если ввод 3D, но все координаты z идентичны
- перезаписать
Разрешить выходным файлам перезаписывать существующие файлы
--Помогите
Распечатать сводку использования
--подробный
Подробный вывод модуля
--тихий
Тихий выход модуля
--уи
Принудительный запуск диалогового окна GUI
Параметры:
вход=имя [требуется]
Имя входной векторной карты
напишите=строка [, строка, ...]
Тип входного объекта
Опции: указывают, линия, граница, центроид площадь, лицо, ядро, автоматический
По умолчанию: автоматический
слой=string
Номер или название слоя
По умолчанию: 1
выходной=string [требуется]
Имя выходного источника данных PostGIS
Начинается с префикса «PG», например. 'PG: dbname = трава'
выходной_слой=имя
Имя выходного слоя PostGIS
Если не указано, используется имя входа
выходная_ссылка=имя
Имя выходной векторной карты, определяемой как ссылка на таблицу функций PostGIS
Если не указан, векторная ссылка не создается. Ссылку также можно вручную
создается модулем v.external.
кредита=ключ = значение [, ключ = значение, ...]
Варианты создания
Примеры:
'FID = cat': определите столбец идентификатора функции 'cat'
'GEOMETRY_NAME = wkb_geometry': определите столбец геометрии 'wkb_geometry'
'SPATIAL_INDEX = NO': не создавать пространственный индекс для столбца геометрии
ОПИСАНИЕ
v.out.postgis экспортирует существующий слой векторной карты GRASS в таблицу объектов PostGIS.
Функции без категории пропускаются.
По умолчанию топологические объекты GRASS GIS преобразуются в простые объекты (см. OGC
Подробная информация в спецификации Simple Feature Access). Флаг -l позволяет экспортировать векторные объекты
как топологические элементы, хранящиеся в схеме топологии PostGIS. Обратите внимание, что топологический экспорт
требуется PostGIS версии 2 или новее.
Дополнительные параметры создания могут быть определены кредита Параметр:
· FID = - имя столбца, который будет использоваться как первичный ключ (идентификатор функции),
по умолчанию: fid
· GEOMETRY_NAME = имя столбца, который будет использоваться для хранения геометрических данных
в таблице функций, по умолчанию: geom
· SPATIAL_INDEX = YES | NO - разрешить / запретить создание пространственного индекса для геометрического столбца,
по умолчанию: ДА
· PRIMARY_KEY = YES | NO - включить / выключить добавление первичного ключа в столбец FID, по умолчанию: ДА
· SRID = - идентификатор пространственной привязки, по умолчанию: не определен
Опции, связанные с топологией PostGIS (актуально только для -l флаг):
· TOPOSCHEMA_NAME = - имя схемы топологии PostGIS, по умолчанию:
topo_
· TOPOGEOM_NAME = - имя столбца, который будет использоваться для хранения
данные топогеометрии в таблице объектов, по умолчанию: topo
· TOPO_TOLERANCE = - допуск для схемы топологии PostGIS, см. CreateTopology
функция по умолчанию, по умолчанию: 0
· TOPO_GEO_ONLY = YES | NO - хранить в схеме топологии PostGIS только данные, относящиеся к
Модель данных Topo-Geo, по умолчанию: НЕТ
Создание кредита являются парами, разделенными запятыми (ключ = значение), параметры не чувствительны к регистру.
Обратите внимание, что кредита определяется v.внешний.выход игнорируются v.out.postgis.
v.out.postgis при желании также создает новую векторную карту в текущем наборе карт, если
выходная_ссылка определяется.
ПРИМЕЧАНИЯ
По умолчанию v.out.postgis экспортирует векторные данные как декриминализовано функции, т.е. границы и
центроиды (образующие топологические области) становятся многоугольниками, острова - дырами. Геометрия
Простые элементы объектов хранятся в таблице объектов PostGIS в столбце с именем «geom».
Имя столбца геометрии можно изменить с помощью options =GEOMETRY_NAME = . Обратите внимание, что
для экспорта векторных функций как простых функций можно альтернативно использовать PostgreSQL
драйвер из библиотеки OGR через v.out.ogr модуль.
Также обратите внимание, что в таблице функций разрешено хранить только функции одного типа,
т.е. смешивание точек и линий в настоящее время невозможно. Тип объекта определяется
для выходной таблицы объектов из первого векторного объекта с последовательным доступом к данным
(type = auto). Векторные объекты других типов при экспорте пропускаются. Пользователь может выбрать
предпочтительный тип функции по напишите параметр. В настоящее время разрешен только один тип (см. TODO
раздел для деталей).
v.out.postgis в настоящее время поддерживает только три основных типа простых функций вывода: точки,
Линейные линии и многоугольники. Также поддерживаются однотипные 3D-функции, например. 3D точки
экспортируются как простая функция PointZ. Грани экспортируются как 3D-полигоны. 3D-функции
записывается в выход автоматически, если входная векторная карта является 3D. Если -2 тогда ставится флаг
выходные данные всегда двухмерные (координата z игнорируется для трехмерных входных векторных карт).
Мультигеометрия в настоящее время не поддерживается. Объекты с той же категорией экспортируются
как несколько отдельных функций.
v.out.postgis также позволяет экспортировать векторные объекты как топологический элементы в PostGIS
Схема топологии. Расширение PostGIS Topology использует три таблицы для хранения основных топологических данных.
элементы, которые образуют топологические объекты, такие как области или острова в терминологии GRASS. Nodes
(0-мерные топологические элементы) хранятся в таблице «узлов», края (1-мерные
элементов) в "краевой" таблице и лица (2-х мерные элементы) в "лицевой" таблице.
· Узлы GRASS хранятся в узел (см. таблицу ниже)
· Очки GRASS хранятся в узел таблица как обычные узлы
· Центроиды GRASS хранятся в узел таблица как обычные узлы ("содержащая_лицо"
относится к родственной области)
· Линии GRASS хранятся в край (см. таблицу ниже)
· Границы GRASS хранятся в край (см. таблицу ниже)
· Участки GRASS хранятся в , с которыми сталкиваются (см. таблицу ниже)
таблицы узел, край и , с которыми сталкиваются хранятся в заданной топологической схеме. По умолчанию
v.out.postgis определяет свое имя как topo_ . В качестве альтернативы имя топологии
схема может быть определена options =TOPOSCHEMA_NAME = .
ПРИМЕРЫ
Экспортировать Простой Особенности
Экспорт векторной карты «городской район» в виде таблицы объектов «городской район», находящейся в базе данных «трава»,
схема "общедоступная". Обратите внимание, что эта схема базы данных используется автоматически, если не определена
Пользователь.
v.out.postgis input = urbanarea output = "PG: dbname = grass"
Области GRASS превращаются в полигоны, острова - в дыры. Мы можем проверить номер или
созданные полигоны с помощью простого SQL-запроса ниже.
db.select driver = pg database = трава \
sql = "SELECT ST_GeometryType (geom) as geom_type, count (*) from urbanarea group by geom_type"
geom_type | count
ST_Polygon | 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
. . Если указанная схема не существует в базе данных, тогда
он создается автоматически.
Экспортируйте векторную карту «Мосты» как таблицу объектов в схеме базы данных «Graceout».
v.out.postgis input = bridges output = "PG: dbname = grass" output_layer = grassout.bridges
Экспортировать данным создание кредита
Пример ниже демонстрирует, как определить имя для геометрического столбца и отключить строительство.
пространственный индекс. Система пространственной привязки определяется идентификатором srid, который соответствует
этот случай с EPSG 3358 (набор данных Северная Каролина).
v.out.postgis input = routesmajor output = "PG: dbname = grass" options = "GEOMETRY_NAME = wkb_geometry, SPATIAL_INDEX = NO, SRID = 3358"
Ссылка экспортируемый данным
Экспортированные данные можно связать как векторную карту, созданную в текущем наборе карт, указав
выходная_ссылка параметр. В приведенном ниже примере векторная карта busstopsall из ПОСТОЯННОГО набора карт
экспортируется в "травяную" базу данных 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 = busroutesall output = "PG: dbname = grass"
Дополнительную информацию о реализации топологии PostGIS в GRASS см. На вики-странице.
TODO
· Многофункциональный экспорт
· Разрешить смешанные объекты (точки, линии)
· Поддержка других простых типов объектов, таких как GeometryCollection и др.
· Реализовать недостающие варианты из v.out.ogr: -a, -s, -c, -p, -n
· Добавить параметры: cats, в котором
ТРЕБОВАНИЯ
· PostGIS 2.x или новее для топологического экспорта (флаг -l)
Ссылки
· Спецификация OGC Simple Feature Access
· Документация по топологии PostGIS
· Провайдер данных GRASS-PostGIS
Используйте v.out.postgisgrass онлайн с помощью сервисов onworks.net