source: josm/trunk/src/org/openstreetmap/josm/gui/preferences/projection/GaussKruegerProjectionChoice.java@ 5236

Last change on this file since 5236 was 5236, checked in by bastiK, 12 years ago
  • removed offset option from UTM which is probably rarely used. (custom projection can be used for this now, e.g. +proj=tmerc +lon_0=-3 +k_0=0.9996 +x_0=3500000 or +init=epsg:32630 +x_0=3500000)
  • fixed tests
File size: 1.7 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.gui.preferences.projection;
3
4import static org.openstreetmap.josm.tools.I18n.tr;
5
6import java.util.Collection;
7import java.util.Collections;
8
9import org.openstreetmap.josm.data.projection.GaussKrueger;
10import org.openstreetmap.josm.data.projection.Projection;
11
12public class GaussKruegerProjectionChoice extends ListProjectionChoice implements Alias {
13
14 private static String[] zones = { "2", "3", "4", "5" };
15
16 public GaussKruegerProjectionChoice() {
17 super("core:gauss-krueger", tr("Gau\u00DF-Kr\u00FCger"), zones, tr("GK Zone"));
18 }
19
20 @Override
21 public Projection getProjection() {
22 return new GaussKrueger(index + 2);
23 }
24
25 @Override
26 protected String indexToZone(int index) {
27 return Integer.toString(index + 2);
28 }
29
30 @Override
31 protected int zoneToIndex(String zone) {
32 try {
33 return Integer.parseInt(zone) - 2;
34 } catch(NumberFormatException e) {}
35 return defaultIndex;
36 }
37
38 @Override
39 public String[] allCodes() {
40 String[] codes = new String[4];
41 for (int zone = 2; zone <= 5; zone++) {
42 codes[zone-2] = "EPSG:" + (31464 + zone);
43 }
44 return codes;
45 }
46
47 @Override
48 public Collection<String> getPreferencesFromCode(String code)
49 {
50 //zone 2 = EPSG:31466 up to zone 5 = EPSG:31469
51 for (int zone = 2; zone <= 5; zone++) {
52 String epsg = "EPSG:" + (31464 + zone);
53 if (epsg.equals(code))
54 return Collections.singleton(String.valueOf(zone));
55 }
56 return null;
57 }
58
59 @Override
60 public String getAlias() {
61 return GaussKrueger.class.getName();
62 }
63
64}
Note: See TracBrowser for help on using the repository browser.