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()
в качестве имени выходного файла.