/** * @param falseNorthing * @param falseEasting * @param naturalOrigin * @param units * @param scale */ public LambertAzimuthalEqualArea( double falseNorthing, double falseEasting, Point2d naturalOrigin, IUnit units, double scale ) { this( falseNorthing, falseEasting, naturalOrigin, units, scale, new CRSIdentifiable( new EPSGCode( 9820 ) ) ); }
/** * @param sourceCRS * @param targetCRS */ public IdentityTransform( ICRS sourceCRS, ICRS targetCRS ) { super( sourceCRS, targetCRS, new CRSIdentifiable( new CRSCodeType( "id" ) ) ); }
@Override public String getId() { if ( codes != null && codes.length > 0 ) { return codes[0].getOriginal(); } return null; }
/** * Takes the references of the other object and stores them in this CRSIdentifiable Object. * * @param other * identifiable object. */ public CRSIdentifiable( CRSResource other ) { this( other.getCodes(), other.getNames(), other.getVersions(), other.getDescriptions(), other.getAreasOfUse() ); }
/** * Returns the CRSCodeType that can be constructed from the string parameter. * * @param codeAsString * @return the parsed string as a code type * @throws IllegalArgumentException */ public static CRSCodeType valueOf( String codeAsString ) throws IllegalArgumentException { return new CRSCodeType( codeAsString ); }
/** * A datum with given ellipsoid and a GreenWich prime-meridian, with no helmert. * * @param ellipsoid * of this datum * @param code * @param name */ public GeodeticDatum( IEllipsoid ellipsoid, CRSCodeType code, String name ) { this( ellipsoid, PrimeMeridian.GREENWICH, null, new CRSIdentifiable( new CRSCodeType[] { code }, new String[] { name }, null, null, null ) ); }
/** * Unit constructor. * * @param symbol * @param name * of the unit, e.g. metre */ public Unit( final String symbol, final String name ) { this( symbol, name, CRSCodeType.valueOf( name ) ); }
/** * @param id * a string which could match this identifiable. * @return true if this identifiable can be identified with the given string, false otherwise. */ public boolean hasCode( CRSCodeType id ) { for ( CRSCodeType code : codes ) { if ( code.equals( id ) ) { return true; } } return false; }
/** * Sets the id to EPSG:9804 * * @param geographicCRS * @param falseNorthing * @param falseEasting * @param naturalOrigin * @param units * @param scale */ public Mercator( double falseNorthing, double falseEasting, Point2d naturalOrigin, Unit units, double scale ) { this( falseNorthing, falseEasting, naturalOrigin, units, scale, new CRSIdentifiable( new EPSGCode( 9804 ) ) ); }
/** * @return the codetypes as the original strings, each identifiable object has atleast one id. */ public final String[] getOrignalCodeStrings() { String[] result = new String[codes.length]; for ( int i = 0; i < codes.length; ++i ) { result[i] = codes[i].getOriginal(); } return result; }
/** * @return The code used when a {@link CRSIdentifiable} has no id. The code used is "NOT PROVIDED". */ public static CRSCodeType getUndefined() { return new CRSCodeType( "NOT PROVIDED" ); }
/** * @param codes * @param names * @param versions * @param descriptions * @param areasOfUse */ public Datum( CRSCodeType[] codes, String[] names, String[] versions, String[] descriptions, String[] areasOfUse ) { this( new CRSIdentifiable( codes, names, versions, descriptions, areasOfUse ) ); } }
/** * Sets the id of this projection to epsg::9809 (Oblique Stereographic) * * @param geographicCRS * @param falseNorthing * @param falseEasting * @param naturalOrigin * @param units * @param scale */ public StereographicAlternative( double falseNorthing, double falseEasting, Point2d naturalOrigin, IUnit units, double scale ) { this( falseNorthing, falseEasting, naturalOrigin, units, scale, new CRSIdentifiable( new EPSGCode( 9809 ) ) ); }
/** * @param codes * @param names * @param versions * @param descriptions * @param areasOfUse */ public VerticalDatum( CRSCodeType[] codes, String[] names, String[] versions, String[] descriptions, String[] areasOfUse ) { this( new CRSIdentifiable( codes, names, versions, descriptions, areasOfUse ) ); }
/** * Sets the false-easting to 50000, false-northing to 0 or 10000000 (depending on the hemisphere), the * projection-longitude is calculated from the zone and the projection-latitude is set to 0. The scale will be * 0.9996. * * @param zone * to add * @param northernHemisphere * true if the projection is on the northern hemisphere * @param geographicCRS * @param units */ public TransverseMercator( int zone, boolean northernHemisphere, IUnit units ) { this( zone, northernHemisphere, units, new CRSIdentifiable( new EPSGCode( 9807 ) ) ); }
/** * A datum with given ellipsoid and a GreenWich prime-meridian. * * @param ellipsoid * of this datum * @param toWGS84 * bursa-wolf parameters describing the transform from this datum into the wgs84 datum. * @param codes */ public GeodeticDatum( IEllipsoid ellipsoid, Helmert toWGS84, CRSCodeType[] codes ) { this( ellipsoid, PrimeMeridian.GREENWICH, toWGS84, new CRSIdentifiable( codes, null, null, null, null ) ); }
/** * Sets the id to EPSG:9807 * * @param northernHemisphere * true if on the northern hemisphere false otherwise. * @param geographicCRS * @param falseNorthing * @param falseEasting * @param naturalOrigin * @param units * @param scale */ public TransverseMercator( boolean northernHemisphere, double falseNorthing, double falseEasting, Point2d naturalOrigin, IUnit units, double scale ) { this( northernHemisphere, falseNorthing, falseEasting, naturalOrigin, units, scale, new CRSIdentifiable( new EPSGCode( 9807 ) ) ); }
/** * A datum with given ellipsoid and a GreenWich prime-meridian. * * @param ellipsoid * of this datum * @param toWGS84 * bursa-wolf parameters describing the transform from this datum into the wgs84 datum. * @param code * @param name */ public GeodeticDatum( IEllipsoid ellipsoid, Helmert toWGS84, CRSCodeType code, String name ) { this( ellipsoid, PrimeMeridian.GREENWICH, toWGS84, new CRSIdentifiable( new CRSCodeType[] { code }, new String[] { name }, null, null, null ) ); }
/** * A datum with given ellipsoid and a prime-meridian. * * @param ellipsoid * of this datum * @param primeMeridian * to which this datum is defined. * @param toWGS84 * bursa-wolf parameters describing the transform from this datum into the wgs84 datum. * @param codes */ public GeodeticDatum( IEllipsoid ellipsoid, IPrimeMeridian primeMeridian, Helmert toWGS84, CRSCodeType[] codes ) { this( ellipsoid, primeMeridian, toWGS84, new CRSIdentifiable( codes, null, null, null, null ) ); }
/** * @param semiMajorAxis * @param eccentricity * @param units * @param codes * @param names * @param versions * @param descriptions * @param areasOfUse */ public Ellipsoid( double semiMajorAxis, double eccentricity, IUnit units, CRSCodeType[] codes, String[] names, String[] versions, String[] descriptions, String[] areasOfUse ) { this( semiMajorAxis, eccentricity, units, new CRSIdentifiable( codes, names, versions, descriptions, areasOfUse ) ); }