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

Last change on this file since 5073 was 4305, checked in by bastiK, 13 years ago

fixed #5950 - z-index does not affect casing

  • Property svn:eol-style set to native
File size: 1.5 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 * The default scale factor in east/north units per pixel ({@see #NavigatableComponent#scale}))
17 * FIXME: misnomer
18 */
19 double getDefaultZoomInPPD();
20
21 /**
22 * Convert from lat/lon to northing/easting.
23 *
24 * @param p The geo point to convert. x/y members of the point are filled.
25 */
26 EastNorth latlon2eastNorth(LatLon p);
27
28 /**
29 * Convert from norting/easting to lat/lon.
30 *
31 * @param p The geo point to convert. lat/lon members of the point are filled.
32 */
33 LatLon eastNorth2latlon(EastNorth p);
34
35 /**
36 * Describe the projection converter in one or two words.
37 */
38 String toString();
39
40 /**
41 * Return projection code. This should be a unique identifier.
42 * If projection supports parameters, return a different code
43 * for each set of parameters.
44 *
45 * The EPSG code can be used (if defined for the projection).
46 */
47 String toCode();
48
49 /**
50 * Get a filename compatible string (for the cache directory)
51 */
52 String getCacheDirectoryName();
53
54 /**
55 * Get the bounds of the world
56 */
57 Bounds getWorldBoundsLatLon();
58}
Note: See TracBrowser for help on using the repository browser.