/** * 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 ) ); }
/** * @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 ) ); } }
/** * @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 ) ); }
/** * 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 ) ); }
/** * 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 ) ); }
/** * Unit constructor. * * @param symbol * @param name * of the unit, e.g. metre * @param code * of the unit */ public Unit( final String symbol, final String name, final CRSCodeType code ) { super( new CRSIdentifiable( new CRSCodeType[] { code }, new String[] { name }, null, null, null ) ); this.symbol = symbol; this.scale = 1; this.baseType = this; }
/** * @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 ) ); }
/** * 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 ) ); }
/** * @param units * @param semiMajorAxis * @param semiMinorAxis * @param codes * @param names * @param versions * @param descriptions * @param areasOfUse */ public Ellipsoid( IUnit units, double semiMajorAxis, double semiMinorAxis, CRSCodeType[] codes, String[] names, String[] versions, String[] descriptions, String[] areasOfUse ) { this( units, semiMajorAxis, semiMinorAxis, new CRSIdentifiable( codes, names, versions, descriptions, areasOfUse ) ); }
/** * @param semiMajorAxis * @param units * @param inverseFlattening * @param codes * @param names * @param versions * @param descriptions * @param areasOfUse */ public Ellipsoid( double semiMajorAxis, IUnit units, double inverseFlattening, CRSCodeType[] codes, String[] names, String[] versions, String[] descriptions, String[] areasOfUse ) { this( semiMajorAxis, units, inverseFlattening, new CRSIdentifiable( codes, names, versions, descriptions, areasOfUse ) ); }
/** * @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" ) ) ); }
/** * 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 ) ) ); }
/** * 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 ) ) ); }
private ICRS createXYCoordinateSystem( ICRS result ) { switch ( result.getType() ) { case GEOGRAPHIC: return new GeographicCRS( ( (GeographicCRS) result ).getGeodeticDatum(), forceXYAxisOrder( result.getAxis() ), new CRSIdentifiable( result ) ); case COMPOUND: CompoundCRS comp = (CompoundCRS) result; return new CompoundCRS( comp.getHeightAxis(), createXYCoordinateSystem( comp.getUnderlyingCRS() ), comp.getDefaultHeight(), new CRSIdentifiable( comp ) ); } return result; }
private Transformation createFromCompound( ICompoundCRS sourceCRS, ICRS targetCRS ) throws TransformationException { ICompoundCRS target; if ( targetCRS.getType() != COMPOUND ) { target = new CompoundCRS( sourceCRS.getHeightAxis(), targetCRS, sourceCRS.getDefaultHeight(), new CRSIdentifiable( new CRSCodeType[] { CRSCodeType.valueOf( targetCRS.getCode() + "_compound" ) } ) ); } else { target = (ICompoundCRS) targetCRS; } return createTransformation( sourceCRS, target ); }
/** * @param source * the geographic crs. * @param target * the geocentric crs. */ public GeocentricTransform( ICRS source, IGeocentricCRS target ) { this( source, target, new CRSIdentifiable( CRSCodeType.valueOf( createFromTo( source.getCode().toString(), target.getCode().toString() ) ) ) ); }
/** * @param sourceCRS * @param targetCRS */ public NotSupportedTransformation( ICRS sourceCRS, ICRS targetCRS ) { this( sourceCRS, targetCRS, new CRSIdentifiable( CRSCodeType.valueOf( createFromTo( sourceCRS.getCode().toString(), targetCRS.getCode().toString() ) ) ) ); }
/** * Construct a 3d transform. * * @param source * the source coordinate system * @param target * the target coordinate system. * * @param matrix */ public MatrixTransform( ICRS source, ICRS target, final Matrix3d matrix ) { this( source, target, matrix, new CRSIdentifiable( CRSCodeType.valueOf( createFromTo( source.getCode().toString(), target.getCode().toString() ) ) ) ); }
/** * @param projectedCRS * The crs containing a projection. */ public ProjectionTransform( IProjectedCRS projectedCRS ) { this( projectedCRS, new CRSIdentifiable( CRSCodeType.valueOf( createFromTo( projectedCRS.getGeographicCRS().getCode().toString(), projectedCRS.getCode().toString() ) ) ) ); }