aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2018-12-11 16:03:21 +0100
committerEven Rouault <even.rouault@spatialys.com>2018-12-11 16:27:10 +0100
commit189955fbb0c36a81737a40f84e03df323e5f9356 (patch)
tree3b716b0820883f2cd1cccbde3ad69220c3b51cd9 /include
parentc2c2e5d7f22f3c44c188200717236cf23547ac6f (diff)
downloadPROJ-189955fbb0c36a81737a40f84e03df323e5f9356.tar.gz
PROJ-189955fbb0c36a81737a40f84e03df323e5f9356.zip
API: add setters for Laborde Oblique Mercator, and add mapping to WKT1
Diffstat (limited to 'include')
-rw-r--r--include/proj/coordinateoperation.hpp9
-rw-r--r--include/proj/internal/coordinateoperation_constants.hpp15
2 files changed, 14 insertions, 10 deletions
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 &centerLong,
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[] = {
- &paramLatCentreLatOrigin,
+ &paramLatCentreLatCenter,
&paramLonCentre,
&paramLabordeObliqueMercatorAzimuth,
&paramScaleFactorInitialLine,
@@ -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},
};