This is an automated email from the ASF dual-hosted git repository.

desruisseaux pushed a commit to branch geoapi-4.0
in repository https://gitbox.apache.org/repos/asf/sis.git

commit ee82317bc6f56bc9ec9b85f6e79a6e45f1a4cdc4
Author: Martin Desruisseaux <[email protected]>
AuthorDate: Fri Aug 22 19:22:49 2025 +0200

    The name of a few map projection parameters changed in EPSG 12.
    The old names (from EPSG 9) are kept as aliases.
---
 .../main/org/apache/sis/referencing/Builder.java             |  4 ++--
 .../sis/referencing/operation/AbstractSingleOperation.java   |  4 ++--
 .../sis/referencing/operation/DefaultOperationMethod.java    |  6 +++---
 .../operation/projection/NormalizedProjection.java           |  1 +
 .../sis/referencing/operation/provider/ObliqueMercator.java  | 12 +++++++-----
 .../operation/transform/DefaultMathTransformFactoryTest.java |  2 +-
 .../sis/referencing/report/CoordinateOperationMethods.java   |  2 +-
 .../main/org/apache/sis/util/privy/Constants.java            |  1 +
 8 files changed, 18 insertions(+), 14 deletions(-)

diff --git 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/Builder.java
 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/Builder.java
