/** * Constructor with default parameters */ public LambertConformal() { this(40.0, -105.0, 20.0, 60.0, 0.0, 0.0, Earth.getRadius()*.001); }
/** * Construct a AlbersEqualArea Projection, two standard parellels. * For the one standard parellel case, set them both to the same value. * * @param lat0 lat origin of the coord. system on the projection plane * @param lon0 lon origin of the coord. system on the projection plane * @param par1 standard parallel 1 * @param par2 standard parallel 2 * @throws IllegalArgumentException if lat0, par1, par2 = +/-90 deg */ public AlbersEqualArea(double lat0, double lon0, double par1, double par2) { this(lat0, lon0, par1, par2, 0, 0, Earth.getRadius()*.001); }
/** * Construct a AlbersEqualArea Projection, two standard parellels. * For the one standard parellel case, set them both to the same value. * * @param lat0 lat origin of the coord. system on the projection plane * @param lon0 lon origin of the coord. system on the projection plane * @param par1 standard parallel 1 * @param par2 standard parallel 2 * @throws IllegalArgumentException if lat0, par1, par2 = +/-90 deg */ public AlbersEqualArea(double lat0, double lon0, double par1, double par2) { this(lat0, lon0, par1, par2, 0, 0, Earth.getRadius()*.001); }
/** * Construct a AlbersEqualArea Projection, two standard parellels. * For the one standard parellel case, set them both to the same value. * * @param lat0 lat origin of the coord. system on the projection plane * @param lon0 lon origin of the coord. system on the projection plane * @param par1 standard parallel 1 * @param par2 standard parallel 2 * @throws IllegalArgumentException if lat0, par1, par2 = +/-90 deg */ public AlbersEqualArea(double lat0, double lon0, double par1, double par2) { this(lat0, lon0, par1, par2, 0, 0, Earth.getRadius()*.001); }
/** * Construct a LambertConformal Projection, two standard parellels. * For the one standard parellel case, set them both to the same value. * * @param lat0 lat origin of the coord. system on the projection plane * @param lon0 lon origin of the coord. system on the projection plane * @param par1 standard parallel 1 * @param par2 standard parallel 2 * @throws IllegalArgumentException if lat0, par1, par2 = +/-90 deg */ public LambertConformal(double lat0, double lon0, double par1, double par2) { this(lat0, lon0, par1, par2, 0.0, 0.0, Earth.getRadius()*.001); }
/** debug */ static public void main( String[] args) { System.out.println("1 Deg="+Math.toDegrees( 1000 * 111.0 / Earth.getRadius())); }
/** debug */ static public void main( String[] args) { System.out.println("1 Deg="+Math.toDegrees( 1000 * 111.0 / Earth.getRadius())); }
/** debug */ static public void main( String[] args) { System.out.println("1 Deg="+Math.toDegrees( 1000 * 111.0 / Earth.getRadius())); }
/** * Get the earth radius in km from the attribute "earth_radius". * Normally this is in meters, convert to km if its > 10,000. * Use Earth.getRadius() as default. * @param ctv coord transform variable * @return earth radius in km */ protected double getEarthRadiusInKm(Variable ctv) { double earth_radius = readAttributeDouble(ctv, CF.EARTH_RADIUS, Earth.getRadius()); if (earth_radius > 10000.0) earth_radius *= .001; return earth_radius; }
/** * Get the earth radius in km from the attribute "earth_radius". * Normally this is in meters, convert to km if its > 10,000. * Use Earth.getRadius() as default. * @param ctv coord transform variable * @return earth radius in km */ protected double getEarthRadiusInKm(Variable ctv) { double earth_radius = readAttributeDouble(ctv, CF.EARTH_RADIUS, Earth.getRadius()); if (earth_radius > 10000.0) earth_radius *= .001; return earth_radius; }
/** * Get the earth radius in km from the attribute "earth_radius". * Normally this is in meters, convert to km if its > 10,000. * Use Earth.getRadius() as default. * * @param ctv coord transform variable * @return earth radius in km */ protected double getEarthRadiusInKm(AttributeContainer ctv) { double earth_radius = readAttributeDouble(ctv, CF.EARTH_RADIUS, Earth.getRadius()); if (earth_radius > 10000.0) earth_radius *= .001; return earth_radius; }
protected void setBoundingBox() { LatLonRect bb; if (origin == null) return; double dLat = Math.toDegrees( getMaximumRadialDist() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); boundingBox = bb; }
protected void setBoundingBox() { LatLonRect bb; if (origin == null) return; double dLat = Math.toDegrees( getMaximumRadialDist() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); boundingBox = bb; }
public LatLonRect getBoundingBox() { if (bb != null) return bb; if (origin == null) return null; double dLat = Math.toDegrees( getMaximumRadial() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); return bb; }
public LatLonRect getBoundingBox() { if (bb != null) return bb; if (origin == null) return null; double dLat = Math.toDegrees( getMaximumRadial() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); return bb; }
protected void setBoundingBox() { LatLonRect bb; if (origin == null) return; double dLat = Math.toDegrees( getMaximumRadialDist() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); boundingBox = bb; }
protected void setBoundingBox() { LatLonRect bb; if (origin == null) return; double dLat = Math.toDegrees( getMaximumRadialDist() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); boundingBox = bb; }
protected void setBoundingBox() { LatLonRect bb; if (origin == null) return; double dLat = Math.toDegrees( getMaximumRadialDist() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); boundingBox = bb; }
protected void setBoundingBox() { LatLonRect bb; if (origin == null) return; double dLat = Math.toDegrees( getMaximumRadialDist() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); boundingBox = bb; }
public LatLonRect getBoundingBox() { if (bb != null) return bb; if (origin == null) return null; double dLat = Math.toDegrees( getMaximumRadial() / Earth.getRadius()); double latRadians = Math.toRadians( origin.getLatitude()); double dLon = dLat * Math.cos(latRadians); double lat1 = origin.getLatitude() - dLat/2; double lon1 = origin.getLongitude() - dLon/2; bb = new LatLonRect( new LatLonPointImpl( lat1, lon1), dLat, dLon); return bb; }