Страница 1 из 1

Получение информации о стилях .TAB

Добавлено: 27 мар 2020, 10:52
Snef
Здравствуйте!
Необходимо программно (в .NET приложении) считать слой карты в TAB формате (+ ID, DAT, MAP) с сохранением стилей.

Пример 1: есть слой с точками и на каждой из них изображение автобусной остановки.
Когда я открываю слой в MapInfo, то эти точки отображаются с картинками (см скриншот 1), но программно считать этот слой и получить информацию о этих картинках не получается.
Изображение

Пример 2: есть слой с полигонами (см скриншот 2).
Когда я открываю в MapInfo, то они заполнены зеленым цветом, но программно информацию о этом цвете не получить.
Изображение

Попробовал пару бесплатных вариантов: AsposGIS, GDAL\OGR, но они позволяются считать только данные о геометрии.

Вопрос: Каким образом можно программно получить данные о стиле объектов TAB файла: цвет заливки, жирность, тип линии, изображение маркера и т.д? Может ли оффициальный MapExtreme SDK считывать эту информацию?

Re: Получение информации о стилях .TAB

Добавлено: 27 мар 2020, 12:27
Игорь Белов
Snef писал(а):
27 мар 2020, 10:52
Попробовал пару бесплатных вариантов: AsposGIS, GDAL\OGR, но они позволяются считать только данные о геометрии.
Допустим, надо конвертировать zx.TAB в шейп-файл с информацией о стилях объектов:

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

ogr2ogr -f "ESRI Shapefile" -sql "SELECT *, OGR_STYLE FROM zx" zx.shp zx.TAB

Re: Получение информации о стилях .TAB

Добавлено: 27 мар 2020, 21:46
qosmos
Вопрос: Каким образом можно программно получить данные о стиле объектов TAB файла
В питоне работает вот такой метод для Feature:

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

style = feature.GetStyleString()
Думаю, в шарпе он тоже есть.

Re: Получение информации о стилях .TAB

Добавлено: 30 мар 2020, 09:15
Snef
Огромное спасибо за ответ! Да, StyleString могу получить в формате:
SYMBOL(a:0,c:#ff0000,s:18pt,id:"mapinfo-sym-80,ogr-sym-1")
Но изображение mapinfo-sym-80, как я понимаю "зашито" в MapInfo ?

Re: Получение информации о стилях .TAB

Добавлено: 30 мар 2020, 18:37
Игорь Белов
Snef писал(а):
30 мар 2020, 09:15
изображение mapinfo-sym-80, как я понимаю "зашито" в MapInfo ?
Именно так. Смущает только число 80, поскольку в моей версии MapInfo внутренняя таблица символов ограничена номером 67.