TabFile - Файл TAB

class axipy.TabFile

Класс поддержки файла TAB формата MapInfo.

Методы:

generate_tab(data_object, out_file[, ...])

Генерирует файл TAB для переданного открытого объекта, если такую возможность поддерживает провайдер данных.

suggest_tab_name(data_object)

Сервисная функция.

generate_tab(data_object: DataObject, out_file: str, override: bool = True, linked_file: bool = True) bool

Генерирует файл TAB для переданного открытого объекта, если такую возможность поддерживает провайдер данных.

Параметры:
  • data_object – открытый объект данных, для которого необходимо создать файл TAB.

  • out_file – Имя файла c расширением tab. Как вариант, можно использовать результат suggest_tab_name().

  • override – Перезаписывать файл. Если установлено False и файл существует, будет выброшено исключение FileExistsError

  • linked_file – Если файл генерируется для СУБД, и при установке значения True будет создан связанный файл

Результат:

Возвращает True, если успешно.

Создание TAB файла для открытой таблицы или растра:

filepath = 'world.tif'
out_file_name = 'world.tab'
tab = TabFile()
tab.generate_tab(table, out_file_name)

Создание TAB файла для открытого источника тайлового сервиса:

prj_mercator = (
    'Earth Projection 10, 104, "m", 0 '
    'Bounds (-20037508.34, -20037508.34) (20037508.34, 20037508.34)'
)
osm_raster = axipy.provider_manager.tms.open(
    'http://maps.axioma-gis.ru/osm/{LEVEL}/{ROW}/{COL}.png',
    prj=prj_mercator
)
tab = axipy.TabFile()
out_file_name = tab.suggest_tab_name(osm_raster)
tab.generate_tab(osm_raster, out_file_name)

Загрузка данных из БД PostgreSQL в виде связанной таблицы:

definition = provider_manager.postgre.get_source(
    host='localhost',
    db_name='test',
    user='test',
    password='pass',
    dataobject='world'
)
table = provider_manager.open(definition)
out_file_name = tab.suggest_tab_name(table)
tab = TabFile()
tab.generate_tab(table, out_file_name, linked_file = True)
suggest_tab_name(data_object: DataObject) str

Сервисная функция.

Предлагает наименование TAB файла для объекта данных. Результат можно использовать в методе generate_tab() в качестве имени выходного файла.