/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); return values; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); if (!Double.isNaN(standardParallel)) { final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); set(expected, AbstractProvider.STANDARD_PARALLEL_1, values, standardParallel); } return values; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); if (!Double.isNaN(standardParallel)) { final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); set(expected, Provider.STANDARD_PARALLEL_1, values, standardParallel); } return values; }
@Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); final ParameterDescriptorGroup descriptor = getParameterDescriptors(); final Collection<GeneralParameterDescriptor> expected = descriptor.descriptors(); set(expected, Provider.SATELLITE_HEIGHT, values, h); return values; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); set(expected, AbstractProvider.STANDARD_PARALLEL_1, values, phi1); set(expected, AbstractProvider.STANDARD_PARALLEL_2, values, phi2); return values; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); set(expected, Provider.STANDARD_PARALLEL_1, values, phi1); set(expected, Provider.STANDARD_PARALLEL_2, values, phi2); return values; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); set(expected, Provider.LATITUDE_OF_CENTRE, values, latitudeOfCentre); set(expected, Provider.LONGITUDE_OF_CENTRE, values, centralMeridian); return values; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); set(expected, Provider.LATITUDE_OF_CENTRE, values, latitudeOfOrigin); set(expected, Provider.LONGITUDE_OF_CENTRE, values, centralMeridian); return values; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); set(expected, Provider.STANDARD_PARALLEL_1, values, phi1); set(expected, Provider.STANDARD_PARALLEL_2, values, phi2); return values; }
/** * Return the values of the parameters that define the projection. * * @see org.geotools.referencing.operation.projection.MapProjection#getParameterValues() */ @Override public ParameterValueGroup getParameterValues() { ParameterValueGroup values = super.getParameterValues(); List<GeneralParameterDescriptor> descriptors = getParameterDescriptors().descriptors(); set(descriptors, Provider.LONGITUDE_OF_CENTRE, values, centralMeridian); set(descriptors, Provider.LATITUDE_OF_CENTRE, values, latitudeOfOrigin); return values; } };
@Test public void testSpheroidalWKTParameters() { ParameterValueGroup parameters = CRS.getMapProjection(sphericalGeosCRS).getParameterValues(); double satelliteHeight = parameters.parameter("satellite_height").doubleValue(); assertThat(satelliteHeight, is(35832548.5)); }
@Test public void testEllipsoidalWKTParameters() { ParameterValueGroup parameters = CRS.getMapProjection(ellipsoidalGeosCRS).getParameterValues(); double satelliteHeight = parameters.parameter("satellite_height").doubleValue(); assertThat(satelliteHeight, is(35785831.0)); }
CRS.getMapProjection(renderingEnvelope.getCoordinateReferenceSystem()); if (mapProjection instanceof LambertAzimuthalEqualArea) { ParameterValueGroup params = mapProjection.getParameterValues(); double latitudeOfCenter = params.parameter(
private static GeneralDirectPosition getProjectionCenterLonLat( CoordinateReferenceSystem crs, GeneralDirectPosition centerPt) { // set defaults centerPt.setOrdinate(0, 0); centerPt.setOrdinate(1, 0); MapProjection projection = getMapProjection(crs); if (projection == null) { return centerPt; } for (GeneralParameterValue gpv : projection.getParameterValues().values()) { // for safety if (!(gpv instanceof ParameterValue)) { continue; } ParameterValue pv = (ParameterValue) gpv; ReferenceIdentifier pvName = pv.getDescriptor().getName(); if (MapProjection.AbstractProvider.LATITUDE_OF_ORIGIN.getName().equals(pvName)) { centerPt.setOrdinate(1, pv.doubleValue()); } else if (MapProjection.AbstractProvider.LATITUDE_OF_CENTRE.getName().equals(pvName)) { centerPt.setOrdinate(1, pv.doubleValue()); } else if (MapProjection.AbstractProvider.LONGITUDE_OF_CENTRE .getName() .equals(pvName)) { centerPt.setOrdinate(0, pv.doubleValue()); } else if (MapProjection.AbstractProvider.CENTRAL_MERIDIAN.getName().equals(pvName)) { centerPt.setOrdinate(0, pv.doubleValue()); } } return centerPt; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); final ParameterValueGroup values = super.getParameterValues(); set(expected, Provider.LATITUDE_OF_CENTER, values, latitudeOfOrigin); set(expected, Provider.LONGITUDE_OF_CENTER, values, centralMeridian); set(expected, Provider.AZIMUTH, values, azimuth); set(expected, Provider.PSEUDO_STANDARD_PARALLEL, values, pseudoStandardParallel); set(expected, Provider.SCALE_FACTOR, values, scaleFactor); set(expected, Provider.X_SCALE, values, x_scale); set(expected, Provider.Y_SCALE, values, y_scale); set(expected, Provider.XY_PLANE_ROTATION, values, xy_plane_rotation); return values; }
/** {@inheritDoc} */ @Override public ParameterValueGroup getParameterValues() { final ParameterValueGroup values = super.getParameterValues(); final Collection<GeneralParameterDescriptor> expected = getParameterDescriptors().descriptors(); // Note: we don't need a "if (twoPoint) ... else" statement since // the "set" method will actually set the value only if applicable. set(expected, Provider.LATITUDE_OF_CENTRE, values, latitudeOfCentre); set(expected, Provider.LONGITUDE_OF_CENTRE, values, longitudeOfCentre); set(expected, Provider.AZIMUTH, values, azimuth); set(expected, Provider.RECTIFIED_GRID_ANGLE, values, rectifiedGridAngle); set(expected, Provider_TwoPoint.LAT_OF_1ST_POINT, values, latitudeOf1stPoint); set(expected, Provider_TwoPoint.LONG_OF_1ST_POINT, values, longitudeOf1stPoint); set(expected, Provider_TwoPoint.LAT_OF_2ND_POINT, values, latitudeOf2ndPoint); set(expected, Provider_TwoPoint.LONG_OF_2ND_POINT, values, longitudeOf2ndPoint); return values; }
double centralMeridian = mapProjection .getParameterValues() .parameter(AbstractProvider.CENTRAL_MERIDIAN.getName().getCode()) .doubleValue();
double centralMeridian = mapProjection .getParameterValues() .parameter(AbstractProvider.CENTRAL_MERIDIAN.getName().getCode()) .doubleValue();
/** Circumscribed rectangle (smallest) for full disk earth image */ public static Envelope2D circumscribeFullDisk(CoordinateReferenceSystem geosCRS) throws TransformException, FactoryException { if (!isGeostationaryCRS(geosCRS)) { return null; } MathTransform mt = CRS.findMathTransform(geosCRS, CRS.getProjectedCRS(geosCRS).getBaseCRS(), true); MathTransform imt = mt.inverse(); ParameterValueGroup parameters = CRS.getMapProjection(geosCRS).getParameterValues(); double semiMajorAxis = parameters.parameter("semi_major").doubleValue(); double satelliteHeight = parameters.parameter("satellite_height").doubleValue(); double centralMeridian = parameters.parameter("central_meridian").doubleValue(); DirectPosition2D dp2d = new DirectPosition2D(); double halfFoVRadians = Math.acos(semiMajorAxis / (satelliteHeight + semiMajorAxis)); double halfFoVDegrees = Math.toDegrees(halfFoVRadians); dp2d.setLocation(centralMeridian - halfFoVDegrees, 0.); imt.transform(dp2d, dp2d); double xMin = dp2d.getX(); dp2d.setLocation(centralMeridian + halfFoVDegrees, 0.); imt.transform(dp2d, dp2d); double xMax = dp2d.getX(); dp2d.setLocation(centralMeridian, -halfFoVDegrees); imt.transform(dp2d, dp2d); double yMin = dp2d.getY(); dp2d.setLocation(centralMeridian, halfFoVDegrees); imt.transform(dp2d, dp2d); double yMax = dp2d.getY(); return new Envelope2D(geosCRS, xMin, yMin, xMax - xMin, yMax - yMin); }
if (mapProjection instanceof LambertConformal || mapProjection instanceof EquidistantConic) { ParameterValueGroup params = mapProjection.getParameterValues(); double centralMeridian = params.parameter(AbstractProvider.CENTRAL_MERIDIAN.getName().getCode())