Я пытаюсь закодировать преобразование из локальной трехмерной декартовой системы (которая присоединена к движущейся платформе) в геоцентрическую систему координат (CRS), используя модуль ссылок из Geotools, В руководстве пользователя geotools упоминается «Контекстно-локальная система координат (для строительных проектов или движущихся объектов)», которая звучит в точности так, как мне нужен CRS. Однако в руководстве и документации Geotools неясно, как определить происхождение и ориентацию такого CRS.
Geotools предоставляет Конструктор для создания EngineeringCRS, который требует EngineeringDatum в качестве параметра. Этот Datum может быть создан с использованием DatumFactory , однако в этом методе не указано, как определять «AnchorPoint» CRS, который, как я предполагаю, является источником.
Я бы хотел сделать что-то подобное
EngineeringDatum bodyFrameOrigin = new DefaultEngineeringDatum(/* specify name, origin, orientation,and baseCRS */)
EngineeringCRS bodyFrame = DefaultEngineeringCRS("bodyFrame", bodyFrameOrigin, DefaultCarthesianCS.GENERIC_3D);
Я ожидаю, что вызов bodyFrame.getDatum().getAnchorPoint()
вернет строку, описывающую источник. Кроме того, я ожидаю, что CRS.getTransform(bodyFrame, WGS84_3D)
вернет действительное преобразование координат между системами координат.