Raster
=================

.. currentmodule::  axioma.core.dp

.. class:: Raster

	Абстрактный класс поддержки растров

	Унаследован от: 
	
		* :class:`~axioma.core.dp.RasterDataObject`

		.. py:method:: boundingRect()

			Ограничивающий прямоугольник в координатной системе карты

			:rtype: :class:`~PyQt5.QtCore.QRectF`

		.. py:method:: coordSystem()

			Координатная система растра

			:rtype: :class:`~axioma.cs.CoordSystem`

		.. py:method:: boundingGeoRect()

			Ограничивающий прямоугольник с координатной системой

			:rtype: :class:`~axioma.core.dp.GeoRect`

		.. py:method:: hasTransform()

			Присутствует ли матрица преобразования для данного растра (привязан ли растр к проекции)

			:return: True, если да. В противном случае False
			:rtype: :class:`bool`

		.. py:method:: getTransform()

			Возвращает матрицу преобразования, если таковая существует

			:rtype: :class:`~PyQt5.QtGui.QTransform`

		.. py:method:: canReproject(csTo)

			Существует ли возможность преобразования растра в проекцию csTo

			:param csTo: Целевая координатная система для проверки
			:type csTo: :class:`~axioma.cs.CoordSystem`
			:return: True, если да. В противном случае False
			:rtype: :class:`bool`

		.. py:method:: reprojectedImage(destRect, size, pixelToSourceCs)

			Возвращает перепроецированный растр в виде объекта :class:`~PyQt5.QtGui.QImage` для заданного участка с требуемой координатной системой

			:param destRect: Запрашиваемый участок карты
			:type destRect: :class:`~axioma.core.dp.GeoRect`
			:param size: Требуемый размер растра
			:type size: :class:`~PyQt5.QtCore.QSizeF`
			:param pixelToSourceCs: Матрица преобразования из координат карты в координаты растра
			:type  pixelToSourceCs:  :class:`~PyQt5.QtGui.QTransform`
			:rtype: :class:`~PyQt5.QtGui.QImage`

..
    !!!Открыть как реализуется BindingDefinition!!!

		.. py:method::hidden: canSaveRegistration()

			Есть возможность задания точек привязки

			:return: True, если да. В противном случае False
			:rtype: :class:`bool`

		.. py:method::hidden: saveRegistration(def)

			Сохранение данных о регистрации растра

			:param def: Данные о регистрации (точки привязки)
			:type def: :class:`~axioma.core.dp.BindingDefinition`

..

	
