Какой формат слоя для хранения различной геометрии

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Ответить
Alekseevich
Участник
Сообщения: 60
Зарегистрирован: 28 янв 2023, 13:38
Репутация: 2
Откуда: Лабытнанги

Какой формат слоя для хранения различной геометрии

Сообщение Alekseevich » 21 апр 2023, 11:38

Здравствуйте.
Какой формат удобно использовать, чтобы работать со всеми типами геометрии в одном слое. И есть ли вообще такая возможность в QGIS? У меня точки,линии,полигоны..
Спасибо!

Константин Силкин
Завсегдатай
Сообщения: 420
Зарегистрирован: 21 мар 2012, 07:37
Репутация: 67
Откуда: Воронеж

Re: Какой формат слоя для хранения различной геометрии

Сообщение Константин Силкин » 21 апр 2023, 12:04

Добрый день! Таблицы MapInfo

Alekseevich
Участник
Сообщения: 60
Зарегистрирован: 28 янв 2023, 13:38
Репутация: 2
Откуда: Лабытнанги

Re: Какой формат слоя для хранения различной геометрии

Сообщение Alekseevich » 21 апр 2023, 12:16

Спасибо.А при сохранении в шейп, в автомате создадутся файлы для точек,линий и т.д.?

Константин Силкин
Завсегдатай
Сообщения: 420
Зарегистрирован: 21 мар 2012, 07:37
Репутация: 67
Откуда: Воронеж

Re: Какой формат слоя для хранения различной геометрии

Сообщение Константин Силкин » 21 апр 2023, 12:31

Да, так задумано

tikhpetr
Гуру
Сообщения: 1088
Зарегистрирован: 30 окт 2014, 16:33
Репутация: -248090259
Откуда: г. Жуковский МО

Re: Какой формат слоя для хранения различной геометрии

Сообщение tikhpetr » 21 апр 2023, 13:57

Можно также и в Global Mapper.

konst555
Активный участник
Сообщения: 212
Зарегистрирован: 11 авг 2015, 16:13
Репутация: 45

Re: Какой формат слоя для хранения различной геометрии

Сообщение konst555 » 27 апр 2023, 09:06

Скорее всего, ответ - никакой.
Есть много форматов файлов, которые позволяют в одном файле хранить различные типы геометрии (geopackage, tab). Но все-равно они останутся отдельными слоями как внутри файла, так и при работе в проекте.

Возможно, есть какая-то программа совмещающая при работе в одном слое некоторые типы, но это явно нелогично и неразумно. Может некоторые назовут Косметический слой MapInfo? Но скорее всего внутри проекта разные геометрии хранятся раздельно.

Если нужно компактное хранение локальных данных, то используйте geopackage.

gamm
Гуру
Сообщения: 4058
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1055
Ваше звание: программист
Откуда: Казань

Re: Какой формат слоя для хранения различной геометрии

Сообщение gamm » 27 апр 2023, 10:42

konst555 писал(а):
27 апр 2023, 09:06
Но скорее всего внутри проекта разные геометрии хранятся раздельно.
это не так, Мапинфа все хранит и обрабатывает вместе, в одном слое, геометрия хранится в одном общем файле. Стандарт пространственных данных позволяет хранить все вместе, в частности объединяя точки, линии и области в один составной объект (коллекцию). Насколько я в курсе, стандарт реализован в том же PostGIS тыц. Просто QGIS пошел по стопам Арки, в которой исторически все это разделялось, хотя нынче смысла в этом нет.

AlexRomantsov
Завсегдатай
Сообщения: 316
Зарегистрирован: 24 мар 2022, 05:54
Репутация: 137
Ваше звание: хм, сам не знал
Откуда: Томск

Re: Какой формат слоя для хранения различной геометрии

Сообщение AlexRomantsov » 27 апр 2023, 11:57

