From 6418ba16669bf50f7b813e0c0cb818746254aab8 Mon Sep 17 00:00:00 2001 From: Kristian Evers Date: Thu, 3 Jan 2019 15:28:04 +0100 Subject: Rename PJ_IO_UNITS_ANGULAR to PJ_IO_UNITS_RADIANS This communicates better what the unit actually is. It also opens the door for potentially adding PJ_IO_UNITS_DEGREES in the future in order to coordinates in degrees correctly as well. --- src/conversions/axisswap.cpp | 4 ++-- src/conversions/cart.cpp | 2 +- src/conversions/geoc.cpp | 4 ++-- src/conversions/geocent.cpp | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) (limited to 'src/conversions') diff --git a/src/conversions/axisswap.cpp b/src/conversions/axisswap.cpp index 18d13f8c..97c8899a 100644 --- a/src/conversions/axisswap.cpp +++ b/src/conversions/axisswap.cpp @@ -282,8 +282,8 @@ PJ *CONVERSION(axisswap,0) { } if (pj_param(P->ctx, P->params, "tangularunits").i) { - P->left = PJ_IO_UNITS_ANGULAR; - P->right = PJ_IO_UNITS_ANGULAR; + P->left = PJ_IO_UNITS_RADIANS; + P->right = PJ_IO_UNITS_RADIANS; } else { P->left = PJ_IO_UNITS_WHATEVER; P->right = PJ_IO_UNITS_WHATEVER; diff --git a/src/conversions/cart.cpp b/src/conversions/cart.cpp index f8ec256b..d9aea9b8 100644 --- a/src/conversions/cart.cpp +++ b/src/conversions/cart.cpp @@ -213,7 +213,7 @@ PJ *CONVERSION(cart,1) { P->inv3d = geodetic; P->fwd = cart_forward; P->inv = cart_reverse; - P->left = PJ_IO_UNITS_ANGULAR; + P->left = PJ_IO_UNITS_RADIANS; P->right = PJ_IO_UNITS_CARTESIAN; return P; } diff --git a/src/conversions/geoc.cpp b/src/conversions/geoc.cpp index 66ca6199..e0ca3df3 100644 --- a/src/conversions/geoc.cpp +++ b/src/conversions/geoc.cpp @@ -51,8 +51,8 @@ static PJ *CONVERSION(geoc, 1) { P->inv4d = inverse; P->fwd4d = forward; - P->left = PJ_IO_UNITS_ANGULAR; - P->right = PJ_IO_UNITS_ANGULAR; + P->left = PJ_IO_UNITS_RADIANS; + P->right = PJ_IO_UNITS_RADIANS; P->is_latlong = 1; return P; diff --git a/src/conversions/geocent.cpp b/src/conversions/geocent.cpp index c8d2d486..31f1a30b 100644 --- a/src/conversions/geocent.cpp +++ b/src/conversions/geocent.cpp @@ -56,7 +56,7 @@ PJ *CONVERSION (geocent, 0) { P->y0 = 0.0; P->inv = inverse; P->fwd = forward; - P->left = PJ_IO_UNITS_ANGULAR; + P->left = PJ_IO_UNITS_RADIANS; P->right = PJ_IO_UNITS_CARTESIAN; return P; -- cgit v1.2.3 From edb068401822c0cb7047019ae7a1dac587778ce3 Mon Sep 17 00:00:00 2001 From: Kristian Evers Date: Thu, 3 Jan 2019 22:12:22 +0100 Subject: Replace PJ_IO_UNITS_WHATEVER with units from neighbour steps With this commit we make sure that proj_angular_input() and proj_angular_output return the correct result for any given pipeline. --- src/conversions/unitconvert.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/conversions') diff --git a/src/conversions/unitconvert.cpp b/src/conversions/unitconvert.cpp index cbd81a7d..1e3372d6 100644 --- a/src/conversions/unitconvert.cpp +++ b/src/conversions/unitconvert.cpp @@ -457,6 +457,8 @@ PJ *CONVERSION(unitconvert,0) { P->left = PJ_IO_UNITS_WHATEVER; P->right = PJ_IO_UNITS_WHATEVER; + P->skip_fwd_prepare = 1; + P->skip_inv_prepare = 1; /* if no time input/output unit is specified we can skip them */ Q->t_in_id = -1; @@ -476,6 +478,8 @@ PJ *CONVERSION(unitconvert,0) { } if (f != 0.0) Q->xy_factor *= f; + if (normalized_name != nullptr && strcmp(normalized_name, "Radian") == 0) + P->left = PJ_IO_UNITS_RADIANS; } if ((name = pj_param (P->ctx, P->params, "sxy_out").s) != nullptr) { @@ -489,6 +493,8 @@ PJ *CONVERSION(unitconvert,0) { } if (f != 0.0) Q->xy_factor /= f; + if (normalized_name != nullptr && strcmp(normalized_name, "Radian") == 0) + P->right= PJ_IO_UNITS_RADIANS; } if( xy_in_is_linear >= 0 && xy_out_is_linear >= 0 && -- cgit v1.2.3