CoordTransformer - Трансформация координат

class axipy.CoordTransformer

Класс для преобразования координат из одной СК в другую. При создании объекта трансформации в него передается исходная и целевая СК. После этого данный объект может использоваться для преобразования данных между этими СК.

Параметры:
  • cs_from – Исходная СК.

  • cs_to – Целевая СК.

Пример преобразования точки
from axipy import CoordSystem, CoordTransformer, Pnt, Rect

csLL = CoordSystem.from_prj("1, 104")
csMercator = CoordSystem.from_prj("10, 104, 7, 0")
inPoint = Pnt(10, 10)
transformer = CoordTransformer(csLL, csMercator)
outPoint = transformer.transform(inPoint)
print('Result point:', outPoint)
'''
>>> Result point: (1113194.9079327357 1111475.1028522244)
'''
outRect = transformer.transform(Rect(0,0,10,10))
print('Result rect:', outRect)
'''
>>> Result rect: (0.0 0.0) (1113194.9079327357 1111475.1028522244)
'''

Конструктор класса:

__init__(cs_from, cs_to)

Создает экземпляр класса.

Классовые методы:

proj_transform_definition(cs_from, cs_to)

Возвращает строку трансформации (pipeline) для преобразования между двумя СК, заданными в формате proj.

Методы:

transform(value)

Преобразовывает точки из исходной СК в целевую СК.

__init__(cs_from: Union[CoordSystem, str], cs_to: Union[CoordSystem, str])

Создает экземпляр класса.

classmethod proj_transform_definition(cs_from: str, cs_to: str) str

Возвращает строку трансформации (pipeline) для преобразования между двумя СК, заданными в формате proj.

Параметры:
  • cs_from – Строка с определением исходной СК в формате proj

  • cs_to – Строка с определением исходной СК в формате proj

Результат:

Строка с определением трансформации между двумя этими СК в формате proj

Пример получения строки трансформации
str_from = '+proj=longlat +ellps=WGS84 +no_defs'
str_to = '+proj=merc +ellps=GRS80 +no_defs'
print(CoordTransformer.proj_transform_definition(str_from, str_to))
'''
>>> proj=pipeline step proj=unitconvert xy_in=deg xy_out=rad step proj=merc lon_0=0 k=1 x_0=0 y_0=0 ellps=GRS80
'''
transform(value: Union[Pnt, List[Pnt], QPointF, QRectF, Rect, List[QPointF]]) Union[Pnt, Rect, List[Pnt]]

Преобразовывает точки из исходной СК в целевую СК.

Параметры:

value – Входное значение. Может быть точкой, массивом точек axipy.utl.Pnt или axipy.utl.Rect.

Результат:

Выходное значение. Тип зависит от входного и аналогичен ему.

Исключение:

RuntimeError – Ошибка выполнения преобразования.