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

Revision 4305, 1.5 KB checked in by bastiK, 6 months ago (diff)

fixed #5950 - z-index does not affect casing

  • Property svn:eol-style set to native
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.