source: josm/trunk/src/org/openstreetmap/josm/data/projection/Projection.java@ 2017

Last change on this file since 2017 was 2017, checked in by Gubaer, 15 years ago

removed OptionPaneUtil
cleanup of deprecated Layer API
cleanup of deprecated APIs in OsmPrimitive and Way
cleanup of imports

  • Property svn:eol-style set to native
File size: 1.7 KB
Line 
1// License: GPL. Copyright 2007 by Immanuel Scholz and others
2package org.openstreetmap.josm.data.projection;
3
4import org.openstreetmap.josm.data.Bounds;
5import org.openstreetmap.josm.data.coor.EastNorth;
6import org.openstreetmap.josm.data.coor.LatLon;
7
8/**
9 * Classes implementing this are able to convert lat/lon values to
10 * planar screen coordinates.
11 *
12 * @author imi
13 */
14public interface Projection {
15 /**
16 * Minimum difference in location to not be represented as the same position.
17 */
18 public static final double MAX_SERVER_PRECISION = 1e12;
19
20 /**
21 * List of all available projections.
22 */
23 public static Projection[] allProjections = new Projection[]{
24 new Epsg4326(),
25 new Mercator(),
26 new LambertEST(),
27 new Lambert(),
28 new SwissGrid(),
29 new UTM(),
30 new UTM_20N_Guadeloupe_Ste_Anne(),
31 new UTM_20N_Guadeloupe_Fort_Marigot(),
32 new UTM_20N_Martinique_Fort_Desaix(),
33 new GaussLaborde_Reunion()
34 };
35
36 /**
37 * Convert from lat/lon to northing/easting.
38 *
39 * @param p The geo point to convert. x/y members of the point are filled.
40 */
41 EastNorth latlon2eastNorth(LatLon p);
42
43 /**
44 * Convert from norting/easting to lat/lon.
45 *
46 * @param p The geo point to convert. lat/lon members of the point are filled.
47 */
48 LatLon eastNorth2latlon(EastNorth p);
49
50 /**
51 * Describe the projection converter in one or two words.
52 */
53 String toString();
54
55 /**
56 * Return projection code.
57 */
58 String toCode();
59
60 /**
61 * Get a filename compatible string (for the cache directory)
62 */
63 String getCacheDirectoryName();
64
65 /**
66 * Get the bounds of the world
67 */
68 Bounds getWorldBoundsLatLon();
69}
Note: See TracBrowser for help on using the repository browser.