Changeset 9117 in josm for trunk/src/org/openstreetmap/josm/data/projection/proj/TransverseMercator.java
- Timestamp:
- 2015-12-13T22:48:40+01:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/data/projection/proj/TransverseMercator.java
r9116 r9117 56 56 * </ul> 57 57 * 58 * @see <A HREF="http://mathworld.wolfram.com/MercatorProjection.html">Transverse Mercator projection on MathWorld</A>59 * @see <A HREF="http://www.remotesensing.org/geotiff/proj_list/transverse_mercator.html">"Transverse_Mercator" on RemoteSensing.org</A>60 *61 58 * @author André Gosselin 62 59 * @author Martin Desruisseaux (PMO, IRD) 63 60 * @author Rueben Schulz 61 * 62 * @see <A HREF="http://mathworld.wolfram.com/MercatorProjection.html">Transverse Mercator projection on MathWorld</A> 63 * @see <A HREF="http://www.remotesensing.org/geotiff/proj_list/transverse_mercator.html">"Transverse_Mercator" on RemoteSensing.org</A> 64 64 */ 65 65 public class TransverseMercator extends AbstractProj { … … 69 69 * case of the Transverse Mercator. 70 70 */ 71 private static final double FC1 = 1.00000000000000000000000, // 1/172 FC2 = 0.50000000000000000000000, // 1/273 FC3 = 0.16666666666666666666666, // 1/674 FC4 = 0.08333333333333333333333, // 1/1275 FC5 = 0.05000000000000000000000, // 1/2076 FC6 = 0.03333333333333333333333, // 1/3077 FC7 = 0.02380952380952380952380, // 1/4278 FC8 = 0.01785714285714285714285; // 1/5671 private static final double FC1 = 1.00000000000000000000000, // 1/1 72 FC2 = 0.50000000000000000000000, // 1/2 73 FC3 = 0.16666666666666666666666, // 1/6 74 FC4 = 0.08333333333333333333333, // 1/12 75 FC5 = 0.05000000000000000000000, // 1/20 76 FC6 = 0.03333333333333333333333, // 1/30 77 FC7 = 0.02380952380952380952380, // 1/42 78 FC8 = 0.01785714285714285714285; // 1/56 79 79 80 80 /** … … 139 139 y = (mlfn(y, sinphi, cosphi) - ml0 + 140 140 sinphi * al * x * 141 FC2 * ( 141 FC2 * (1.0 + 142 142 FC4 * als * (5.0 - t + n*(9.0 + 4.0*n) + 143 143 FC6 * als * (61.0 + t * (t - 58.0) + n*(270.0 - 330.0*t) + 144 FC8 * als * (1385.0 + t * ( 144 FC8 * als * (1385.0 + t * (t*(543.0 - t) - 3111.0)))))); 145 145 146 146 x = al*(FC1 + FC3 * als*(1.0 - t + n + 147 147 FC5 * als * (5.0 + t*(t - 18.0) + n*(14.0 - 58.0*t) + 148 FC7 * als * (61.0+ t*(t*(179.0 - t) - 479.0 148 FC7 * als * (61.0+ t*(t*(179.0 - t) - 479.0))))); 149 149 150 return new double[] { x, y};150 return new double[] {x, y}; 151 151 } 152 152 … … 156 156 157 157 if (Math.abs(phi) >= Math.PI/2) { 158 y = y <0.0 ? -(Math.PI/2) : (Math.PI/2);158 y = y < 0.0 ? -(Math.PI/2) : (Math.PI/2); 159 159 x = 0.0; 160 160 } else { … … 179 179 ds*FC7*(61.0 + t*(662.0 + t*(1320.0 + 720.0*t))))))/cosphi; 180 180 } 181 return new double[] { y, x};181 return new double[] {y, x}; 182 182 } 183 183 }
Note:
See TracChangeset
for help on using the changeset viewer.