Страница 1 из 1
					
				Какой формат слоя для хранения различной геометрии
				Добавлено: 21 апр 2023, 11:38
				 Alekseevich
				Здравствуйте.
Какой формат удобно использовать, чтобы работать со всеми типами геометрии в одном слое. И есть ли вообще такая возможность в QGIS? У меня точки,линии,полигоны..
Спасибо!
			 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 21 апр 2023, 12:04
				 Константин Силкин
				Добрый день! Таблицы MapInfo
			 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 21 апр 2023, 12:16
				 Alekseevich
				Спасибо.А при сохранении в шейп, в автомате создадутся файлы для точек,линий и т.д.?
			 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 21 апр 2023, 12:31
				 Константин Силкин
				Да, так задумано
			 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 21 апр 2023, 13:57
				 tikhpetr
				Можно также и в Global Mapper.
			 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 27 апр 2023, 09:06
				 konst555
				Скорее всего, ответ - никакой.
Есть много форматов файлов, которые позволяют в одном файле хранить различные типы геометрии (geopackage, tab). Но все-равно они останутся отдельными слоями как внутри файла, так и при работе в проекте. 
Возможно, есть какая-то программа совмещающая при работе в одном слое некоторые типы, но это явно нелогично и неразумно. Может некоторые назовут Косметический слой MapInfo? Но скорее всего внутри проекта разные геометрии хранятся раздельно.
Если нужно компактное хранение локальных данных, то используйте geopackage.
			 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 27 апр 2023, 10:42
				 gamm
				konst555 писал(а): ↑27 апр 2023, 09:06
Но скорее всего внутри проекта разные геометрии хранятся раздельно.
 
это не так, Мапинфа все хранит и обрабатывает вместе, в одном слое, геометрия хранится в одном общем файле. Стандарт пространственных данных позволяет хранить все вместе, в частности объединяя точки, линии и области в один составной объект (коллекцию). Насколько я в курсе, стандарт реализован в том же PostGIS 
тыц. Просто QGIS пошел по стопам Арки, в которой исторически все это разделялось, хотя нынче смысла в этом нет.
 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 27 апр 2023, 11:57
				 AlexRomantsov
				Довольно много ГИС позволяют работать со слоем-солянкой (из точек, линий, полтигонов, коллекций, без геометрий вообще). И некоторые СУБД или форматы также предоставляют такую возможность, например Oracle Spatial может хранить в слое любую гремучую смесь из разных типов (там в заголовке объекта прописывается и класс геометрии, и система координат контура). Но на практике количество бардака, топологических и иных ошибок векторных описаний в таких системах сильно больше, чем в "классово чистых" ГИС (в которых слой - только полигоны). Сложнее стилизовать (стиль должен универсально описать все возможные варианты отображения точечных, линейных и полигональных объектов слоя. Сложнее автоподписывание (настройки подписей для точек, линий и полигонов ну очень разнятся). Есть проблемы например в поиске пересечений объектов таких слоев из точек, линий, полигонов. Неудобно обмениваться с другими ГИС. В общем, работать с простыми слоями одного класса геометрии - проще.
			 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 27 апр 2023, 13:54
				 gamm
				Работать и хранить это о разном. Никто не мешает сделать выборку по типу. А "сборная солянка" - это последствия увлечения одно время объектовыми базами данных, там вообще все, что угодно, в объект пихали 

Для нормальной работы достаточно не мешать разные типы в одном объекте. "Чистота типа" в слое нужна только в топологических покрытиях, там иначе никак
 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 27 апр 2023, 16:56
				 konst555
				gamm писал(а): ↑27 апр 2023, 13:54
Работать и хранить это о разном.
 
Действительно: работаем со слоями, а храним в таблицах (чаще всего). 
gamm писал(а): ↑27 апр 2023, 10:42
Стандарт пространственных данных позволяет хранить все вместе, в частности объединяя точки, линии и области в один составной объект (коллекцию). Насколько я в курсе, стандарт реализован в том же PostGIS тыц. 
 
В приведенных примерах даже в одной таблице каждая запись (строчка) имеет стандартную, а не гибридную геометрию. Сама геометрия в этом случае должна хранится в одном поле и количество атрибутов у записей должно быть одинаково (ограничение можно обойти связыванием таблиц, но это другая, часто печальная история).
Ну запихнули в один файл, запихнули в одну таблицу, но потом будем извлекать отдельно и каждую своим отрисовщиком выводить (смотрите свой пример).
Получается, как ни старайся, а данные с различными геометриями при хранении не смешиваются. Они разделены на таблицы или записи (исключение, наверное, древовидные базы?).
gamm писал(а): ↑27 апр 2023, 13:54
Для нормальной работы достаточно не мешать разные типы в одном объекте.
 
Если объектом считать выводимый слой, то полностью с вами согласен. Чаще всего так и происходит.
Бывает, конечно, что выводимый видимый слой формируется как совокупность отдельных геометрических объектов. Например, линия с точками - отметками пикетов. Но ведь можно заменить набором отрезков. 
Возможно есть другие потребности в смешанных объектах, но все вполне решается. 
Спасибо за обсуждение. Взгляды разные, но в целом все сходится.
 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 27 апр 2023, 19:10
				 gamm
				1. Вы невнимательно смотрели пример. Там последний - коллекция, как раз сиесь
2. Все объекты, разного типа, лежат в одном слое. Что в мапинфе, что в pistgis
3. Вы смешиваете внешнее представление и структуру хранения и обработки. Это разное. Слой - это единица хранения на уровне таблицы базы данных или файла (набора файлов). Внутри может лежать произвольное число тематических "слоев", различаемых как по типу объектов, так и по атрибутам. Никто не мешает вообще все поместить в один слой, а для вывода в виде изображения или обработки использовать запросы.
			 
			
					
				Re: Какой формат слоя для хранения различной геометрии
				Добавлено: 28 апр 2023, 09:32
				 konst555
				Спасибо за замечания. Некоторые вещи упустил, но это ничего не меняет.
1. После ниже приведенной фразы поставьте запятую и добавьте слово "коллекция". Далее смысл не меняется. Или вы сможете мне показать тип POINTPOLYGON(...)?  Будет очень интересно и познавательно.
konst555 писал(а): ↑27 апр 2023, 16:56
В приведенных примерах даже в одной таблице каждая запись (строчка) 
 
 
2.3. Извините, но со слоями у вас какая-то каша. Всегда считал, что в таблицах и базах данных можно хранить что угодно, а оказывается там есть слои. Причем не просто слои, а определенные картографией. Или чем? 
Вопросы чисто риторические. Можно не отвечать. Написал потому, что творят люди в старом MapInfo кашу данных и оформления (слово стиль им не ведомо), называют свои рисунки картами и хотят, чтобы с ними работали и сделали из них базу данных. Надеюсь вы не из них. Делайте проще и ничего не выдумывайте лишнего.