Проблемы с импортом из Mapinfo

Здесь нужно сообщать об ошибках в QGIS, с подробным описанием шагов и версии ПО.
Ответить
Аватара пользователя
Institor
Активный участник
Сообщения: 243
Зарегистрирован: 22 апр 2011, 08:10
Репутация: 27
Откуда: Хабаровск

Проблемы с импортом из Mapinfo

Сообщение Institor » 20 янв 2015, 04:45

Такой темы не нашел, решил создать тут. Проверялось в qgis 2.4.0, 2.0.1
Есть файл (см. вложение). Начало такое:

Код: Выделить всё

Version 300
Charset "WindowsCyrillic"
Delimiter ","
CoordSys NonEarth Units "m" Bounds (3000000, 200000) (3500000, 700000)
Columns 16
  КН Char(30)
  ЕЗ Char(30)
  Адрес Char(200)
  Категория Char(5)
  Использование Char(200)
  Площадь Char(20)
  Погрешность Char(10)
  Код_площ Char(5)
  Стоимость Char(20)
  Права Char(200)
  Обременения Char(200)
  Дата Char(10)
  Статус Char(5)
  Собственники Char(200)
  Арендаторы Char(200)
  УО Char(20)
Data

none
Region 1
5
3206839.94 454002.14
3206849.34 454008.11
3206873.61 453972.46
3206860.62 453966.19
3206839.94 454002.14
  Pen (20,2,255)
  Brush (1,0,16777215)

...
...
и так далее (куча объектов). Фишка в том, что первая запись - NONE (у объекта нет геометрии). Это разрешено стандартом (по крайней мере не встречал запрета, пишут так:
The data section of the MIF file follows the header and must be introduced with
DATA on a single line:
DATA
The data section of the MIF file can have any number of graphical primitives, one for
each graphic object. MapInfo matches up entries in the MIF and MID files, associating
the first object in the MIF file with the first row in the MID file, the second object in the
MIF file with the second row in the MID file, and so on.
When there is no graphic object corresponding to a particular row in the MID file, a
“blank” object (NONE) must be written as a place holder in the corresponding place
in the MIF file.
NONE
QGIS считает такой файл не содержащим геометрии вообще. Открывается как обычная таблица атрибутов.
Интересно, что то же самое происходит, если открывать родной Mapinfo TAB, полученный импортом этого mif в Mapinfo)
ogr2ogr конвертирует нормально, только ругается на что-то крякозябрами ("Normalized/laundered feild name бла бла бла" - обрезает имя поля, похоже.)
Если открыть mif блокнотом и переместить NONE, к примеру, на второе место - все работает нормально. (Соответственно, надо первую и вторую строчки в MID поменять местами).
Час сидел, не мог понять, почему одни файлы открываются нормально, другие нет. Пока нет возможности обновиться до последней версии, может, кто-нибудь проверит у себя?
Вложения
27-17-0400506 КПТ.zip
Выписка в формате mif
(8.94 КБ) 301 скачивание

Slinger
Гуру
Сообщения: 879
Зарегистрирован: 17 июн 2010, 23:14
Репутация: 207
Откуда: Москва

Re: Проблемы с импортом из Mapinfo

Сообщение Slinger » 20 янв 2015, 10:37

Подтверждаю баг. 2.7.0-Master, билд кугиса 5acd35e. Если первый объект с отсутствием геометрии, то ничего не читает. Если убить None из .mif'a (и первую строчку из .mid'a), то всё открывается нормально.

MI импортирует .mif и показывает всё нормально.

Донецков
Гуру
Сообщения: 3058
Зарегистрирован: 19 май 2010, 19:44
Репутация: 189

Re: Проблемы с импортом из Mapinfo

Сообщение Донецков » 20 янв 2015, 13:58

А как QGIS откроет таблицу (tab), где первый объект без графики, или как вариант, открытие mif/mif, где без графики любой другой, а не первый объект?

Аватара пользователя
Institor
Активный участник
Сообщения: 243
Зарегистрирован: 22 апр 2011, 08:10
Репутация: 27
Откуда: Хабаровск

Re: Проблемы с импортом из Mapinfo

Сообщение Institor » 20 янв 2015, 15:25

TAB, импортированный из этого mif'a - не открывает. Если первый объект с графикой, остальные могут быть какие угодно, qgis все открывает.
Если открыть mif блокнотом и переместить NONE, к примеру, на второе место - все работает нормально. (Соответственно, надо первую и вторую строчки в MID поменять местами).

Ответить

Вернуться в «Ошибки QGIS»

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

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