Если есть свой ноутбук или ПК, то можно) вам шашечки или ехать?Елена2026 писал(а): ↑09 апр 2026, 08:41Спасибо за совет, но с АркГисом, боюсь, не получится, так как у нас в гос.организации нельзя устанавливать "крякнутые" программы и вообще всё проверяется ((( Ку-Гис, по идее, тоже нельзя использовать, но хоть это пока разрешили. Покупать лицензию точно не станут ради экспорта файлов... Вот проявляем изобретательность, как можем, чтобы имеющимися средствами ускорить работу.
Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
-
ustreb
- Интересующийся
- Сообщения: 43
- Зарегистрирован: 06 июл 2023, 04:41
- Репутация: 3
- Откуда: календарь
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
-
AlexRomantsov
- Завсегдатай
- Сообщения: 446
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 168
- Ваше звание: хм, сам не знал
- Откуда: Томск
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
забавный вариант пришел в голову:
таблица атрибутов, калькулятор выражений, создаем виртуальное поле (txt), подставляем выражение типа:
'Version 2
Delimiter ","
CoordSys NonEarth Units "m" Bounds (-3274.9999, 2524.9995) (2224.99976, -5225.0005)
Columns 1
None Char(5)
DATA
Region 1' ||
'
' ||
num_points( $geometry ) ||
'
' ||
replace(
replace(
replace( geom_to_wkt( $geometry), 'Polygon ((', '')
,',','\n')
,'))','')
Выполняем, появляется поле с содержимым mif файла. Затем экспорт слоя например в csv, и поискать как текстовый файл разделить на множество
Значение атрибута:
таблица атрибутов, калькулятор выражений, создаем виртуальное поле (txt), подставляем выражение типа:
'Version 2
Delimiter ","
CoordSys NonEarth Units "m" Bounds (-3274.9999, 2524.9995) (2224.99976, -5225.0005)
Columns 1
None Char(5)
DATA
Region 1' ||
'
' ||
num_points( $geometry ) ||
'
' ||
replace(
replace(
replace( geom_to_wkt( $geometry), 'Polygon ((', '')
,',','\n')
,'))','')
Выполняем, появляется поле с содержимым mif файла. Затем экспорт слоя например в csv, и поискать как текстовый файл разделить на множество
Значение атрибута:
-
Елена2026
- Интересующийся
- Сообщения: 19
- Зарегистрирован: 26 мар 2026, 19:26
- Репутация: 0
- Откуда: Россия
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
Интересная идея, спасибо! Это почти mif-файл получается))) Однако при разбивке векторного слоя в экспортируемых файлах только по 3 точки от всего полигона почему-то отображается. Однако, если бы хоть координаты выгружались, проще было бы вручную мифки делать копипастом, чем экспортировать с ку-гиса через привычный "экспорт - сохранить выбранные объекты как..."
-
Елена2026
- Интересующийся
- Сообщения: 19
- Зарегистрирован: 26 мар 2026, 19:26
- Репутация: 0
- Откуда: Россия
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
Сначала подумала, что дело в том, что малое количество символов задала, но нет - пробовала и миллион символов задавать. И что интересно: когда я ввожу выражение, сохраняю, то в столбце с новым атрибутом для каждого объекта появляется весь нужный текст со всеми координатами всех точек полигона. После того, как я делаю разбивку векторного слоя, экспортируются в csv уже урезанные координаты (3-4 точки от полигона). И в таблице атрибутов тоже исчезают все необходимые координаты, остаются урезанные. В чём же тут фокус?
-
gamm
- Гуру
- Сообщения: 4184
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: -445565593
- Ваше звание: программист
- Откуда: Казань
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
Последняя попытка ...
Железный Мозг говорит, что строку
Код: Выделить всё
err_code, err_msg = QgsVectorFileWriter.writeAsVectorFormatV3(Код: Выделить всё
err_code, _, _, err_msg = QgsVectorFileWriter.writeAsVectorFormatV3(-
AlexRomantsov
- Завсегдатай
- Сообщения: 446
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 168
- Ваше звание: хм, сам не знал
- Откуда: Томск
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
Если Вы сделали физическое поле для расчета (не виртуальное), его возможная длина зависит от формата слоя, и при сохранении текст обрежет.
Например в shp (dbf) максимум - 254 символа.
Либо надо хранить слой в современных форматах или базах данных (таких как GeoPackage), либо это поле делать виртуальным, вычисляемым (не сохраняемым).
Попробовал, виртуальное поле сохранилось в csv не обрезанным, в т.ч. через Разбить векторный слой
-
AlexRomantsov
- Завсегдатай
- Сообщения: 446
- Зарегистрирован: 24 мар 2022, 05:54
- Репутация: 168
- Ваше звание: хм, сам не знал
- Откуда: Томск
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
Да, и в примере моя шапка (Version 2 Delimiter "," ...) - с потолка, заменить на свои
-
Елена2026
- Интересующийся
- Сообщения: 19
- Зарегистрирован: 26 мар 2026, 19:26
- Репутация: 0
- Откуда: Россия
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
Спасибо!! Удалось экспортировать весь слой в csv, открыла с помощью блокнота - начинка как раз как у mif. Надо ещё с шапкой поэкспертиментировать и проверить, примет ли их Технокад. Многоконтурные земельные участки и с дырками вырезанными тоже надо ещё попробовать сделать) Благодарю за помощь!!AlexRomantsov писал(а): ↑10 апр 2026, 05:04Если Вы сделали физическое поле для расчета (не виртуальное), его возможная длина зависит от формата слоя, и при сохранении текст обрежет.
Например в shp (dbf) максимум - 254 символа.
Либо надо хранить слой в современных форматах или базах данных (таких как GeoPackage), либо это поле делать виртуальным, вычисляемым (не сохраняемым).
Попробовал, виртуальное поле сохранилось в csv не обрезанным, в т.ч. через Разбить векторный слой
-
Елена2026
- Интересующийся
- Сообщения: 19
- Зарегистрирован: 26 мар 2026, 19:26
- Репутация: 0
- Откуда: Россия
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
[/quote]
Последняя попытка ...
Железный Мозг говорит, что строку
нужно заменить на
[/quote]
Последняя попытка ...
Железный Мозг говорит, что строку
Код: Выделить всё
err_code, err_msg = QgsVectorFileWriter.writeAsVectorFormatV3(Код: Выделить всё
err_code, _, _, err_msg = QgsVectorFileWriter.writeAsVectorFormatV3(Благодарю! В этот раз Питон ошибку не выдал, сделал экспорт в назначенную папку. Но! Файлы Кугис выгрузил в форматах .tab, .map, .dat, .id, а mif просто включил в название файла (например, 62_12_0010101_4.mif.map). Не любит Кугис формат mif
-
Елена2026
- Интересующийся
- Сообщения: 19
- Зарегистрирован: 26 мар 2026, 19:26
- Репутация: 0
- Откуда: Россия
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
Благодарю! В этот раз Питон ошибку не выдал, сделал экспорт в назначенную папку. Но! Файлы Кугис выгрузил в форматах .tab, .map, .dat, .id, а mif просто включил в название файла (например, 62_12_0010101_4.mif.map). Не любит Кугис формат mifПоследняя попытка ...
Железный Мозг говорит, что строкунужно заменить наКод: Выделить всё
err_code, err_msg = QgsVectorFileWriter.writeAsVectorFormatV3(Код: Выделить всё
err_code, _, _, err_msg = QgsVectorFileWriter.writeAsVectorFormatV3(
-
gamm
- Гуру
- Сообщения: 4184
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: -445565593
- Ваше звание: программист
- Откуда: Казань
Re: Пакетный экспорт отдельных контуров в формате mif из векторного слоя в программе Q-gis
Мда ... странно и загадочно.
Железный Мозг говорит, что нужно указать другой драйвер
driverName = "MapInfo MIF" вместо driverName = "MapInfo file"
Железный Мозг говорит, что нужно указать другой драйвер
driverName = "MapInfo MIF" вместо driverName = "MapInfo file"
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 29 гостей