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

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

applied #3214: patch by pieren: new projections for the French cadastre

  • 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.coor.EastNorth;
5import org.openstreetmap.josm.data.coor.LatLon;
6import org.openstreetmap.josm.data.Bounds;
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.