package com.revolsys.geometry.cs;
import java.util.Map;
import java.util.TreeMap;
public class ProjectionParameterNames {
private static final Map<String, String> ALIASES = new TreeMap<>();
private static final String ANGLE_FROM_RECTIFIED_TO_SKEW_GRID = "angle_from_rectified_to_skew_grid";
public static final String AZIMUTH = "azimuth";
private static final String AZIMUTH_OF_INITIAL_LINE = "azimuth_of_initial_line";
public static final String CENTRAL_MERIDIAN = "central_meridian";
private static final String CO_LATITUDE_OF_CONE_AXIS = "co-latitude_of_cone_axis";
private static final String EASTING_AT_FALSE_ORIGIN = "easting_at_false_origin";
private static final String EASTING_AT_PROJECTION_CENTRE = "easting_at_projection_centre";
public static final String FALSE_EASTING = "false_easting";
public static final String FALSE_NORTHING = "false_northing";
private static final String INITIAL_LONGITUDE = "initial_longitude";
private static final String LATITUDE_OF_1ST_STANDARD_PARALLEL = "latitude_of_1st_standard_parallel";
private static final String LATITUDE_OF_2ND_STANDARD_PARALLEL = "latitude_of_2nd_standard_parallel";
public static final String LATITUDE_OF_CENTER = "latitude_of_center";
private static final String LATITUDE_OF_FALSE_ORIGIN = "latitude_of_false_origin";
private static final String LATITUDE_OF_NATURAL_ORIGIN = "latitude_of_natural_origin";
private static final String LATITUDE_OF_ORIGIN = "latitude_of_origin";
private static final String LATITUDE_OF_PROJECTION_CENTRE = "latitude_of_projection_centre";
private static final String LATITUDE_OF_PSEUDO_STANDARD_PARALLEL = "latitude_of_pseudo_standard_parallel";
private static final String LATITUDE_OF_STANDARD_PARALLEL = "latitude_of_standard_parallel";
public static final String LONGITUDE_OF_CENTER = "longitude_of_center";
private static final String LONGITUDE_OF_FALSE_ORIGIN = "longitude_of_false_origin";
private static final String LONGITUDE_OF_NATURAL_ORIGIN = "longitude_of_natural_origin";
private static final String LONGITUDE_OF_ORIGIN = "longitude_of_origin";
private static final String LONGITUDE_OF_PROJECTION_CENTRE = "longitude_of_projection_centre";
private static final String NORTHING_AT_FALSE_ORIGIN = "northing_at_false_origin";
private static final String NORTHING_AT_PROJECTION_CENTRE = "northing_at_projection_centre";
private static final String PSEUDO_STANDARD_PARALLEL_1 = "pseudo_standard_parallel_1";
private static final String RECTIFIED_GRID_ANGLE = "rectified_grid_angle";
public static final String SCALE_FACTOR = "scale_factor";
private static final String SCALE_FACTOR_AT_NATURAL_ORIGIN = "scale_factor_at_natural_origin";
private static final String SCALE_FACTOR_ON_INITIAL_LINE = "scale_factor_on_initial_line";
private static final String SCALE_FACTOR_ON_PSEUDO_STANDARD_PARALLEL = "scale_factor_on_pseudo_standard_parallel";
public static final String STANDARD_PARALLEL_1 = "standard_parallel_1";
public static final String STANDARD_PARALLEL_2 = "standard_parallel_2";
public static final String ZONE_WIDTH = "zone_width";
static {
ALIASES.put(FALSE_EASTING, FALSE_EASTING);
ALIASES.put(EASTING_AT_FALSE_ORIGIN, FALSE_EASTING);
ALIASES.put(EASTING_AT_PROJECTION_CENTRE, FALSE_NORTHING);
ALIASES.put(FALSE_NORTHING, FALSE_NORTHING);
ALIASES.put(NORTHING_AT_FALSE_ORIGIN, FALSE_NORTHING);
ALIASES.put(NORTHING_AT_PROJECTION_CENTRE, FALSE_NORTHING);
ALIASES.put(LONGITUDE_OF_CENTER, LONGITUDE_OF_CENTER);
ALIASES.put(LONGITUDE_OF_FALSE_ORIGIN, LONGITUDE_OF_CENTER);
ALIASES.put(LONGITUDE_OF_ORIGIN, LONGITUDE_OF_CENTER);
ALIASES.put(LONGITUDE_OF_NATURAL_ORIGIN, LONGITUDE_OF_CENTER);
ALIASES.put(CENTRAL_MERIDIAN, LONGITUDE_OF_CENTER);
ALIASES.put(LONGITUDE_OF_PROJECTION_CENTRE, LONGITUDE_OF_CENTER);
ALIASES.put(INITIAL_LONGITUDE, LONGITUDE_OF_CENTER);
ALIASES.put(LATITUDE_OF_CENTER, LATITUDE_OF_CENTER);
ALIASES.put(LATITUDE_OF_FALSE_ORIGIN, LATITUDE_OF_CENTER);
ALIASES.put(LATITUDE_OF_ORIGIN, LATITUDE_OF_CENTER);
ALIASES.put(LATITUDE_OF_NATURAL_ORIGIN, LATITUDE_OF_CENTER);
ALIASES.put(LATITUDE_OF_PROJECTION_CENTRE, LATITUDE_OF_CENTER);
ALIASES.put(LATITUDE_OF_STANDARD_PARALLEL, LATITUDE_OF_CENTER);
ALIASES.put(STANDARD_PARALLEL_1, STANDARD_PARALLEL_1);
ALIASES.put(LATITUDE_OF_1ST_STANDARD_PARALLEL, STANDARD_PARALLEL_1);
ALIASES.put(LATITUDE_OF_PSEUDO_STANDARD_PARALLEL, STANDARD_PARALLEL_1);
ALIASES.put(PSEUDO_STANDARD_PARALLEL_1, STANDARD_PARALLEL_1);
ALIASES.put(STANDARD_PARALLEL_2, STANDARD_PARALLEL_2);
ALIASES.put(LATITUDE_OF_2ND_STANDARD_PARALLEL, STANDARD_PARALLEL_2);
ALIASES.put(SCALE_FACTOR, SCALE_FACTOR);
ALIASES.put(SCALE_FACTOR_AT_NATURAL_ORIGIN, SCALE_FACTOR);
ALIASES.put(SCALE_FACTOR_ON_INITIAL_LINE, SCALE_FACTOR);
ALIASES.put(SCALE_FACTOR_ON_PSEUDO_STANDARD_PARALLEL, SCALE_FACTOR);
ALIASES.put(AZIMUTH, AZIMUTH);
ALIASES.put(AZIMUTH_OF_INITIAL_LINE, AZIMUTH);
ALIASES.put(CO_LATITUDE_OF_CONE_AXIS, AZIMUTH);
ALIASES.put(RECTIFIED_GRID_ANGLE, RECTIFIED_GRID_ANGLE);
ALIASES.put(ANGLE_FROM_RECTIFIED_TO_SKEW_GRID, RECTIFIED_GRID_ANGLE);
ALIASES.put(ZONE_WIDTH, ZONE_WIDTH);
}
public static String getParameterName(String name) {
name = name.toLowerCase().replaceAll(" ", "_");
String alias = ALIASES.get(name);
if (alias == null) {
alias = name.intern();
ALIASES.put(alias, alias);
// System.out.println(alias);
return alias;
} else {
return alias;
}
}
}