Модуль работы с растрами raster
================================

.. py:module:: axioma.raster

Данный модуль предоставляет возможность производить регистрацию и трансформацию растров


Список классов
--------------

.. toctree::
	:glob:

	raster/*


.. currentmodule:: axioma.raster

.. class:: Method

	.. csv-table:: Методы трансформации:
		:header: Наименование, Значение, Описание

		PolinomialOrder1, 1, Сплайновый
		PolinomialOrder2, 2, Полиномиальный 1 порядка
		PolinomialOrder3, 3, Полиномиальный 2 порядка
		ThinPlateSpline,  4, Полиномиальный 3 порядка

.. class:: GDALResampleAlg

	.. csv-table:: Методы сглаживания:
		:header: Наименование, Значение, Описание

		GRA_NearestNeighbour	,  0, Ближайший
		GRA_Bilinear		,  1, Билинейный
		GRA_Cubic		,  2, Кубический
		GRA_CubicSpline		,  3, Кубический сплайн
		GRA_Lanczos		,  4, Ланцоша
		GRA_Average		,  5, Средний
		GRA_Mode		,  6, Наиболее частый
		GRA_Max			,  8, Максимальный
		GRA_Min			,  9, Минимальный
		GRA_Med			, 10, Медианный
		GRA_Q1			, 11, Первый квартиль
		GRA_Q3			, 12, Третий квартиль

.. function:: availableTransformMethods

	Доступные алгоритмы трансформации. Подробнее: :class:`Method`

	:rtype: :class:`dict` [:class:`~axioma.raster.Method`, :class:`str`]

	:return: словарь, ключи которого соответствуют идентификаторам \
		методов, а значения - наименования методов в виде строки

Пример использования

.. code-block:: python
	:name: sample_code_available_transform_methods
	:caption: Пример использования:

	from axioma import raster

	methods = raster.availableTransformMethods()
	print(methods)
	>>> {1: 'Полиномиальный 1 порядка', 2: 'Полиномиальный 2 порядка', 3: 'Полиномиальный 3 порядка', 4: 'Сплайновый'}


.. function:: availableResampleMethods

	Доступные методы сглаживания. Подробнее: :class:`GDALResampleAlg`

	:rtype: :class:`dict` [:class:`~axioma.raster.GDALResampleAlg`, :class:`str`]

.. code-block:: python
	:name: sample_code_available_resample_methods
	:caption: Пример использования:

	from axioma import raster

	resamples = raster.availableResampleMethods()
	print(resamples)
	>>> {0: 'Ближайший', 1: 'Билинейный', 2: 'Кубический', 3: 'Кубический сплайн',
	4: 'Ланцоша', 5: 'Средний', 6: 'Наиболее частый', 8: 'Максимальный',
	9:'Минимальный', 10: 'Медианный', 11: 'Первый квартиль', 12: 'Третий квартиль'}

.. function:: availableFormats

	Доступные форматы

	:rtype: :class:`dict` [:class:`str`, :class:`str`]

	:return: словарь, ключи которого соответствуют наименованию формата, \
		a значения - расширение формата

.. code-block:: python
	:name: sample_code_available_formats
	:caption: Пример использования:

	formats = raster.availableFormats()
	print(formats)
	>>> {'BMP': 'bmp', 'JPEG': 'jpg', 'PNG': 'png', 'GTiff': 'tif'}

.. function:: availableCompression

	Доступные типы компрессии

	Только для формата GTiff; игнорируется \
	для других форматов. Подробнее в описании \
	функции :func:`availableFormats`

	:rtype: :class:`list` [:class:`str`]

	:return: Список типов компрессии

.. code-block:: python
	:name: sample_code_available_compression
	:caption: Пример использования:

	compression = raster.availableCompression()
	print(compression)
	>>> ['NONE', 'PACKBITS', 'LZW', 'DEFLATE']
