HeightDataObjectSupport
==========================

.. currentmodule:: axioma.core.dp

.. class:: HeightDataObjectSupport

	Абстрактный класс получения высот для гридов

	От него наследуются:
	
	* :class:`~axioma.plugin.gdal.LazyGdalDataObject`
	
		.. py:method:: hasZCoord()

			Поддерживается ли координата с высотами

			:rtype: :class:`bool`

		.. py:method:: getZcoord(pos, cs)

			Получение высоты по заданным координатам

			:param pos: Точка - координата, для которой необходимо определить высоту
			:type pos: :class:`~PyQt5.QtCore.QPointF`
			:param cs: Координатная система, с которой передается запрашиваемая точка
			:type cs: :class:`~axioma.cs.CoordSystem`
			:return: Возвращается два параметра: высота или 0, если значение недоступно или определено неверно и успешность выполнения операции. Подробнее см. пример ниже
			:rtype: :class:`float`

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

  .. code-block:: python
  
    from PyQt5.QtCore import QPointF
    # Для того, чтобы грид определялся как Gdal грид
    from axioma.plugin.gdal import *

    json = {
        "src": "gelengrid.mig"
    }

    raster = axioma.core.open_json(json)
    if raster is not None and raster.hasZCoord():
        res = raster.getZcoord(QPointF(7427062, 4940898), raster.coordSystem())
        print("Высота равна {}, успешность выполнения - {}".format(res[0], res[1]))


 
