|
37 | 37 | */ |
38 | 38 | public class ProjParser { |
39 | 39 |
|
40 | | - /** |
41 | | - * Pseudo Mercator name check |
42 | | - */ |
43 | | - private static final String pseudoMercatorNameCheck = "pseudo"; |
44 | | - |
45 | | - /** |
46 | | - * Degree Unit name check |
47 | | - */ |
48 | | - private static final String degreeUnitNameCheck = "deg"; |
49 | | - |
50 | | - /** |
51 | | - * Swiss Oblique Mercator name |
52 | | - */ |
53 | | - private static final String swissObliqueMercatorName = "swiss oblique mercator"; |
54 | | - |
55 | | - /** |
56 | | - * Swiis Oblique Mercator backward compatible name |
57 | | - */ |
58 | | - private static final String swissObliqueMercatorCompatName = "hotine_oblique_mercator_azimuth_center"; |
59 | | - |
60 | | - /** |
61 | | - * UTM Zone name |
62 | | - */ |
63 | | - private static final String utmZoneName = "utm zone"; |
64 | | - |
65 | 40 | /** |
66 | 41 | * Parse crs well-known text into PROJ params |
67 | 42 | * |
@@ -321,7 +296,7 @@ private static void updateDatum(ProjParams params, GeoDatum geoDatum, |
321 | 296 | if (commonGeoDatum == GeoDatums.WGS84 && method.hasMethod() && method |
322 | 297 | .getMethod() == OperationMethods.POPULAR_VISUALISATION_PSEUDO_MERCATOR |
323 | 298 | && mapProjection.getName().toLowerCase() |
324 | | - .contains(pseudoMercatorNameCheck)) { |
| 299 | + .contains(ProjConstants.PSEUDO_MERCATOR)) { |
325 | 300 | updateSphericalEllipsoid(params, |
326 | 301 | geoDatum.getEllipsoid().getSemiMajorAxisText()); |
327 | 302 | } else { |
@@ -524,8 +499,9 @@ private static void updateProj(ProjParams params, |
524 | 499 | Unit unit = coordinateSystem.getAxisUnit(); |
525 | 500 |
|
526 | 501 | if (unit != null && (unit.getType() == UnitType.ANGLEUNIT |
527 | | - || (unit.getType() == UnitType.UNIT && unit.getName() |
528 | | - .toLowerCase().startsWith(degreeUnitNameCheck)))) { |
| 502 | + || (unit.getType() == UnitType.UNIT |
| 503 | + && unit.getName().toLowerCase() |
| 504 | + .startsWith(ProjConstants.UNITS_DEGREE)))) { |
529 | 505 | params.setProj(ProjConstants.NAME_LONGLAT); |
530 | 506 | } else { |
531 | 507 | params.setProj(ProjConstants.NAME_MERC); |
@@ -574,9 +550,9 @@ private static void updateProj(ProjParams params, |
574 | 550 |
|
575 | 551 | case HOTINE_OBLIQUE_MERCATOR_B: |
576 | 552 | if (mapProjection.getName().toLowerCase() |
577 | | - .contains(swissObliqueMercatorName) |
578 | | - || method.getName().toLowerCase() |
579 | | - .contains(swissObliqueMercatorCompatName)) { |
| 553 | + .contains(ProjConstants.SWISS_OBLIQUE_MERCATOR) |
| 554 | + || method.getName().toLowerCase().contains( |
| 555 | + ProjConstants.SWISS_OBLIQUE_MERCATOR_COMPAT)) { |
580 | 556 | params.setProj(ProjConstants.NAME_SOMERC); |
581 | 557 | } else { |
582 | 558 | params.setProj(ProjConstants.NAME_OMERC); |
@@ -626,7 +602,7 @@ private static void updateProj(ProjParams params, |
626 | 602 | case TRANSVERSE_MERCATOR: |
627 | 603 | case TRANSVERSE_MERCATOR_SOUTH_ORIENTATED: |
628 | 604 | if (mapProjection.getName().toLowerCase() |
629 | | - .contains(utmZoneName)) { |
| 605 | + .contains(ProjConstants.UTM_ZONE)) { |
630 | 606 | params.setProj(ProjConstants.NAME_UTM); |
631 | 607 | } else { |
632 | 608 | params.setProj(ProjConstants.NAME_TMERC); |
@@ -729,9 +705,10 @@ private static void updateParams(ProjParams params, |
729 | 705 | MapProjection mapProjection, Unit unit) { |
730 | 706 |
|
731 | 707 | String name = mapProjection.getName(); |
732 | | - int index = name.toLowerCase().indexOf(utmZoneName); |
| 708 | + int index = name.toLowerCase().indexOf(ProjConstants.UTM_ZONE); |
733 | 709 | if (index > -1) { |
734 | | - String utm = name.substring(index + utmZoneName.length()).trim(); |
| 710 | + String utm = name.substring(index + ProjConstants.UTM_ZONE.length()) |
| 711 | + .trim(); |
735 | 712 | String[] parts = utm.split("\\s+"); |
736 | 713 | boolean south = false; |
737 | 714 | if (parts.length > 0) { |
|
0 commit comments