/*---------------- FILE HEADER ------------------------------------------
This file is part of deegree.
Copyright (C) 2001 by:
EXSE, Department of Geography, University of Bonn
http://www.giub.uni-bonn.de/exse/
lat/lon GmbH
http://www.lat-lon.de
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Contact:
Andreas Poth
lat/lon GmbH
Aennchenstr. 19
53115 Bonn
Germany
E-Mail: poth@lat-lon.de
Klaus Greve
Department of Geography
University of Bonn
Meckenheimer Allee 166
53115 Bonn
Germany
E-Mail: klaus.greve@uni-bonn.de
---------------------------------------------------------------------------*/
package org.deegree.model.csct.cs;
import java.awt.geom.Point2D;
import java.util.Hashtable;
import java.util.Locale;
import java.util.Vector;
import javax.media.jai.ParameterList;
import javax.media.jai.ParameterListDescriptor;
import javax.media.jai.ParameterListDescriptorImpl;
import javax.media.jai.ParameterListImpl;
import javax.media.jai.util.Range;
import org.deegree.model.csct.units.Unit;
/**
*
*
* @version $Revision: 1.4 $
* @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
*/
public class ConvenienceCSFactory {
private static ConvenienceCSFactory factory = null;
private CoordinateSystemFactory csFactory = CoordinateSystemFactory.getDefault();
private static ParameterListDescriptor pld = getDescriptor( new Object[] {
"semi_major",
Double.class,
ParameterListDescriptor.NO_PARAMETER_DEFAULT,
null,
"semi_minor",
Double.class,
ParameterListDescriptor.NO_PARAMETER_DEFAULT,
null,
"central_meridian",
Double.class,
new Double( 0 ),
null,
"latitude_of_origin",
Double.class,
new Double( 0 ),
null,
"false_easting",
Double.class,
new Double( 0 ),
null,
"false_northing",
Double.class,
new Double( 0 ),
null,
"scale_factor",
Double.class,
new Double( 1 ),
null,
"longitudeOfFalseOrigin",
Double.class,
new Double( 0 ),
null,
"latitudeofFalseOrigin",
Double.class,
new Double( 90 ),
null,
"standard_parallel1",
Double.class,
new Double( 30 ),
null,
"standard_parallel2",
Double.class,
new Double( 40 ),
null, "hemisphere",
Integer.class,
new Integer( 1 ),
null } );
// keys are names (i.e. "EPSG:4326"), values are CoordinateSystems
private Hashtable systems = new Hashtable();
// values are names (Strings)
private Vector names = new Vector();
/**
* implementation f the singleton pattern.
*/
public static ConvenienceCSFactory getInstance() {
if ( factory == null ) {
factory = new ConvenienceCSFactory();
}
return factory;
}
/**
*
*
* @param cs
*/
private void save( CoordinateSystem cs ) {
systems.put( cs.getName( Locale.getDefault() ), cs );
names.add( cs.getName( Locale.getDefault() ) );
}
/**
*
*
* @param name
*
* @return
*/
public CoordinateSystem getCSByName( String name ) {
name = name.toUpperCase();
CoordinateSystem cs = (CoordinateSystem) systems.get( name.toUpperCase() );
if ( cs != null ) {
return cs;
}
// if ( name.equalsIgnoreCase( "EPSG:2056" ) ) {
// addEPSG2056();
// } else
if ( name.equalsIgnoreCase( "EPSG:4269" ) ) {
addEPSG4269();
} else if ( name.equalsIgnoreCase( "EPSG:4267" ) ) {
addEPSG4267();
} else if ( name.equalsIgnoreCase( "EPSG:20790" ) ) {
addEPSG20790();
} else if ( name.equalsIgnoreCase( "EPSG:21780" ) ) {
addEPSG21780();
} else if ( name.equalsIgnoreCase( "EPSG:4806" ) ) {
addEPSG4806();
} else if ( name.equalsIgnoreCase( "EPSG:4322" ) ) {
addEPSG4322();
} else if ( name.equalsIgnoreCase( "EPSG:4324" ) ) {
addEPSG4324();
} else if ( name.equalsIgnoreCase( "EPSG:4274" ) ) {
addEPSG4274();
} else if ( name.equalsIgnoreCase( "EPSG:4803" ) ) {
addEPSG4803();
} else if ( name.equalsIgnoreCase( "EPSG:4308" ) ) {
addEPSG4308();
} else if ( name.equalsIgnoreCase( "EPSG:4807" ) ) {
addEPSG4807();
} else if ( name.equalsIgnoreCase( "EPSG:4817" ) ) {
addEPSG4817();
} else if ( name.equalsIgnoreCase( "EPSG:4801" ) ) {
addEPSG4801();
} else if ( name.equalsIgnoreCase( "EPSG:4272" ) ) {
addEPSG4272();
} else if ( name.equalsIgnoreCase( "EPSG:21781" ) ) {
addEPSG21781();
} else if ( name.equalsIgnoreCase( "EPSG:23028" ) ) {
addEPSG23028();
} else if ( name.equalsIgnoreCase( "EPSG:23029" ) ) {
addEPSG23029();
} else if ( name.equalsIgnoreCase( "EPSG:23030" ) ) {
addEPSG23030();
} else if ( name.equalsIgnoreCase( "EPSG:23031" ) ) {
addEPSG23031();
} else if ( name.equalsIgnoreCase( "EPSG:23032" ) ) {
addEPSG23032();
} else if ( name.equalsIgnoreCase( "EPSG:23033" ) ) {
addEPSG23033();
} else if ( name.equalsIgnoreCase( "EPSG:23034" ) ) {
addEPSG23034();
} else if ( name.equalsIgnoreCase( "EPSG:23035" ) ) {
addEPSG23035();
} else if ( name.equalsIgnoreCase( "EPSG:23036" ) ) {
addEPSG23036();
} else if ( name.equalsIgnoreCase( "EPSG:23037" ) ) {
addEPSG23037();
} else if ( name.equalsIgnoreCase( "EPSG:23038" ) ) {
addEPSG23038();
} else if ( name.equalsIgnoreCase( "EPSG:23090" ) ) {
addEPSG23090();
} else if ( name.equalsIgnoreCase( "EPSG:23095" ) ) {
addEPSG23095();
} else if ( name.equalsIgnoreCase( "EPSG:25884" ) ) {
addEPSG25884();
} else if ( name.equalsIgnoreCase( "EPSG:25828" ) || name.equalsIgnoreCase( "EPSG:25829" )
|| name.equalsIgnoreCase( "EPSG:25830" )
|| name.equalsIgnoreCase( "EPSG:25831" )
|| name.equalsIgnoreCase( "EPSG:25832" )
|| name.equalsIgnoreCase( "EPSG:25833" )
|| name.equalsIgnoreCase( "EPSG:25834" )
|| name.equalsIgnoreCase( "EPSG:25835" )
|| name.equalsIgnoreCase( "EPSG:25836" )
|| name.equalsIgnoreCase( "EPSG:25837" )
|| name.equalsIgnoreCase( "EPSG:25838" ) ) {
String s = name.substring( 8, 10 );
int code = Integer.parseInt( s );
addEPSG258XX( code );
} else if ( name.equalsIgnoreCase( "EPSG:26591" ) ) {
addEPSG26591();
} else if ( name.equalsIgnoreCase( "EPSG:26592" ) ) {
addEPSG26592();
} else if ( name.equalsIgnoreCase( "EPSG:27391" ) ) {
addEPSG27391();
} else if ( name.equalsIgnoreCase( "EPSG:27392" ) ) {
addEPSG27392();
} else if ( name.equalsIgnoreCase( "EPSG:27393" ) ) {
addEPSG27393();
} else if ( name.equalsIgnoreCase( "EPSG:27394" ) ) {
addEPSG27394();
} else if ( name.equalsIgnoreCase( "EPSG:27395" ) ) {
addEPSG27395();
} else if ( name.equalsIgnoreCase( "EPSG:27396" ) ) {
addEPSG27396();
} else if ( name.equalsIgnoreCase( "EPSG:27397" ) ) {
addEPSG27397();
} else if ( name.equalsIgnoreCase( "EPSG:27398" ) ) {
addEPSG27398();
} else if ( name.equalsIgnoreCase( "EPSG:27429" ) ) {
addEPSG27429();
} else if ( name.equalsIgnoreCase( "EPSG:27700" ) ) {
addEPSG27700();
} else if ( name.equalsIgnoreCase( "EPSG:28402" ) ) {
addEPSG28402();
} else if ( name.equalsIgnoreCase( "EPSG:28403" ) ) {
addEPSG28403();
} else if ( name.equalsIgnoreCase( "EPSG:28404" ) ) {
addEPSG28404();
} else if ( name.equalsIgnoreCase( "EPSG:28405" ) ) {
addEPSG28405();
} else if ( name.equalsIgnoreCase( "EPSG:28406" ) ) {
addEPSG28406();
} else if ( name.equalsIgnoreCase( "EPSG:28407" ) ) {
addEPSG28407();
} else if ( name.equalsIgnoreCase( "EPSG:28408" ) ) {
addEPSG28408();
} else if ( name.equalsIgnoreCase( "EPSG:28409" ) ) {
addEPSG28409();
} else if ( name.equalsIgnoreCase( "EPSG:28462" ) ) {
addEPSG28462();
} else if ( name.equalsIgnoreCase( "EPSG:28462" ) || name.equalsIgnoreCase( "EPSG:28463" )
|| name.equalsIgnoreCase( "EPSG:28464" )
|| name.equalsIgnoreCase( "EPSG:28465" )
|| name.equalsIgnoreCase( "EPSG:28466" )
|| name.equalsIgnoreCase( "EPSG:28467" )
|| name.equalsIgnoreCase( "EPSG:28468" )
|| name.equalsIgnoreCase( "EPSG:28469" ) ) {
String s = name.substring( 9 );
int code = Integer.parseInt( s );
addEPSG2846X( code );
} else if ( name.equalsIgnoreCase( "EPSG:29900" ) ) {
addEPSG29900();
} else if ( name.equalsIgnoreCase( "EPSG:30800" ) ) {
addEPSG30800();
} else if ( name.equalsIgnoreCase( "EPSG:31275" ) ) {
addEPSG31275();
} else if ( name.equalsIgnoreCase( "EPSG:31276" ) ) {
addEPSG31276();
} else if ( name.equalsIgnoreCase( "EPSG:31277" ) ) {
addEPSG31277();
} else if ( name.equalsIgnoreCase( "EPSG:31278" ) ) {
addEPSG31278();
} else if ( name.equalsIgnoreCase( "EPSG:31281" ) ) {
addEPSG31281();
} else if ( name.equalsIgnoreCase( "EPSG:31282" ) ) {
addEPSG31282();
} else if ( name.equalsIgnoreCase( "EPSG:31283" ) ) {
addEPSG31283();
} else if ( name.equalsIgnoreCase( "EPSG:31284" ) ) {
addEPSG31284();
} else if ( name.equalsIgnoreCase( "EPSG:31285" ) ) {
addEPSG31285();
} else if ( name.equalsIgnoreCase( "EPSG:31286" ) ) {
addEPSG31286();
} else if ( name.equalsIgnoreCase( "EPSG:31466" ) || name.equalsIgnoreCase( "EPSG:31467" )
|| name.equalsIgnoreCase( "EPSG:31468" )
|| name.equalsIgnoreCase( "EPSG:31469" ) ) {
String s = name.substring( 9 );
int code = Integer.parseInt( s );
addEPSG3146X( code );
} else if ( name.equalsIgnoreCase( "EPSG:31491" ) || name.equalsIgnoreCase( "EPSG:31492" )
|| name.equalsIgnoreCase( "EPSG:31493" )
|| name.equalsIgnoreCase( "EPSG:31494" )
|| name.equalsIgnoreCase( "EPSG:31495" ) ) {
String s = name.substring( 9 );
int code = Integer.parseInt( s );
addEPSG3149X( code );
} else if ( name.equalsIgnoreCase( "EPSG:32201" ) || name.equalsIgnoreCase( "EPSG:32202" )
|| name.equalsIgnoreCase( "EPSG:32203" )
|| name.equalsIgnoreCase( "EPSG:32204" )
|| name.equalsIgnoreCase( "EPSG:32205" )
|| name.equalsIgnoreCase( "EPSG:32206" )
|| name.equalsIgnoreCase( "EPSG:32207" )
|| name.equalsIgnoreCase( "EPSG:32208" )
|| name.equalsIgnoreCase( "EPSG:32209" )
|| name.equalsIgnoreCase( "EPSG:32210" )
|| name.equalsIgnoreCase( "EPSG:32211" )
|| name.equalsIgnoreCase( "EPSG:32212" )
|| name.equalsIgnoreCase( "EPSG:32213" )
|| name.equalsIgnoreCase( "EPSG:32214" )
|| name.equalsIgnoreCase( "EPSG:32215" )
|| name.equalsIgnoreCase( "EPSG:32216" )
|| name.equalsIgnoreCase( "EPSG:32217" )
|| name.equalsIgnoreCase( "EPSG:32218" )
|| name.equalsIgnoreCase( "EPSG:32219" )
|| name.equalsIgnoreCase( "EPSG:32220" )
|| name.equalsIgnoreCase( "EPSG:32221" )
|| name.equalsIgnoreCase( "EPSG:32222" )
|| name.equalsIgnoreCase( "EPSG:32223" )
|| name.equalsIgnoreCase( "EPSG:32224" )
|| name.equalsIgnoreCase( "EPSG:32225" )
|| name.equalsIgnoreCase( "EPSG:32226" )
|| name.equalsIgnoreCase( "EPSG:32227" )
|| name.equalsIgnoreCase( "EPSG:32228" )
|| name.equalsIgnoreCase( "EPSG:32229" )
|| name.equalsIgnoreCase( "EPSG:32230" )
|| name.equalsIgnoreCase( "EPSG:32231" )
|| name.equalsIgnoreCase( "EPSG:32232" )
|| name.equalsIgnoreCase( "EPSG:32233" )
|| name.equalsIgnoreCase( "EPSG:32234" )
|| name.equalsIgnoreCase( "EPSG:32235" )
|| name.equalsIgnoreCase( "EPSG:32236" )
|| name.equalsIgnoreCase( "EPSG:32237" )
|| name.equalsIgnoreCase( "EPSG:32238" )
|| name.equalsIgnoreCase( "EPSG:32239" )
|| name.equalsIgnoreCase( "EPSG:32240" )
|| name.equalsIgnoreCase( "EPSG:32241" )
|| name.equalsIgnoreCase( "EPSG:32242" )
|| name.equalsIgnoreCase( "EPSG:32243" )
|| name.equalsIgnoreCase( "EPSG:32244" )
|| name.equalsIgnoreCase( "EPSG:32245" )
|| name.equalsIgnoreCase( "EPSG:32246" )
|| name.equalsIgnoreCase( "EPSG:32247" )
|| name.equalsIgnoreCase( "EPSG:32248" )
|| name.equalsIgnoreCase( "EPSG:32249" )
|| name.equalsIgnoreCase( "EPSG:32250" )
|| name.equalsIgnoreCase( "EPSG:32251" )
|| name.equalsIgnoreCase( "EPSG:32252" )
|| name.equalsIgnoreCase( "EPSG:32253" )
|| name.equalsIgnoreCase( "EPSG:32254" )
|| name.equalsIgnoreCase( "EPSG:32255" )
|| name.equalsIgnoreCase( "EPSG:32256" )
|| name.equalsIgnoreCase( "EPSG:32257" )
|| name.equalsIgnoreCase( "EPSG:32258" )
|| name.equalsIgnoreCase( "EPSG:32259" )
|| name.equalsIgnoreCase( "EPSG:32260" ) ) {
String s = name.substring( 8, 10 );
int code = Integer.parseInt( s );
addEPSG322XX( code );
} else if ( name.equalsIgnoreCase( "EPSG:32401" ) || name.equalsIgnoreCase( "EPSG:32402" )
|| name.equalsIgnoreCase( "EPSG:32403" )
|| name.equalsIgnoreCase( "EPSG:32404" )
|| name.equalsIgnoreCase( "EPSG:32405" )
|| name.equalsIgnoreCase( "EPSG:32406" )
|| name.equalsIgnoreCase( "EPSG:32407" )
|| name.equalsIgnoreCase( "EPSG:32408" )
|| name.equalsIgnoreCase( "EPSG:32409" )
|| name.equalsIgnoreCase( "EPSG:32410" )
|| name.equalsIgnoreCase( "EPSG:32411" )
|| name.equalsIgnoreCase( "EPSG:32412" )
|| name.equalsIgnoreCase( "EPSG:32413" )
|| name.equalsIgnoreCase( "EPSG:32414" )
|| name.equalsIgnoreCase( "EPSG:32415" )
|| name.equalsIgnoreCase( "EPSG:32416" )
|| name.equalsIgnoreCase( "EPSG:32417" )
|| name.equalsIgnoreCase( "EPSG:32418" )
|| name.equalsIgnoreCase( "EPSG:32419" )
|| name.equalsIgnoreCase( "EPSG:32420" )
|| name.equalsIgnoreCase( "EPSG:32421" )
|| name.equalsIgnoreCase( "EPSG:32422" )
|| name.equalsIgnoreCase( "EPSG:32423" )
|| name.equalsIgnoreCase( "EPSG:32424" )
|| name.equalsIgnoreCase( "EPSG:32425" )
|| name.equalsIgnoreCase( "EPSG:32426" )
|| name.equalsIgnoreCase( "EPSG:32427" )
|| name.equalsIgnoreCase( "EPSG:32428" )
|| name.equalsIgnoreCase( "EPSG:32429" )
|| name.equalsIgnoreCase( "EPSG:32430" )
|| name.equalsIgnoreCase( "EPSG:32431" )
|| name.equalsIgnoreCase( "EPSG:32432" )
|| name.equalsIgnoreCase( "EPSG:32433" )
|| name.equalsIgnoreCase( "EPSG:32434" )
|| name.equalsIgnoreCase( "EPSG:32435" )
|| name.equalsIgnoreCase( "EPSG:32436" )
|| name.equalsIgnoreCase( "EPSG:32437" )
|| name.equalsIgnoreCase( "EPSG:32438" )
|| name.equalsIgnoreCase( "EPSG:32439" )
|| name.equalsIgnoreCase( "EPSG:32440" )
|| name.equalsIgnoreCase( "EPSG:32441" )
|| name.equalsIgnoreCase( "EPSG:32442" )
|| name.equalsIgnoreCase( "EPSG:32443" )
|| name.equalsIgnoreCase( "EPSG:32444" )
|| name.equalsIgnoreCase( "EPSG:32445" )
|| name.equalsIgnoreCase( "EPSG:32446" )
|| name.equalsIgnoreCase( "EPSG:32447" )
|| name.equalsIgnoreCase( "EPSG:32448" )
|| name.equalsIgnoreCase( "EPSG:32449" )
|| name.equalsIgnoreCase( "EPSG:32450" )
|| name.equalsIgnoreCase( "EPSG:32451" )
|| name.equalsIgnoreCase( "EPSG:32452" )
|| name.equalsIgnoreCase( "EPSG:32453" )
|| name.equalsIgnoreCase( "EPSG:32454" )
|| name.equalsIgnoreCase( "EPSG:32455" )
|| name.equalsIgnoreCase( "EPSG:32456" )
|| name.equalsIgnoreCase( "EPSG:32457" )
|| name.equalsIgnoreCase( "EPSG:32458" )
|| name.equalsIgnoreCase( "EPSG:32459" )
|| name.equalsIgnoreCase( "EPSG:32460" ) ) {
String s = name.substring( 8, 10 );
int code = Integer.parseInt( s );
addEPSG324XX( code );
} else if ( name.equalsIgnoreCase( "EPSG:32601" ) || name.equalsIgnoreCase( "EPSG:32602" )
|| name.equalsIgnoreCase( "EPSG:32603" )
|| name.equalsIgnoreCase( "EPSG:32604" )
|| name.equalsIgnoreCase( "EPSG:32605" )
|| name.equalsIgnoreCase( "EPSG:32606" )
|| name.equalsIgnoreCase( "EPSG:32607" )
|| name.equalsIgnoreCase( "EPSG:32608" )
|| name.equalsIgnoreCase( "EPSG:32609" )
|| name.equalsIgnoreCase( "EPSG:32610" )
|| name.equalsIgnoreCase( "EPSG:32611" )
|| name.equalsIgnoreCase( "EPSG:32612" )
|| name.equalsIgnoreCase( "EPSG:32613" )
|| name.equalsIgnoreCase( "EPSG:32614" )
|| name.equalsIgnoreCase( "EPSG:32615" )
|| name.equalsIgnoreCase( "EPSG:32616" )
|| name.equalsIgnoreCase( "EPSG:32617" )
|| name.equalsIgnoreCase( "EPSG:32618" )
|| name.equalsIgnoreCase( "EPSG:32619" )
|| name.equalsIgnoreCase( "EPSG:32620" )
|| name.equalsIgnoreCase( "EPSG:32621" )
|| name.equalsIgnoreCase( "EPSG:32622" )
|| name.equalsIgnoreCase( "EPSG:32623" )
|| name.equalsIgnoreCase( "EPSG:32624" )
|| name.equalsIgnoreCase( "EPSG:32625" )
|| name.equalsIgnoreCase( "EPSG:32626" )
|| name.equalsIgnoreCase( "EPSG:32627" )
|| name.equalsIgnoreCase( "EPSG:32628" )
|| name.equalsIgnoreCase( "EPSG:32629" )
|| name.equalsIgnoreCase( "EPSG:32630" )
|| name.equalsIgnoreCase( "EPSG:32631" )
|| name.equalsIgnoreCase( "EPSG:32632" )
|| name.equalsIgnoreCase( "EPSG:32633" )
|| name.equalsIgnoreCase( "EPSG:32634" )
|| name.equalsIgnoreCase( "EPSG:32635" )
|| name.equalsIgnoreCase( "EPSG:32636" )
|| name.equalsIgnoreCase( "EPSG:32637" )
|| name.equalsIgnoreCase( "EPSG:32638" )
|| name.equalsIgnoreCase( "EPSG:32639" )
|| name.equalsIgnoreCase( "EPSG:32640" )
|| name.equalsIgnoreCase( "EPSG:32641" )
|| name.equalsIgnoreCase( "EPSG:32642" )
|| name.equalsIgnoreCase( "EPSG:32643" )
|| name.equalsIgnoreCase( "EPSG:32644" )
|| name.equalsIgnoreCase( "EPSG:32645" )
|| name.equalsIgnoreCase( "EPSG:32646" )
|| name.equalsIgnoreCase( "EPSG:32647" )
|| name.equalsIgnoreCase( "EPSG:32648" )
|| name.equalsIgnoreCase( "EPSG:32649" )
|| name.equalsIgnoreCase( "EPSG:32650" )
|| name.equalsIgnoreCase( "EPSG:32651" )
|| name.equalsIgnoreCase( "EPSG:32652" )
|| name.equalsIgnoreCase( "EPSG:32653" )
|| name.equalsIgnoreCase( "EPSG:32654" )
|| name.equalsIgnoreCase( "EPSG:32655" )
|| name.equalsIgnoreCase( "EPSG:32656" )
|| name.equalsIgnoreCase( "EPSG:32657" )
|| name.equalsIgnoreCase( "EPSG:32658" )
|| name.equalsIgnoreCase( "EPSG:32659" )
|| name.equalsIgnoreCase( "EPSG:32660" ) ) {
String s = name.substring( 8, 10 );
int code = Integer.parseInt( s );
addEPSG326XX( code );
} else if ( name.equalsIgnoreCase( "EPSG:32701" ) || name.equalsIgnoreCase( "EPSG:32702" )
|| name.equalsIgnoreCase( "EPSG:32703" )
|| name.equalsIgnoreCase( "EPSG:32704" )
|| name.equalsIgnoreCase( "EPSG:32705" )
|| name.equalsIgnoreCase( "EPSG:32706" )
|| name.equalsIgnoreCase( "EPSG:32707" )
|| name.equalsIgnoreCase( "EPSG:32708" )
|| name.equalsIgnoreCase( "EPSG:32709" )
|| name.equalsIgnoreCase( "EPSG:32710" )
|| name.equalsIgnoreCase( "EPSG:32711" )
|| name.equalsIgnoreCase( "EPSG:32712" )
|| name.equalsIgnoreCase( "EPSG:32713" )
|| name.equalsIgnoreCase( "EPSG:32714" )
|| name.equalsIgnoreCase( "EPSG:32715" )
|| name.equalsIgnoreCase( "EPSG:32716" )
|| name.equalsIgnoreCase( "EPSG:32717" )
|| name.equalsIgnoreCase( "EPSG:32718" )
|| name.equalsIgnoreCase( "EPSG:32719" )
|| name.equalsIgnoreCase( "EPSG:32720" )
|| name.equalsIgnoreCase( "EPSG:32721" )
|| name.equalsIgnoreCase( "EPSG:32722" )
|| name.equalsIgnoreCase( "EPSG:32723" )
|| name.equalsIgnoreCase( "EPSG:32724" )
|| name.equalsIgnoreCase( "EPSG:32725" )
|| name.equalsIgnoreCase( "EPSG:32726" )
|| name.equalsIgnoreCase( "EPSG:32727" )
|| name.equalsIgnoreCase( "EPSG:32728" )
|| name.equalsIgnoreCase( "EPSG:32729" )
|| name.equalsIgnoreCase( "EPSG:32730" )
|| name.equalsIgnoreCase( "EPSG:32731" )
|| name.equalsIgnoreCase( "EPSG:32732" )
|| name.equalsIgnoreCase( "EPSG:32733" )
|| name.equalsIgnoreCase( "EPSG:32734" )
|| name.equalsIgnoreCase( "EPSG:32735" )
|| name.equalsIgnoreCase( "EPSG:32736" )
|| name.equalsIgnoreCase( "EPSG:32737" )
|| name.equalsIgnoreCase( "EPSG:32738" )
|| name.equalsIgnoreCase( "EPSG:32739" )
|| name.equalsIgnoreCase( "EPSG:32740" )
|| name.equalsIgnoreCase( "EPSG:32741" )
|| name.equalsIgnoreCase( "EPSG:32742" )
|| name.equalsIgnoreCase( "EPSG:32743" )
|| name.equalsIgnoreCase( "EPSG:32744" )
|| name.equalsIgnoreCase( "EPSG:32745" )
|| name.equalsIgnoreCase( "EPSG:32746" )
|| name.equalsIgnoreCase( "EPSG:32747" )
|| name.equalsIgnoreCase( "EPSG:32748" )
|| name.equalsIgnoreCase( "EPSG:32749" )
|| name.equalsIgnoreCase( "EPSG:32750" )
|| name.equalsIgnoreCase( "EPSG:32751" )
|| name.equalsIgnoreCase( "EPSG:32752" )
|| name.equalsIgnoreCase( "EPSG:32753" )
|| name.equalsIgnoreCase( "EPSG:32754" )
|| name.equalsIgnoreCase( "EPSG:32755" )
|| name.equalsIgnoreCase( "EPSG:32756" )
|| name.equalsIgnoreCase( "EPSG:32757" )
|| name.equalsIgnoreCase( "EPSG:32758" )
|| name.equalsIgnoreCase( "EPSG:32759" )
|| name.equalsIgnoreCase( "EPSG:32760" ) ) {
String s = name.substring( 8, 10 );
int code = Integer.parseInt( s );
addEPSG327XX( code );
} else if ( name.equalsIgnoreCase( "EPSG:4120" ) ) {
addEPSG4120();
} else if ( name.equalsIgnoreCase( "EPSG:4121" ) ) {
addEPSG4121();
} else if ( name.equalsIgnoreCase( "EPSG:4124" ) ) {
addEPSG4124();
} else if ( name.equalsIgnoreCase( "EPSG:4149" ) ) {
addEPSG4149();
} else if ( name.equalsIgnoreCase( "EPSG:4150" ) ) {
addEPSG4150();
} else if ( name.equalsIgnoreCase( "EPSG:4151" ) ) {
addEPSG4151();
} else if ( name.equalsIgnoreCase( "EPSG:4171" ) ) {
addEPSG4171();
} else if ( name.equalsIgnoreCase( "EPSG:4173" ) ) {
addEPSG4173();
} else if ( name.equalsIgnoreCase( "EPSG:4230" ) ) {
addEPSG4230();
} else if ( name.equalsIgnoreCase( "EPSG:4231" ) ) {
addEPSG4231();
} else if ( name.equalsIgnoreCase( "EPSG:4237" ) ) {
addEPSG4237();
} else if ( name.equalsIgnoreCase( "EPSG:4258" ) ) {
addEPSG4258();
} else if ( name.equalsIgnoreCase( "EPSG:4265" ) ) {
addEPSG4265();
} else if ( name.equalsIgnoreCase( "EPSG:4275" ) ) {
addEPSG4275();
} else if ( name.equalsIgnoreCase( "EPSG:4277" ) ) {
addEPSG4277();
} else if ( name.equalsIgnoreCase( "EPSG:4284" ) ) {
addEPSG4284();
} else if ( name.equalsIgnoreCase( "EPSG:4289" ) ) {
addEPSG4289();
} else if ( name.equalsIgnoreCase( "EPSG:4299" ) ) {
addEPSG4299();
} else if ( name.equalsIgnoreCase( "EPSG:4312" ) ) {
addEPSG4312();
} else if ( name.equalsIgnoreCase( "EPSG:4313" ) ) {
addEPSG4313();
} else if ( name.equalsIgnoreCase( "EPSG:4314" ) ) {
addEPSG4314();
} else if ( name.equalsIgnoreCase( "EPSG:32661" ) ) {
addEPSG32661();
} else if ( name.equalsIgnoreCase( "EPSG:4326" )
|| name.equalsIgnoreCase( "urn:ogc:def:crs:OGC:2:84" )
|| ( name.equalsIgnoreCase( "CRS:84" ) ) ) {
addEPSG4326( name );
} else if ( name.equalsIgnoreCase( "LuRef" ) ) {
addLuRef();
} else if ( name.equalsIgnoreCase( "EPSG:31287" ) ) {
addEPSG31287();
} else if ( name.equalsIgnoreCase( "EPSG:31300" ) ) {
addEPSG31300();
} else if ( name.equalsIgnoreCase( "EPSG:27561" ) ) {
addEPSG27561();
} else if ( name.equalsIgnoreCase( "EPSG:27562" ) ) {
addEPSG27562();
} else if ( name.equalsIgnoreCase( "EPSG:27563" ) ) {
addEPSG27563();
} else if ( name.equalsIgnoreCase( "EPSG:27564" ) ) {
addEPSG27564();
} else if ( name.equalsIgnoreCase( "EPSG:27571" ) ) {
addEPSG27571();
} else if ( name.equalsIgnoreCase( "EPSG:27572" ) ) {
addEPSG27572();
} else if ( name.equalsIgnoreCase( "EPSG:27573" ) ) {
addEPSG27573();
} else if ( name.equalsIgnoreCase( "EPSG:27574" ) ) {
addEPSG27574();
} else if ( name.equalsIgnoreCase( "EPSG:27581" ) ) {
addEPSG27581();
} else if ( name.equalsIgnoreCase( "EPSG:27582" ) ) {
addEPSG27582();
} else if ( name.equalsIgnoreCase( "EPSG:27583" ) ) {
addEPSG27583();
} else if ( name.equalsIgnoreCase( "EPSG:27584" ) ) {
addEPSG27584();
} else if ( name.equalsIgnoreCase( "EPSG:27591" ) ) {
addEPSG27591();
} else if ( name.equalsIgnoreCase( "EPSG:27592" ) ) {
addEPSG27592();
} else if ( name.equalsIgnoreCase( "EPSG:27593" ) ) {
addEPSG27593();
} else if ( name.equalsIgnoreCase( "EPSG:27594" ) ) {
addEPSG27594();
} else if ( name.equalsIgnoreCase( "EPSG:27291" ) ) {
addEPSG27291();
} else if ( name.equalsIgnoreCase( "EPSG:27292" ) ) {
addEPSG27292();
} else if ( name.equalsIgnoreCase( "EPSG:27200" ) ) {
addEPSG27200();
} else if ( name.equalsIgnoreCase( "EPSG:26716" ) ) {
addEPSG26716();
} else if ( name.equalsIgnoreCase( "EPSG:28992" ) ) {
addEPSG28992();
} else if ( name.equalsIgnoreCase( "EPSG:26912" ) ) {
addEPSG26912();
} else if ( name.equalsIgnoreCase( "EPSG:2152" ) ) {
addEPSG2152();
}
return (CoordinateSystem) systems.get( name );
}
/**
*
*/
private void addEPSG4267() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Clarke 1866", 6378206.4,
294.978698, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -3;
convInfo.dy = 142;
convInfo.dz = 183;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4267",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
private void addEPSG4269() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "GRS 1980", 6378137.0, 298.2572221,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4269",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
* Returns the parameter list descriptor for the specified properties list.
*/
private static ParameterListDescriptor getDescriptor( final Object[] properties ) {
final String[] names = new String[properties.length / 4];
final Class[] classes = new Class[names.length];
final Object[] defaults = new Object[names.length];
final Range[] ranges = new Range[names.length];
for ( int i = 0; i < names.length; i++ ) {
final int j = i * 4;
names[i] = (String) properties[j + 0];
classes[i] = (Class) properties[j + 1];
defaults[i] = properties[j + 2];
ranges[i] = (Range) properties[j + 3];
}
return new ParameterListDescriptorImpl( null, names, classes, defaults, ranges );
}
/**
*
*/
private void addEPSG4326( String name ) {
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
name,
Unit.DEGREE,
HorizontalDatum.WGS84,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
* <p>Norway - onshore.</p>
* <p>Geodetic survey. Recommended coordinate axis representation for the
* human interface.</p>
*/
private void addEPSG4817() {
Ellipsoid ellipsoid = csFactory.createFlattenedSphere( "NGO 1948 (Oslo)", 6377492.018,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 0;
convInfo.dy = 0;
convInfo.dz = 0;
HorizontalDatum hz = csFactory.createHorizontalDatum( "NGO 1948 (Oslo)", DatumType.CLASSIC,
ellipsoid, convInfo );
PrimeMeridian pm = csFactory.createPrimeMeridian( "NGO 1948 (Oslo)", Unit.DEGREE,
10.72291667 );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4817",
Unit.DEGREE,
hz,
pm,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4322() {
Ellipsoid ellipsoid = csFactory.createFlattenedSphere( "WGS 72", 6378135, 298.26,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 0;
convInfo.dy = 0;
convInfo.dz = 4.5;
convInfo.ex = 0;
convInfo.ey = 0;
convInfo.ez = 0.554;
convInfo.ppm = 0.2263;
HorizontalDatum hz = csFactory.createHorizontalDatum( "WGS 72", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4322",
Unit.DEGREE,
hz,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4324() {
Ellipsoid ellipsoid = csFactory.createFlattenedSphere( "WGS 72BE", 6378135, 298.26,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 0;
convInfo.dy = 0;
convInfo.dz = 1.9;
convInfo.ex = 0;
convInfo.ey = 0;
convInfo.ez = 0.814;
convInfo.ppm = -0.38;
HorizontalDatum hz = csFactory.createHorizontalDatum( "WGS 72 Transit Broadcast Ephemeris",
DatumType.CLASSIC, ellipsoid,
convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4324",
Unit.DEGREE,
hz,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4314() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 606.0;
convInfo.dy = 23;
convInfo.dz = 413;
convInfo.ex = 0;
convInfo.ey = 0;
convInfo.ez = 0;
convInfo.ppm = 0;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4314",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
* NZGD49 / alias = GD49
* <p>New Zealand</p>
* <p>Geodetic survey. Recommended coordinate axis representation for the
* human interface. Superseded by NZGD49 in March 2000. New Zealand Department
* of Lands and Surveys Technical Report No. 1; 1978.</p>
*/
private void addEPSG4272() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "International 1924", 6378388.0,
297.0, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 59.47;
convInfo.dy = -5.04;
convInfo.dz = 187.44;
convInfo.ex = -0.47;
convInfo.ey = 0.1;
convInfo.ez = -1.024;
convInfo.ppm = -4.5993;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4272",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4230() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "International 1924", 6378388.0,
297.0, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -87;
convInfo.dy = -98;
convInfo.dz = -121;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4230",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4801() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 660.077;
convInfo.dy = 13.551;
convInfo.dz = 369.344;
convInfo.ex = 2.484;
convInfo.ey = 1.738;
convInfo.ez = 2.939;
convInfo.ppm = 5.66;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4801",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4806() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "International 1924", 6378388.0,
297.0, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -225;
convInfo.dy = -65;
convInfo.dz = -9;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
PrimeMeridian pm = csFactory.createPrimeMeridian( "Rome", Unit.DEGREE, 12.45233333333333 );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4806",
Unit.DEGREE,
horDatum,
pm,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG23028() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = -15.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23028",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23029() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = -9.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23029",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23030() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = -3.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23030",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23031() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 3.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23031",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23032() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 9.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23032",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23033() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 15.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23033",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23034() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 21.0;
double easting = 0;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23034",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23035() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 27.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23035",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23036() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 33.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23036",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23037() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 39.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23037",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23038() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 45.0;
double easting = 500000;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23038",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23090() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 0.0;
double easting = 0;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23090",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG23095() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 5.0;
double easting = 0;
double northing = 0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:23095",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* German Gauss-Kr�ger Zones
*
* @param code
*/
private void addEPSG3146X( int code ) {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4314" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = ( ( code - 6 ) * 3.0 ) + 6;
double easting = 2500000 + ( ( code - 6 ) * 1000000 );
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:3146"
+ code, geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* German Gauss-Kr�ger Zones (old EPSG:code)
*
* @param code
*/
private void addEPSG3149X( int code ) {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4314" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = ( code * 3.0 );
double easting = 2500000 + ( ( code - 2 ) * 1000000 );
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:3149"
+ code, geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG4231() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "International 1924", 6378388.0,
297.0, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -82.981;
convInfo.dy = -99.719;
convInfo.dz = -110.709;
convInfo.ex = -0.5076;
convInfo.ey = -0.35;
convInfo.ez = 0.3898;
convInfo.ppm = -0.3143;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4231",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4258() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "GRS 1980", 6378137.0, 298.2572221,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4258",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4150() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 674.374;
convInfo.dy = 15.056;
convInfo.dz = 405.346;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4150",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4120() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -199.87;
convInfo.dy = 74.79;
convInfo.dz = 246.62;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4120",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4124() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 419.3836;
convInfo.dy = 99.3335;
convInfo.dz = 591.3451;
convInfo.ex = -0.850389;
convInfo.ey = -1.817277;
convInfo.ez = 7.862238;
convInfo.ppm = -0.99496;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4124",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4149() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 660.077;
convInfo.dy = 13.551;
convInfo.dz = 369.344;
convInfo.ex = 2.484;
convInfo.ey = 1.783;
convInfo.ez = 2.939;
convInfo.ppm = 5.66;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4149",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4151() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "GRS 1980", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 674.374;
convInfo.dy = 15.056;
convInfo.dz = 405.346;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4151",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4121() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "GRS 1980", 6378137.0, 298.2572221,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -199.87;
convInfo.dy = 74.79;
convInfo.dz = 246.62;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4121",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4171() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "GRS 1980", 6378137.0, 298.2572221,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4171",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4173() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "GRS 1980", 6378137.0, 298.2572221,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4173",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4237() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "GRS 1967", 6378160.0, 298.2471674,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -56;
convInfo.dy = 75.77;
convInfo.dz = 15.31;
convInfo.ex = -0.37;
convInfo.ey = -0.2;
convInfo.ez = -0.21;
convInfo.ppm = -1.01;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4237",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4265() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "International 1924", 6378388.0,
297.0, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -225;
convInfo.dy = -65;
convInfo.dz = 9;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4265",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4275() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Clark 1880 (IGN)", 6378249.2,
293.466021, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -168;
convInfo.dy = -60;
convInfo.dz = 320;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4275",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4807() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Clark 1880 (IGN)", 6378249.2,
293.466021, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -168;
convInfo.dy = -60;
convInfo.dz = +320;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
PrimeMeridian pm = csFactory.createPrimeMeridian( "Paris", Unit.DEGREE, 2.337229166666667 ); // 2.5969213 );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4807",
Unit.DEGREE,
horDatum,
pm,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4277() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Airy 1830", 6377563.0, 299.3249646,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 535.948;
convInfo.dy = -31.357;
convInfo.dz = 665.16;
convInfo.ex = 0.15;
convInfo.ey = 0.247;
convInfo.ez = 0.998;
convInfo.ppm = -21.689;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4277",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4284() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Krassowsky 1940", 6378245.0, 298.3,
Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 21.53219;
convInfo.dy = -97.00027;
convInfo.dz = -60.74046;
convInfo.ex = -0.99548;
convInfo.ey = -0.58147;
convInfo.ez = -0.2418;
convInfo.ppm = -4.5981;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4284",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4289() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 593.16;
convInfo.dy = 26.15;
convInfo.dz = 478.54;
convInfo.ex = -6.3239;
convInfo.ey = -0.5008;
convInfo.ez = -5.5487;
convInfo.ppm = 4.0775;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4289",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4299() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Airy Modified 1849", 6377340.189,
299.3249646, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 506;
convInfo.dy = -122;
convInfo.dz = 611;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4299",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4312() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = 682;
convInfo.dy = -203;
convInfo.dz = 480;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4312",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4308() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Bessel 1841", 6377397.155,
299.1528128, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
//??????
convInfo.dx = 682;
convInfo.dy = -203;
convInfo.dz = 480;
//??????
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4308",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
* <p>Portugal - onshore.</p>
* <p>Geodetic survey. Recommended coordinate axis representation for the
* human interface. Supersedes Lisbon 1890 system which used Bessel 1841
* ellipsoid. Superseded by Datum 73 (code 4274).
*/
private void addEPSG4803() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Lisbon 1937 (Lisbon)", 6378388,
297, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
//??????
convInfo.dx = 0;
convInfo.dy = 0;
convInfo.dz = 0;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4803",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
* <p>Portugal - onshore.</p>
* <p>Geodetic survey. Recommended coordinate axis representation for the
* human interface.</p>
*/
private void addEPSG4274() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "Datum 73", 6378388, 297, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -231;
convInfo.dy = 102.6;
convInfo.dz = 29.8;
convInfo.ex = -0.615;
convInfo.ey = -0.198;
convInfo.ez = 0.881;
convInfo.ppm = 1.79;
HorizontalDatum horDatum = new HorizontalDatum( "Datum 73", DatumType.CLASSIC, ellipsoid,
convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4274",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG4313() {
Ellipsoid ellipsoid = Ellipsoid.createFlattenedSphere( "International 1924", 6378388.0,
297.0, Unit.METRE );
WGS84ConversionInfo convInfo = new WGS84ConversionInfo();
convInfo.dx = -99.059;
convInfo.dy = 53.322;
convInfo.dz = -112.486;
convInfo.ex = -0.419;
convInfo.ey = 0.83;
convInfo.ez = -1.885;
convInfo.ppm = 0.999999;
HorizontalDatum horDatum = new HorizontalDatum( "My HorizontalDatum", DatumType.CLASSIC,
ellipsoid, convInfo );
GeographicCoordinateSystem cs = csFactory.createGeographicCoordinateSystem(
"EPSG:4313",
Unit.DEGREE,
horDatum,
PrimeMeridian.GREENWICH,
AxisInfo.LONGITUDE,
AxisInfo.LATITUDE );
save( cs );
}
/**
*
*/
private void addEPSG20790() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4803" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 1.0;
double easting = 200000.0;
double northing = 300000.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:20790",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG21780() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4801" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 0.0;
double easting = 0.0;
Projection projection = null;
/*
* implement factory for oblique mercator projection
*/
projection = csFactory.createProjection( "My projection", "Transverse_Mercator", ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, 0 ), 0 );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:21780",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG21781() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4149" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 7.495833333; // (7-26-22,5)
double easting = 600000.0;
Projection projection = null;
projection = csFactory.createProjection( "My projection", "Transverse_Mercator", ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, 0 ), 0 );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem(
"EPSG:21781",
geoCS,
projection,
org.deegree.model.csct.units.Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*
* @param code
*/
private void addEPSG258XX( int code ) {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4258" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = ( ( code - 28 ) * 6.0 ) - 15.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem(
"EPSG:258" + code,
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4314" );
ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
save( cs );
}
/**
*
*/
private void addEPSG25884() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4258" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 24.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:25884",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG26591() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4806" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 9.0;
double easting = 1500000.0;
double northing = 0.0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:26591",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG26592() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4806" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 15.0;
double easting = 2520000.0;
double northing = 0.0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:26592",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27391() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4817" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 4.66667; //(4-40-0)
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27391",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27392() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4817" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 2.33333; // (2-20-0)
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27392",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27393() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4817" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 0.0;
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27393",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27394() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4817" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 2.50; //(2-30-0)
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27394",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27395() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4817" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 6.16667; //(6-10-0)
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27395",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27396() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4817" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 10.16667; //(10-10-0)
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27396",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27397() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4817" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 14.16667; //(14-10-0)
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27397",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27398() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4817" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 18.33333; //(18-20-0)
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27398",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27429() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4274" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 9.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27429",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG27700() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4277" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 2.0;
double easting = 400000.0;
double northing = -100000.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27700",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28402() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 9.0;
double easting = 2500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28402",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28403() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 15.0;
double easting = 3500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28403",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28404() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 21.0;
double easting = 4500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28404",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28405() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 27.0;
double easting = 5500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28405",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28406() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 33.0;
double easting = 6500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28406",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28407() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 39.0;
double easting = 7500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28407",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28408() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 45.0;
double easting = 8500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28408",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28409() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 51.0;
double easting = 9500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28409",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG28462() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 9.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28462",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*
* @param code
*/
private void addEPSG2846X( int code ) {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4284" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = ( code * 6 ) - 3;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:2846X"
+ code, geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG29900() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4299" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 8.0;
double easting = 200000.0;
double northing = 250000.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:29900",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG30800() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4299" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 15.88277; //15-48-29,8
double easting = 1500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:30800",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31275() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4312" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 15.0;
double easting = 5500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31275",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31276() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4312" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 18.0;
double easting = 6500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31276",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31277() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4312" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 21.0;
double easting = 7500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31277",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31278() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4312" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 21.0;
double easting = 7500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31278",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31281() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4314" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 28.0;
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31281",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31282() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4314" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 31.0;
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31282",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31283() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4314" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 34.0;
double easting = 0.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31283",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31284() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4312" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 10.33333; //10-20-0
double easting = 150000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31284",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31285() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4312" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 13.33333; //13-20-0
double easting = 450000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31285",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG31286() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4312" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 16.33333; //16-20-0
double easting = 750000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31286",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*
* @param code
*/
private void addEPSG322XX( int code ) {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4322" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = ( ( code - 28 ) * 6.0 ) - 15.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
String s = null;
if ( code < 10 ) {
s = "EPSG:3220" + code;
} else {
s = "EPSG:322" + code;
}
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( s, geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*
* @param code
*/
private void addEPSG324XX( int code ) {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4324" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = ( ( code - 28 ) * 6.0 ) - 15.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
String s = null;
if ( code < 10 ) {
s = "EPSG:3240" + code;
} else {
s = "EPSG:324" + code;
}
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( s, geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*
* @param code
*/
private void addEPSG326XX( int code ) {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4326" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = ( ( code - 28 ) * 6.0 ) - 15.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
String s = null;
if ( code < 10 ) {
s = "EPSG:3260" + code;
} else {
s = "EPSG:326" + code;
}
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( s, geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*
* @param code
*/
private void addEPSG327XX( int code ) {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4326" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = ( ( code - 33 ) * 6.0 ) - 15.0;
double easting = 500000.0;
double northing = 1000000.0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
String s = null;
if ( code < 10 ) {
s = "EPSG:3270" + code;
} else {
s = "EPSG:327" + code;
}
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( s, geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG32661() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4326" );
if ( geoCS == null ) {
return;
}
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 0.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 1.0;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:32661",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addLuRef() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4230" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = 6.16666666666666666666666;
double centerLat = 49.833333333333333333333333;
double easting = 80000;
double northing = 100000;
double scaleFactor = 1;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian,
centerLat ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "LuRef", geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* MGI / Austria Lambert
*/
private void addEPSG31287() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4312" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 400000.0 );
param.setParameter( "false_northing", 400000.0 );
param.setParameter( "central_meridian", 13.33333333333333 );
param.setParameter( "latitude_of_origin", 47.5 );
param.setParameter( "standard_parallel1", 49.0 );
param.setParameter( "standard_parallel2", 46.0 );
param.setParameter( "scale_factor", 1.0 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31287",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* Belge 1972 / Belge Lambert 72
*/
private void addEPSG31300() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4313" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 150000.013 );
param.setParameter( "false_northing", 5400088.438 );
param.setParameter( "central_meridian", 4.3674866666667 );
param.setParameter( "latitude_of_origin", 90.0 );
param.setParameter( "standard_parallel1", 49.8333339 );
param.setParameter( "standard_parallel2", 51.1666672333333 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:31300",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**************************************************************************************************************
* NTF (Paris) / Lambert Nord France
*/
private void addEPSG27561() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 49.5 );
param.setParameter( "standard_parallel1", 48.59852277777780 );
param.setParameter( "standard_parallel2", 50.39591166666670 );
param.setParameter( "scale_factor", 0.999877341 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27561",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Lambert Centre France
*/
private void addEPSG27562() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 46.80 );
param.setParameter( "standard_parallel1", 45.8989188888889 );
param.setParameter( "standard_parallel2", 47.6960144444444 );
param.setParameter( "scale_factor", 0.99987742 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27562",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Lambert Sud France
*/
private void addEPSG27563() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 44.1 );
param.setParameter( "standard_parallel1", 43.1992913888888889 );
param.setParameter( "standard_parallel2", 44.9960938888888889 );
param.setParameter( "scale_factor", 0.999877499 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27563",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Lambert Corse
*/
private void addEPSG27564() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 234.358 );
param.setParameter( "false_northing", 185861.369 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 42.165 );
param.setParameter( "standard_parallel1", 41.56038777777778 );
param.setParameter( "standard_parallel2", 42.76766333333333 );
param.setParameter( "scale_factor", 0.99994471 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27564",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Lambert zone I
*/
private void addEPSG27571() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 1200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 49.5 );
param.setParameter( "standard_parallel1", 48.59852277777780 );
param.setParameter( "standard_parallel2", 50.39591166666670 );
param.setParameter( "scale_factor", 0.999877341 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27571",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Lambert zone II (France II etendu)
*/
private void addEPSG27572() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 2200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 46.8 );
param.setParameter( "standard_parallel1", 45.8989188888889 );
param.setParameter( "standard_parallel2", 47.6960144444444 );
param.setParameter( "scale_factor", 0.99987742 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27572",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Lambert zone III
*/
private void addEPSG27573() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 3200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 44.1 );
param.setParameter( "standard_parallel1", 43.1992913888888889 );
param.setParameter( "standard_parallel2", 44.9960938888888889 );
param.setParameter( "scale_factor", 0.999877499 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27573",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Lambert zone IV
*/
private void addEPSG27574() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 234.358 );
param.setParameter( "false_northing", 4185861.369 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 42.165 );
param.setParameter( "standard_parallel1", 41.56038777777778 );
param.setParameter( "standard_parallel2", 42.76766333333333 );
param.setParameter( "scale_factor", 0.99994471 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27574",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / France I (Deprecated for EPSG version 6.5)
*/
private void addEPSG27581() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 1200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 49.5 );
param.setParameter( "standard_parallel1", 48.59852277777780 );
param.setParameter( "standard_parallel2", 50.39591166666670 );
param.setParameter( "scale_factor", 0.999877341 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27581",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / France II (France II etendu) (Deprecated for EPSG version 6.5)
*/
private void addEPSG27582() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 2200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 46.8 );
param.setParameter( "standard_parallel1", 45.8989188888889 );
param.setParameter( "standard_parallel2", 47.6960144444444 );
param.setParameter( "scale_factor", 0.99987742 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27582",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / France III (Deprecated for EPSG version 6.5)
*/
private void addEPSG27583() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 3200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 44.1 );
param.setParameter( "standard_parallel1", 43.1992913888888889 );
param.setParameter( "standard_parallel2", 44.9960938888888889 );
param.setParameter( "scale_factor", 0.999877499 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27583",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / France IV (Deprecated for EPSG version 6.5)
*/
private void addEPSG27584() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 234.358 );
param.setParameter( "false_northing", 4185861.369 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 42.165 );
param.setParameter( "standard_parallel1", 41.56038777777778 );
param.setParameter( "standard_parallel2", 42.76766333333333 );
param.setParameter( "scale_factor", 0.99994471 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27584",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Nord France (Deprecated for EPSG version 6.5)
*/
private void addEPSG27591() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 49.5 );
param.setParameter( "standard_parallel1", 48.59852277777780 );
param.setParameter( "standard_parallel2", 50.39591166666670 );
param.setParameter( "scale_factor", 0.999877341 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27591",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Centre France (Deprecated for EPSG version 6.5)
*/
private void addEPSG27592() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 46.80 );
param.setParameter( "standard_parallel1", 45.8989188888889 );
param.setParameter( "standard_parallel2", 47.6960144444444 );
param.setParameter( "scale_factor", 0.99987742 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27592",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Sud France (Deprecated for EPSG version 6.5)
*/
private void addEPSG27593() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 600000.0 );
param.setParameter( "false_northing", 200000.0 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 44.1 );
param.setParameter( "standard_parallel1", 43.1992913888888889 );
param.setParameter( "standard_parallel2", 44.9960938888888889 );
param.setParameter( "scale_factor", 0.999877499 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27593",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* NTF (Paris) / Corse (Deprecated for EPSG version 6.5)
*/
private void addEPSG27594() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4807" );
if ( geoCS == null ) {
return;
}
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMajorAxis() );
param.setParameter( "semi_minor",
geoCS.getHorizontalDatum().getEllipsoid().getSemiMinorAxis() );
param.setParameter( "false_easting", 234.358 );
param.setParameter( "false_northing", 185861.369 );
param.setParameter( "central_meridian", 2.33722916666667 );
param.setParameter( "latitude_of_origin", 42.165 );
param.setParameter( "standard_parallel1", 41.56038777777778 );
param.setParameter( "standard_parallel2", 42.76766333333333 );
param.setParameter( "scale_factor", 0.99994471 );
Projection projection = csFactory.createProjection( "My projection",
"Lambert_Conformal_Conic_2SP", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27594",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* <p>NZGD49 / North Island Grid </p>
* <p>alias = GD49 / North Island Grid</p>
* <p>New Zealand - North Island.</p>
* <p>Large and medium scale topographic mapping and engineering survey.
* Sears 1922 British foot-metre conversion factor applied to ellipsoid.
* Superseded by 27200 (GD49 / New Zealand Map Grid) in 1972.</p>
* notice: british yards are used as units!
*/
private void addEPSG27291() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4272" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "hemisphere", -1 );
param.setParameter( "semi_major", ellipsoid.getSemiMajorAxis() );
param.setParameter( "semi_minor", ellipsoid.getSemiMinorAxis() );
param.setParameter( "false_easting", 300000.0 );
param.setParameter( "false_northing", 400000.0 );
param.setParameter( "central_meridian", -175.5 );
param.setParameter( "latitude_of_origin", -39.0 );
param.setParameter( "scale_factor", 1.0 );
Projection projection = csFactory.createProjection( "My projection", "Transverse_Mercator",
param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27291",
geoCS,
projection,
Unit.BRITISHYARD,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* <p>NZGD49 / South Island Grid</p>
* <p>alias = GD49 / South Island Grid</p>
* <p>New Zealand - South Island.</p>
* <p>Large and medium scale topographic mapping and engineering survey.
* Sears 1922 British foot-metre conversion factor applied to ellipsoid.
* Superseded by 27200 (GD49 / New Zealand Map Grid) in 1972.</p>
* notice: british yards are used as units!
*/
private void addEPSG27292() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4272" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "hemisphere", -1 );
param.setParameter( "semi_major", ellipsoid.getSemiMajorAxis() );
param.setParameter( "semi_minor", ellipsoid.getSemiMinorAxis() );
param.setParameter( "false_easting", 500000.0 );
param.setParameter( "false_northing", 500000.0 );
param.setParameter( "central_meridian", -171.5 );
param.setParameter( "latitude_of_origin", -44.0 );
param.setParameter( "scale_factor", 1.0 );
Projection projection = csFactory.createProjection( "My projection", "Transverse_Mercator",
param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27292",
geoCS,
projection,
Unit.BRITISHYARD,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* <p>NNZGD49 / New Zealand Map Grid</p>
* <p>alias = GD49 / NZ Map Grid</p>
* <p>New Zealand</p>
* <p>Large and medium scale topographic mapping and engineering survey.
* Supersedes 27291 (NZGD49 / North Island Grid) and 27292 (NZGD49 / South
* Island Grid) from 1972.
*/
private void addEPSG27200() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4272" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "hemisphere", -1 );
param.setParameter( "semi_major", ellipsoid.getSemiMajorAxis() );
param.setParameter( "semi_minor", ellipsoid.getSemiMinorAxis() );
param.setParameter( "false_easting", 2510000.0 );
param.setParameter( "false_northing", 6023150.0 );
param.setParameter( "central_meridian", 173.0 );
param.setParameter( "latitude_of_origin", -41.0 );
param.setParameter( "scale_factor", 1.0 );
Projection projection = csFactory.createProjection( "My projection", "Transverse_Mercator",
param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:27200",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
*
*/
private void addEPSG26716() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4267" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = -87.000000;
double easting = 500000.000000;
double northing = 0.0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:26716",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
/**
* <p>RD new / Amersfoort Rijksdriehoekstelsel</p>
*
* <p>The Netherlands</p>
* <p>Large and medium scale topographic mapping and engineering survey.
* Supersedes 28991 (Amersfoort / RD Old)
*
*/
private void addEPSG28992() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4289" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
ParameterList param = new ParameterListImpl( pld );
param.setParameter( "semi_major", ellipsoid.getSemiMajorAxis() );
param.setParameter( "semi_minor", ellipsoid.getSemiMinorAxis() );
param.setParameter( "false_easting", 155000.0 );
param.setParameter( "false_northing", 463000.0 );
param.setParameter( "central_meridian", 5.38763889 );
param.setParameter( "latitude_of_origin", 52.15616055 );
param.setParameter( "scale_factor", 0.99990790 );
Projection projection = csFactory.createProjection( "My projection", "Stereographic", param );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:28992",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
private void addEPSG26912() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4269" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = -111.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:26912",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
private void addEPSG2152() {
GeographicCoordinateSystem geoCS = (GeographicCoordinateSystem) getCSByName( "EPSG:4269" );
Ellipsoid ellipsoid = geoCS.getHorizontalDatum().getEllipsoid();
double centerMeridian = -111.0;
double easting = 500000.0;
double northing = 0.0;
double scaleFactor = 0.9996;
Projection projection = csFactory.createProjection(
"My projection",
"Transverse_Mercator",
ellipsoid,
new Point2D.Double( centerMeridian, 0 ),
new Point2D.Double( easting, northing ),
scaleFactor );
ProjectedCoordinateSystem cs = csFactory.createProjectedCoordinateSystem( "EPSG:2152",
geoCS,
projection,
Unit.METRE,
AxisInfo.X,
AxisInfo.Y );
save( cs );
}
}