index ebf4180907..f091311567 100644
--- 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/Builder.java
+++ 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/Builder.java
@@ -797,7 +797,7 @@ public abstract class Builder<B extends Builder<B>> {
             }
             /*
              * Found a name associated to the given authority. Process to the 
replacement if we still
-             * have some elements to take in the 'replacements' array, 
otherwise remove the name.
+             * have some elements to take in the `replacements` array, 
otherwise remove the name.
              */
             if (next < length) {
                 final CharSequence name;
@@ -825,7 +825,7 @@ public abstract class Builder<B extends Builder<B>> {
             }
         }
         /*
-         * If there is any remaining elements in the 'replacements' array, 
insert them right after the last
+         * If there is any remaining elements in the `replacements` array, 
insert them right after the last
          * element of the given authority that we found (so we keep together 
the names of the same authority).
          */
         while (next < length) {
diff --git 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/AbstractSingleOperation.java
 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/AbstractSingleOperation.java
index 8c0c65cbad..3f8bd2e4ba 100644
--- 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/AbstractSingleOperation.java
+++ 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/AbstractSingleOperation.java
@@ -292,12 +292,12 @@ class AbstractSingleOperation extends 
AbstractCoordinateOperation implements Sin
         }
         switch (mode) {
             case STRICT: {
-                final AbstractSingleOperation that = (AbstractSingleOperation) 
object;
+                final var that = (AbstractSingleOperation) object;
                 return Objects.equals(method,     that.method) &&
                        Objects.equals(parameters, that.parameters);
             }
             case BY_CONTRACT: {
-                final SingleOperation that = (SingleOperation) object;
+                final var that = (SingleOperation) object;
                 return deepEquals(getMethod(),          that.getMethod(),      
    mode) &&
                        deepEquals(getParameterValues(), 
that.getParameterValues(), mode);
             }
diff --git 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultOperationMethod.java
 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultOperationMethod.java
index 2fff04b698..18f93c0c1f 100644
--- 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultOperationMethod.java
+++ 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/DefaultOperationMethod.java
@@ -414,7 +414,7 @@ public class DefaultOperationMethod extends 
AbstractIdentifiedObject implements
             switch (mode) {
                 case STRICT: {
                     // Name and identifiers have been compared by 
super.equals(object, mode).
-                    final DefaultOperationMethod that = 
(DefaultOperationMethod) object;
+                    final var that = (DefaultOperationMethod) object;
                     return Objects.equals(this.formula,    that.formula) &&
                            Objects.equals(this.parameters, that.parameters);
                 }
@@ -434,7 +434,7 @@ public class DefaultOperationMethod extends 
AbstractIdentifiedObject implements
                      * identifiers shall have precedence over name at least in 
the case of operation methods
                      * and parameters.
                      */
-                    final OperationMethod that = (OperationMethod) object;
+                    final var that = (OperationMethod) object;
                     final Boolean match = 
Identifiers.hasCommonIdentifier(getIdentifiers(), that.getIdentifiers());
                     if (match != null) {
                         if (!match) {
@@ -448,7 +448,7 @@ public class DefaultOperationMethod extends 
AbstractIdentifiedObject implements
                     break;
                 }
             }
-            final OperationMethod that = (OperationMethod) object;
+            final var that = (OperationMethod) object;
             return Utilities.deepEquals(getParameters(), that.getParameters(), 
mode);
         }
         return false;
diff --git 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/projection/NormalizedProjection.java
 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/projection/NormalizedProjection.java
index 4bffd7434b..7621ccfc9a 100644
--- 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/projection/NormalizedProjection.java
+++ 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/projection/NormalizedProjection.java
@@ -300,6 +300,7 @@ public abstract class NormalizedProjection extends 
AbstractMathTransform2D imple
          * <p>Some common names for this parameter are:</p>
          * <ul>
          *   <li>Scale factor at natural origin</li>
+         *   <li>Scale factor at projection centre</li>
          *   <li>Scale factor on initial line</li>
          *   <li>Scale factor on pseudo standard parallel</li>
          * </ul>
diff --git 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/ObliqueMercator.java
 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/ObliqueMercator.java
index 5f5206f929..d4674077ae 100644
--- 
a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/ObliqueMercator.java
+++ 
b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/ObliqueMercator.java
@@ -87,13 +87,13 @@ public class ObliqueMercator extends AbstractMercator {
     public static final ParameterDescriptor<Double> LONGITUDE_OF_CENTRE;
 
     /**
-     * The operation parameter descriptor for the <cite>Azimuth of initial 
line</cite> (α) parameter value.
+     * The operation parameter descriptor for the <cite>Azimuth at projection 
centre</cite> (α) parameter value.
      * Valid values ranges are [-360 … -270]°, [-90 … 90]° and [270 … 360]°. 
There is no default value.
      *
      * <!-- Generated by ParameterNameTableGenerator -->
      * <table class="sis">
      *   <caption>Parameter names</caption>
-     *   <tr><td> EPSG:    </td><td> Azimuth of initial line </td></tr>
+     *   <tr><td> EPSG:    </td><td> Azimuth at projection centre </td></tr>
      *   <tr><td> OGC:     </td><td> azimuth </td></tr>
      *   <tr><td> ESRI:    </td><td> Azimuth </td></tr>
      *   <tr><td> GeoTIFF: </td><td> AzimuthAngle </td></tr>
@@ -129,13 +129,13 @@ public class ObliqueMercator extends AbstractMercator {
     public static final ParameterDescriptor<Double> RECTIFIED_GRID_ANGLE;
 
     /**
-     * The operation parameter descriptor for the <cite>Scale factor on 
initial line</cite> (k) parameter value.
+     * The operation parameter descriptor for the <cite>Scale factor at 
projection centre</cite> (k) parameter value.
      * Valid values range is (0 … ∞) and default value is 1.
      *
      * <!-- Generated by ParameterNameTableGenerator -->
      * <table class="sis">
      *   <caption>Parameter names</caption>
-     *   <tr><td> EPSG:    </td><td> Scale factor on initial line </td></tr>
+     *   <tr><td> EPSG:    </td><td> Scale factor at projection centre 
</td></tr>
      *   <tr><td> OGC:     </td><td> scale_factor </td></tr>
      *   <tr><td> ESRI:    </td><td> Scale_Factor </td></tr>
      *   <tr><td> GeoTIFF: </td><td> ScaleAtCenter </td></tr>
@@ -170,6 +170,7 @@ public class ObliqueMercator extends AbstractMercator {
         AZIMUTH = builder
                 .addIdentifier("8813")
                 .addIdentifier(Citations.GEOTIFF, "3094")
+                .addName("Azimuth at projection centre")
                 .addName("Azimuth of initial line")
                 .addName(Citations.OGC,     "azimuth")
                 .addName(Citations.ESRI,    "Azimuth")
@@ -191,8 +192,9 @@ public class ObliqueMercator extends AbstractMercator {
                 .addNamesAndIdentifiers(Mercator1SP.SCALE_FACTOR)
                 .reidentify(Citations.EPSG,    "8815")
                 .reidentify(Citations.GEOTIFF, "3093")
-                .rename    (Citations.EPSG,    "Scale factor on initial line")
                 .rename    (Citations.GEOTIFF, "ScaleAtCenter")
+                .rename    (Citations.EPSG,    "Scale factor at projection 
centre")
+                .addName   (Citations.EPSG,    "Scale factor on initial line")
                 .rename    (Citations.NETCDF));                                
 // Remove the netCDF name.
 
         PARAMETERS_A = builder
diff --git 
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/operation/transform/DefaultMathTransformFactoryTest.java
 
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/operation/transform/DefaultMathTransformFactoryTest.java
index c8fa84b027..e735769d1a 100644
--- 
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/operation/transform/DefaultMathTransformFactoryTest.java
+++ 
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/operation/transform/DefaultMathTransformFactoryTest.java
@@ -233,7 +233,7 @@ public final class DefaultMathTransformFactoryTest extends 
TestCase {
                 case "Polar Stereographic (variant B)":
                 case "Polar Stereographic (variant C)":           param = 
"Latitude of standard parallel"; value = 80; break;
                 case "Hotine Oblique Mercator (variant A)":
-                case "Hotine Oblique Mercator (variant B)":       param = 
"Azimuth of initial line"; value = 30; break;
+                case "Hotine Oblique Mercator (variant B)":       param = 
"Azimuth at projection centre"; value = 30; break;
                 case "Lambert Conic Conformal (1SP)":
                 case "Lambert Conic Conformal (West Orientated)": param = 
"Latitude of natural origin"; value = 45; break;
                 case "Lambert Conic Conformal (2SP Michigan)":    param = 
"Ellipsoid scaling factor"; value = 1;  // Fall through for defining standard 
parallels too.
diff --git 
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateOperationMethods.java
 
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateOperationMethods.java
index 197a69ff66..1f042b80f2 100644
--- 
a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateOperationMethods.java
+++ 
b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/report/CoordinateOperationMethods.java
@@ -477,7 +477,7 @@ public class CoordinateOperationMethods extends 
HTMLGenerator {
             } else if (ArraysExt.contains(defaultToStandardParallel1, param)) {
                 return "Standard parallel 1";
             } else if (ArraysExt.contains(defaultToAzimuth, param)) {
-                return "Azimuth of initial line";
+                return "Azimuth at projection centre";
             } else if (param.getValueClass() == Boolean.class) {
                 defaultValue = Boolean.FALSE;
             }
diff --git 
a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/privy/Constants.java
 
b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/privy/Constants.java
index 367a8a185a..d04ca9a625 100644
--- 
a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/privy/Constants.java
+++ 
b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/privy/Constants.java
@@ -241,6 +241,7 @@ public final class Constants extends Static {
      *
      * <ul>
      *   <li><cite>Scale factor at natural origin</cite></li>
+     *   <li><cite>Scale factor at projection centre</cite></li>
      *   <li><cite>Scale factor on initial line</cite></li>
      *   <li><cite>Scale factor on pseudo standard parallel</cite></li>
      * </ul>

Reply via email to