Довольно много ГИС позволяют работать со слоем-солянкой (из точек, линий, полтигонов, коллекций, без геометрий вообще). И некоторые СУБД или форматы также предоставляют такую возможность, например Oracle Spatial может хранить в слое любую гремучую смесь из разных типов (там в заголовке объекта прописывается и класс геометрии, и система координат контура). Но на практике количество бардака, топологических и иных ошибок векторных описаний в таких системах сильно больше, чем в "классово чистых" ГИС (в которых слой - только полигоны). Сложнее стилизовать (стиль должен универсально описать все возможные варианты отображения точечных, линейных и полигональных объектов слоя. Сложнее автоподписывание (настройки подписей для точек, линий и полигонов ну очень разнятся). Есть проблемы например в поиске пересечений объектов таких слоев из точек, линий, полигонов. Неудобно обмениваться с другими ГИС. В общем, работать с простыми слоями одного класса геометрии - проще.

gamm
Гуру
Сообщения: 4058
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1055
Ваше звание: программист
Откуда: Казань

Re: Какой формат слоя для хранения различной геометрии

Сообщение gamm » 27 апр 2023, 13:54

Работать и хранить это о разном. Никто не мешает сделать выборку по типу. А "сборная солянка" - это последствия увлечения одно время объектовыми базами данных, там вообще все, что угодно, в объект пихали :mrgreen:
Для нормальной работы достаточно не мешать разные типы в одном объекте. "Чистота типа" в слое нужна только в топологических покрытиях, там иначе никак

konst555
Активный участник
Сообщения: 212
Зарегистрирован: 11 авг 2015, 16:13
Репутация: 45

Re: Какой формат слоя для хранения различной геометрии

Сообщение konst555 » 27 апр 2023, 16:56

gamm писал(а):
27 апр 2023, 13:54
Работать и хранить это о разном.
Действительно: работаем со слоями, а храним в таблицах (чаще всего).
gamm писал(а):
27 апр 2023, 10:42
Стандарт пространственных данных позволяет хранить все вместе, в частности объединяя точки, линии и области в один составной объект (коллекцию). Насколько я в курсе, стандарт реализован в том же PostGIS тыц.
В приведенных примерах даже в одной таблице каждая запись (строчка) имеет стандартную, а не гибридную геометрию. Сама геометрия в этом случае должна хранится в одном поле и количество атрибутов у записей должно быть одинаково (ограничение можно обойти связыванием таблиц, но это другая, часто печальная история).
Ну запихнули в один файл, запихнули в одну таблицу, но потом будем извлекать отдельно и каждую своим отрисовщиком выводить (смотрите свой пример).
Получается, как ни старайся, а данные с различными геометриями при хранении не смешиваются. Они разделены на таблицы или записи (исключение, наверное, древовидные базы?).
gamm писал(а):
27 апр 2023, 13:54
Для нормальной работы достаточно не мешать разные типы в одном объекте.
Если объектом считать выводимый слой, то полностью с вами согласен. Чаще всего так и происходит.
Бывает, конечно, что выводимый видимый слой формируется как совокупность отдельных геометрических объектов. Например, линия с точками - отметками пикетов. Но ведь можно заменить набором отрезков.
Возможно есть другие потребности в смешанных объектах, но все вполне решается.

Спасибо за обсуждение. Взгляды разные, но в целом все сходится.

gamm
Гуру
Сообщения: 4058
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1055
Ваше звание: программист
Откуда: Казань

Re: Какой формат слоя для хранения различной геометрии

Сообщение gamm » 27 апр 2023, 19:10

1. Вы невнимательно смотрели пример. Там последний - коллекция, как раз сиесь
2. Все объекты, разного типа, лежат в одном слое. Что в мапинфе, что в pistgis
3. Вы смешиваете внешнее представление и структуру хранения и обработки. Это разное. Слой - это единица хранения на уровне таблицы базы данных или файла (набора файлов). Внутри может лежать произвольное число тематических "слоев", различаемых как по типу объектов, так и по атрибутам. Никто не мешает вообще все поместить в один слой, а для вывода в виде изображения или обработки использовать запросы.

konst555
Активный участник
Сообщения: 212
Зарегистрирован: 11 авг 2015, 16:13
Репутация: 45

Re: Какой формат слоя для хранения различной геометрии

Сообщение konst555 » 28 апр 2023, 09:32

Спасибо за замечания. Некоторые вещи упустил, но это ничего не меняет.

1. После ниже приведенной фразы поставьте запятую и добавьте слово "коллекция". Далее смысл не меняется. Или вы сможете мне показать тип POINTPOLYGON(...)? Будет очень интересно и познавательно.
konst555 писал(а):
27 апр 2023, 16:56
В приведенных примерах даже в одной таблице каждая запись (строчка)

2.3. Извините, но со слоями у вас какая-то каша. Всегда считал, что в таблицах и базах данных можно хранить что угодно, а оказывается там есть слои. Причем не просто слои, а определенные картографией. Или чем?

Вопросы чисто риторические. Можно не отвечать. Написал потому, что творят люди в старом MapInfo кашу данных и оформления (слово стиль им не ведомо), называют свои рисунки картами и хотят, чтобы с ними работали и сделали из них базу данных. Надеюсь вы не из них. Делайте проще и ничего не выдумывайте лишнего.

Ответить

Вернуться в «QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость