CoordTransform

class axioma.cs.CoordTransform

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

CoordTransform(cs_from, cs_to)

Конструктор

Параметры:
forward(p_in)

Прямое преобразование точки из sourceCoordSystem в destinationСoordSystem

Параметры:p_in (QPointF) – входное значение
Результат:выходное значение
Тип результата:QPointF
Исключение:RuntimeExceptionRuntimeException - ошибка выполнения преобразования
forward(r_in)

Прямое преобразование прямоугольника из sourceCoordSystem в destinationСoordSystem

Параметры:r_in (QRectF) – входное значение
Результат:выходное значение
Тип результата:QRectF
Исключение:RuntimeExceptionRuntimeException - ошибка выполнения преобразования
forward(list_in)

Прямое преобразование массива точек из sourceCoordSystem в destinationСoordSystem

Параметры:list_in (list [QPointF]) – входное значение
Результат:выходное значение
Тип результата:list [QPointF]
Исключение:RuntimeExceptionRuntimeException - ошибка выполнения преобразования
forwardMesh(r_in, pointCount = 100)

Прямое преобразование прямоугольника из sourceCoordSystem в destinationСoordSystem на базе сетки

Параметры:
  • r_in (QRectF) – входное значение
  • pointCount (int) – количество дополнительных точек на ребре по X. На базе этих дополнительных точек строится сетка, которая в виде входного параметра передается вместо rect
Результат:

выходное значение

Тип результата:

QRectF

Исключение:

RuntimeExceptionRuntimeException - ошибка выполнения преобразования

inverse(p_in, p_out)

Обратное преобразование точки из destinationСoordSystem в sourceCoordSystem

Параметры:p_in (QPointF) – входное значение
Результат:выходное значение
Тип результата:QPointF
Исключение:RuntimeExceptionRuntimeException - ошибка выполнения преобразования
inverse(r_in)

Обратное преобразование прямоугольника из destinationСoordSystem в sourceCoordSystem

Параметры:r_in (QRectF) – входное значение
Результат:выходное значение
Тип результата:QRectF
Исключение:RuntimeExceptionRuntimeException - ошибка выполнения преобразования
inverse(list_in)

Обратное преобразование массива точек из destinationСoordSystem в sourceCoordSystem

Параметры:list_in (list [QPointF]) – входное значение
Результат:выходное значение
Тип результата:list [QPointF]
Исключение:RuntimeExceptionRuntimeException - ошибка выполнения преобразования
inverseMesh(r_in, pointCount = 100)

Обратное преобразование прямоугольника из destinationСoordSystem в sourceCoordSystem на базе сетки

Параметры:
  • r_in (QRectF) – входное значение
  • pointCount (int) – количество дополнительных точек на ребре по X. На базе этих дополнительных точек строится сетка, которая в виде входного параметра передается вместо rect
Результат:

выходное значение

Тип результата:

QRectF

Исключение:

RuntimeExceptionRuntimeException - ошибка выполнения преобразования

sourceCoordSystem()

Исходная координатная система

Результат:Ссылка на переданную в конструкторе исходную КС
Тип результата:CoordSystem
destinationСoordSystem()

Целевая координатная система

Результат:Ссылка на переданную в конструкторе целевую КС
Тип результата:CoordSystem
isEqualsCS()

Проверка факта преобразования при приведении операций

Результат:True, если исходная и целевая КС идентичны
Тип результата:bool

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

from axioma.cs import *
from PyQt5.QtCore import *

cs_latlon = CoordSysFactory.defaultCoordSysFactory().createFromEPSG(4326)
cs_merc = CoordSysFactory.defaultCoordSysFactory().createFromPRJ("Earth Projection 12, 62, \"m\", 0")

p_in = QPointF(45.0, 45.0)
transform = CoordTransform(cs_latlon, cs_merc)
p_out = transform.forward(p_in)
print ("p_out = (%f, %f)" % (p_out.x(), p_out.y()))