CoordSysFactory

class axioma.cs.CoordSysFactory

Данный класс является фабрикой для создания координатных систем и проекций

static defaultCoordSysFactory()

Экземпляр класса, определенный по-умолчанию

Результат:Созданный при инициализации приложения экземпляр
Тип результата:CoordSysFactory
LatLongCoordSystem()

Инициализированная координатная система Широта/Долгота

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

Координатная система, установленная как текущая

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

Установка текущей координатной системы

Параметры:coordSystem (CoordSystem) – входное значение
createFromPRJ(prj_str)

Создание координатной системы из строки MapBasic

Параметры:prj_str (str) – строка MapBasic
Результат:Результирующая координатная система. None, если результат отрицательный
Тип результата:CoordSystem
createFromProj4(proj4_str)

Создание координатной системы из строки proj4

Параметры:proj4_str (str) – строка proj4
Результат:Результирующая координатная система. None, если результат отрицательный
Тип результата:CoordSystem
createFromEPSG(epsg)

Создание координатной системы из EPSG

Параметры:epsg (int) – Стандартное значение EPSG
Результат:Результирующая координатная система. None, если результат отрицательный
Тип результата:CoordSystem
createFromOracleSRID(srid)

Создание координатной системы на основе внутреннего кода РСУБД Oracle

Параметры:srid (int) – Код
Результат:Результирующая координатная система. None, если результат отрицательный
Тип результата:CoordSystem
createFromWKT(wkt_str)

Создание координатной системы из строки WKT

Параметры:wkt_str (str) – строка WKT
Результат:Результирующая координатная система. None, если результат отрицательный
Тип результата:CoordSystem
createNonEarth(linearUnitId)

Создание декартовой координатной системы

Параметры:linearUnitId (int) – код единицы измерения координатной системы. См. LinearUnit
Результат:Результирующая координатная система. None, если результат отрицательный
Тип результата:CoordSystem
userCoordSystem()

Контейнер хранения пользовательских координатных систем

Тип результата:UserCoordSystem
unitById(codeMapinfo)

Получение объекта единиц измерения расстояний по его идентификатору

Параметры:codeMapinfo (UnitCode) – Код единицы измерения
Тип результата:LinearUnit
areaUnitById(codeMapinfo)

Получение объекта единиц измерения площадей по его идентификатору

Параметры:codeMapinfo (UnitCode) – Код единицы измерения
Тип результата:LinearUnit

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

from axioma.cs import *

# Инициализация по значению EPSG
cs_latlon = CoordSysFactory.defaultCoordSysFactory().createFromEPSG(4326)
if cs_latlon is not None:
  print ("Ok: %s" % cs_latlon.description())
# Инициализация координатной системы из строки MapBasic PRJ
cs_merc = CoordSysFactory.defaultCoordSysFactory().createFromPRJ("Earth Projection 12, 62, \"m\", 0")
# Инициализация координатной системы из строки Proj4
robin_proj4_str = "+proj=robin +lon_0=0 +x_0=0 +y_0=0 +ellps=clrk66 +towgs84=-8,160,176,-0,-0,-0,0 +units=m +no_defs"
robin_proj4 = CoordSysFactory.defaultCoordSysFactory().createFromProj4(robin_proj4_str)
# Инициализация координатной системы из строки WKT
ll_wkt_str = "GEOGCS[\"unnamed\",DATUM[\"WGS_1984\",SPHEROID[\"WGS 84\",6378137,298.257223563],TOWGS84[0,0,0,-0,-0,-0,0]],PRIMEM[\"Greenwich\",0],UNIT[\"degree\",0.0174532925199433]]"
ll_wkt = CoordSysFactory.defaultCoordSysFactory().createFromWKT(ll_wkt_str)
# Получение единицы измерения расстояния по ее идентификатору
unit = CoordSysFactory.defaultCoordSysFactory().unitById(LinearUnit.MIUnit_Kilometer)