org.openstreetmap.josm.data.projection.proj
Class SwissObliqueMercator

java.lang.Object
  extended by org.openstreetmap.josm.data.projection.proj.SwissObliqueMercator
All Implemented Interfaces:
Proj

public class SwissObliqueMercator
extends java.lang.Object
implements Proj

Projection for the SwissGrid CH1903 / L03, see http://de.wikipedia.org/wiki/Swiss_Grid. Calculations are based on formula from http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/sys/refsys/switzerland.parsysrelated1.37696.downloadList.12749.DownloadFile.tmp/ch1903wgs84en.pdf August 2010 update to this formula (rigorous formulas) http://www.swisstopo.admin.ch/internet/swisstopo/en/home/topics/survey/sys/refsys/switzerland.parsysrelated1.37696.downloadList.97912.DownloadFile.tmp/swissprojectionen.pdf


Field Summary
private  double alpha
           
private  double b0
           
private  Ellipsoid ellps
           
private static double EPSILON
           
private  double K
           
private  double kR
           
 
Constructor Summary
SwissObliqueMercator()
           
 
Method Summary
 java.lang.String getName()
          A Human readable name of this projection.
 java.lang.String getProj4Id()
          The Proj.4 identifier.
private  void initialize(double lat_0)
           
 void initialize(ProjParameters params)
          Initialize the projection using the provided parameters.
 double[] invproject(double y, double x)
          Convert east/north to lat/lon.
 double[] project(double phi, double lambda)
          Convert lat/lon to east/north.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ellps

private Ellipsoid ellps

kR

private double kR

alpha

private double alpha

b0

private double b0

K

private double K

EPSILON

private static final double EPSILON
See Also:
Constant Field Values
Constructor Detail

SwissObliqueMercator

public SwissObliqueMercator()
Method Detail

initialize

public void initialize(ProjParameters params)
                throws ProjectionConfigurationException
Description copied from interface: Proj
Initialize the projection using the provided parameters.

Specified by:
initialize in interface Proj
Throws:
ProjectionConfigurationException - in case parameters are not suitable

initialize

private void initialize(double lat_0)

getName

public java.lang.String getName()
Description copied from interface: Proj
A Human readable name of this projection.

Specified by:
getName in interface Proj

getProj4Id

public java.lang.String getProj4Id()
Description copied from interface: Proj
The Proj.4 identifier. (as reported by cs2cs -lp) If no id exists, return null.

Specified by:
getProj4Id in interface Proj

project

public double[] project(double phi,
                        double lambda)
Description copied from interface: Proj
Convert lat/lon to east/north.

Specified by:
project in interface Proj
Parameters:
phi - the latitude in radians
lambda - the longitude in radians
Returns:
array of length 2, containing east and north value in meters, divided by the semi major axis of the ellipsoid.

invproject

public double[] invproject(double y,
                           double x)
Description copied from interface: Proj
Convert east/north to lat/lon.

Specified by:
invproject in interface Proj
Parameters:
y - east value in meters, divided by the semi major axis of the ellipsoid
x - north value in meters, divided by the semi major axis of the ellipsoid
Returns:
array of length 2, containing lat and lon in radians.


JOSM