From 189955fbb0c36a81737a40f84e03df323e5f9356 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Tue, 11 Dec 2018 16:03:21 +0100 Subject: API: add setters for Laborde Oblique Mercator, and add mapping to WKT1 --- include/proj/coordinateoperation.hpp | 9 +++++++++ include/proj/internal/coordinateoperation_constants.hpp | 15 +++++---------- 2 files changed, 14 insertions(+), 10 deletions(-) (limited to 'include') diff --git a/include/proj/coordinateoperation.hpp b/include/proj/coordinateoperation.hpp index f5cdbba0..4ab25d86 100644 --- a/include/proj/coordinateoperation.hpp +++ b/include/proj/coordinateoperation.hpp @@ -1082,6 +1082,15 @@ class PROJ_GCC_DLL Conversion : public SingleOperation { const common::Length &eastingProjectionCentre, const common::Length &northingProjectionCentre); + PROJ_DLL static ConversionNNPtr + createLabordeObliqueMercator(const util::PropertyMap &properties, + const common::Angle &latitudeProjectionCentre, + const common::Angle &longitudeProjectionCentre, + const common::Angle &azimuthInitialLine, + const common::Scale &scale, + const common::Length &falseEasting, + const common::Length &falseNorthing); + PROJ_DLL static ConversionNNPtr createInternationalMapWorldPolyconic( const util::PropertyMap &properties, const common::Angle ¢erLong, const common::Angle &latitudeFirstParallel, diff --git a/include/proj/internal/coordinateoperation_constants.hpp b/include/proj/internal/coordinateoperation_constants.hpp index d5495193..2e29e767 100644 --- a/include/proj/internal/coordinateoperation_constants.hpp +++ b/include/proj/internal/coordinateoperation_constants.hpp @@ -276,11 +276,6 @@ static const ParamMapping paramLonCentreLonCenterLonc = { EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, WKT1_LONGITUDE_OF_CENTER, common::UnitOfMeasure::Type::ANGULAR, lonc}; -static const ParamMapping paramLatCentreLatOrigin = { - EPSG_NAME_PARAMETER_LATITUDE_PROJECTION_CENTRE, - EPSG_CODE_PARAMETER_LATITUDE_PROJECTION_CENTRE, WKT1_LATITUDE_OF_ORIGIN, - common::UnitOfMeasure::Type::ANGULAR, lat_0}; - static const ParamMapping paramAzimuth = { EPSG_NAME_PARAMETER_AZIMUTH_INITIAL_LINE, EPSG_CODE_PARAMETER_AZIMUTH_INITIAL_LINE, WKT1_AZIMUTH, @@ -478,16 +473,16 @@ static const ParamMapping *const paramsLoxim[] = { static const ParamMapping paramLonCentre = { EPSG_NAME_PARAMETER_LONGITUDE_PROJECTION_CENTRE, - EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, nullptr, + EPSG_CODE_PARAMETER_LONGITUDE_PROJECTION_CENTRE, WKT1_LONGITUDE_OF_CENTER, common::UnitOfMeasure::Type::ANGULAR, lon_0}; static const ParamMapping paramLabordeObliqueMercatorAzimuth = { EPSG_NAME_PARAMETER_AZIMUTH_INITIAL_LINE, - EPSG_CODE_PARAMETER_AZIMUTH_INITIAL_LINE, nullptr, + EPSG_CODE_PARAMETER_AZIMUTH_INITIAL_LINE, WKT1_AZIMUTH, common::UnitOfMeasure::Type::ANGULAR, "azi"}; static const ParamMapping *const paramsLabordeObliqueMercator[] = { - ¶mLatCentreLatOrigin, + ¶mLatCentreLatCenter, ¶mLonCentre, ¶mLabordeObliqueMercatorAzimuth, ¶mScaleFactorInitialLine, @@ -758,8 +753,8 @@ static const MethodMapping methodMappings[] = { "eqearth", nullptr, paramsLonNatOrigin}, {EPSG_NAME_METHOD_LABORDE_OBLIQUE_MERCATOR, - EPSG_CODE_METHOD_LABORDE_OBLIQUE_MERCATOR, nullptr, "labrd", nullptr, - paramsLabordeObliqueMercator}, + EPSG_CODE_METHOD_LABORDE_OBLIQUE_MERCATOR, "Laborde_Oblique_Mercator", + "labrd", nullptr, paramsLabordeObliqueMercator}, }; -- cgit v1.2.3