Package org.opengis.parameter

Examples of org.opengis.parameter.ParameterValueGroup


            rasterSpaceEnvelope = CRS.transform(mt, targetEnvelope).toRectangle2D().getBounds();
            GridEnvelope2D gridRange = new GridEnvelope2D(rasterSpaceEnvelope);
            GridGeometry2D gridGeometry = new GridGeometry2D(gridRange, targetEnvelope);

            // mosaic
            final ParameterValueGroup param = MOSAIC_PARAMS.clone();
            param.parameter("sources").setValue(coverages);
            param.parameter("geometry").setValue(gridGeometry);
            return (GridCoverage2D) MOSAIC_FACTORY.doOperation(param, hints);
        } catch (Exception e) {
            throw new RuntimeException("Failed to mosaic the input coverages", e);
        }
View Full Code Here


          //
          // //
          final CoverageProcessor processor = new CoverageProcessor(
              this.getHints());
          // get the source
          final ParameterValueGroup parameters = processor
              .getOperation("SelectSampleDimension")
              .getParameters();
          parameters.parameter("SampleDimensions").setValue(
              new int[] { bandIndex - 1 });
          parameters.parameter("Source").setValue(source);

          // //
          //
          // Save the output
          //
View Full Code Here

    @Test
    public void testCreation() throws FactoryException {
        final CoordinateOperationFactory opf = ReferencingFactoryFinder.getCoordinateOperationFactory(null);
        CoordinateReferenceSystem sourceCRS, targetCRS;
        CoordinateOperation operation;
        ParameterValueGroup parameters;

        sourceCRS = factory.createCoordinateReferenceSystem("4274");
        assertEquals("4274", getIdentifier(sourceCRS));
        assertTrue(sourceCRS instanceof GeographicCRS);
        assertEquals(2, sourceCRS.getCoordinateSystem().getDimension());

        sourceCRS = factory.createCoordinateReferenceSystem("EPSG:4140");
        assertEquals("4140", getIdentifier(sourceCRS));
        assertTrue(sourceCRS instanceof GeographicCRS);
        assertEquals(2, sourceCRS.getCoordinateSystem().getDimension());

        sourceCRS = factory.createCoordinateReferenceSystem("2027");
        assertEquals("2027", getIdentifier(sourceCRS));
        assertTrue(sourceCRS instanceof ProjectedCRS);
        assertEquals(2, sourceCRS.getCoordinateSystem().getDimension());
        parameters = ((ProjectedCRS) sourceCRS).getConversionFromBase().getParameterValues();
        assertEquals(   -93, parameters.parameter("central_meridian"  ).doubleValue(), EPS);
        assertEquals(     0, parameters.parameter("latitude_of_origin").doubleValue(), EPS);
        assertEquals(0.9996, parameters.parameter("scale_factor"      ).doubleValue(), EPS);
        assertEquals(500000, parameters.parameter("false_easting"     ).doubleValue(), EPS);
        assertEquals(     0, parameters.parameter("false_northing"    ).doubleValue(), EPS);

        sourceCRS = factory.createCoordinateReferenceSystem(" EPSG : 2442 ");
        assertEquals("2442", getIdentifier(sourceCRS));
        assertTrue(sourceCRS instanceof ProjectedCRS);
        assertEquals(2, sourceCRS.getCoordinateSystem().getDimension());
        parameters = ((ProjectedCRS) sourceCRS).getConversionFromBase().getParameterValues();
        assertEquals(   135, parameters.parameter("central_meridian"  ).doubleValue(), EPS);
        assertEquals(     0, parameters.parameter("latitude_of_origin").doubleValue(), EPS);
        assertEquals(     1, parameters.parameter("scale_factor"      ).doubleValue(), EPS);
        assertEquals(500000, parameters.parameter("false_easting"     ).doubleValue(), EPS);
        assertEquals(     0, parameters.parameter("false_northing"    ).doubleValue(), EPS);

        sourceCRS = factory.createCoordinateReferenceSystem("EPSG:4915");
        assertEquals("4915", getIdentifier(sourceCRS));
        assertTrue(sourceCRS instanceof GeocentricCRS);
        assertEquals(3, sourceCRS.getCoordinateSystem().getDimension());
View Full Code Here

        return !envelope.isEmpty() && !envelope.isNull() && envelope.getWidth() > 0
                && envelope.getHeight() > 0;
    }

    private GridCoverage2D cropCoverage(GridCoverage2D coverage, ReferencedEnvelope cropEnvelope) {
        final ParameterValueGroup param = CROP.getParameters();
        param.parameter("Source").setValue(coverage);
        param.parameter("Envelope").setValue(cropEnvelope);

        GridCoverage2D cropped = (GridCoverage2D) PROCESSOR.doOperation(param);
        return cropped;
    }
View Full Code Here

        double xl = sourceEnvelope.getSpan(0);
        double yl = sourceEnvelope.getSpan(1);
        final GeneralEnvelope cropEnvelope = new GeneralEnvelope(new double[] { xc - xl / 4.0,
                yc - yl / 4.0 }, new double[] { xc + xl / 4.0, yc + yl / 4.0 });
        final CoverageProcessor processor = new CoverageProcessor();
        final ParameterValueGroup param = processor.getOperation("CoverageCrop").getParameters();
        param.parameter("Source").setValue(gc);
        param.parameter("Envelope").setValue(cropEnvelope);
        final GridCoverage2D cropped = (GridCoverage2D) processor.doOperation(param);

        // /////////////////////////////////////////////////////////////////////
        //
        // Check that we got everything correctly after the crop.
View Full Code Here

                        if(!CRS.equalsIgnoreMetadata(renderingEnvelope.getCoordinateReferenceSystem(), coverageCRS)) {
                            renderingEnvelope = renderingEnvelope.transform(coverageCRS, true);
                        }
                        if(coverage.getEnvelope2D().intersects(renderingEnvelope)) {
                            // the resulting coverage might be larger than the readGG envelope, shall we crop it?
                            final ParameterValueGroup param = CROP.getParameters();
                            param.parameter("Source").setValue(coverage);
                            param.parameter("Envelope").setValue(renderingEnvelope);
                            coverage = (GridCoverage2D) PROCESSOR.doOperation(param);
                        } else {
                            coverage = null;
                        }
                       
                        if(coverage != null) {
                            // we might also need to scale the coverage to the desired resolution
                            MathTransform2D coverageTx = readGG.getGridToCRS2D();
                            if(coverageTx instanceof AffineTransform) {
                                AffineTransform coverageAt = (AffineTransform) coverageTx;
                                AffineTransform renderingAt = (AffineTransform) gridGeometry.getGridToCRS2D();
                                // we adjust the scale only if we have many more pixels than required (30% or more)
                                final double ratioX = coverageAt.getScaleX() / renderingAt.getScaleX();
                                final double ratioY = coverageAt.getScaleY() / renderingAt.getScaleY();
                                if(ratioX < 0.7 && ratioY < 0.7) {
                                    // resolution is too different
                                    final ParameterValueGroup param = SCALE.getParameters();
                                    param.parameter("Source").setValue(coverage);
                                    param.parameter("xScale").setValue(ratioX);
                                    param.parameter("yScale").setValue(ratioY);
                                    final Interpolation interpolation = (Interpolation) hints.get(JAI.KEY_INTERPOLATION);
                                    if(interpolation != null) {
                                        param.parameter("Interpolation").setValue(interpolation);
                                    }
   
                                    coverage = (GridCoverage2D) PROCESSOR.doOperation(param);
                                }
                            }
View Full Code Here

        checkReadType();
        prepare();
    }

    private void setDefaultParameterValues() {
        final ParameterValueGroup readParams = this.rasterManager.parent.getFormat()
                .getReadParameters();
        if (readParams == null) {
            if (LOGGER.isLoggable(Level.FINE))
                LOGGER.fine("No default values for the read parameters!");
            return;
        }
        final List<GeneralParameterDescriptor> parametersDescriptors = readParams.getDescriptor()
                .descriptors();
        for (GeneralParameterDescriptor descriptor : parametersDescriptors) {

            // we canc get the default vale only with the ParameterDescriptor class
            if (!(descriptor instanceof ParameterDescriptor)) {
View Full Code Here

   */
  private void parseCoordinateProjectionTransform(
      final MapProjection projTransf, final String name,
      GeoTiffIIOMetadataEncoder metadata) {

    final ParameterValueGroup parameters = projTransf.getParameterValues();

    // /////////////////////////////////////////////////////////////////////
    //
    // Transverse Mercator
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof TransverseMercator
        && name.equalsIgnoreCase("transverse_mercator")) {
      // key 3075
      metadata
          .addGeoShortParam(
              GeoTiffPCSCodes.ProjCoordTransGeoKey,
              GeoTiffCoordinateTransformationsCodes.CT_TransverseMercator);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLongGeoKey,
          parameters.parameter("central_meridian").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLatGeoKey,
          parameters.parameter("latitude_of_origin").doubleValue());
      metadata.addGeoDoubleParam(
          GeoTiffPCSCodes.ProjScaleAtNatOriginGeoKey, parameters
              .parameter("scale_factor").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
          parameters.parameter("false_easting").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
          parameters.parameter("false_northing").doubleValue());
      return;
    }

    // /////////////////////////////////////////////////////////////////////
    //
    // Mercator_1SP
    // Mercator_2SP
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof Mercator
        && (name.equalsIgnoreCase("mercator_1SP") || name
            .equalsIgnoreCase("Mercator_2SP"))) {
      // key 3075
      metadata.addGeoShortParam(GeoTiffPCSCodes.ProjCoordTransGeoKey,
          GeoTiffCoordinateTransformationsCodes.CT_Mercator);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      List<GeneralParameterValue> values = parameters.values();
                        for (GeneralParameterValue value : values){
                            if (value instanceof ParameterValue){
                                ParameterValue paramValue = (ParameterValue) value;
                                if (AbstractIdentifiedObject.nameMatches(value.getDescriptor(), "latitude_of_origin")) {
                                    metadata.addGeoDoubleParam(
                                            GeoTiffPCSCodes.ProjNatOriginLatGeoKey,(paramValue).doubleValue());
                                }else if (AbstractIdentifiedObject.nameMatches(value.getDescriptor(), "central_meridian")) {
                                    metadata.addGeoDoubleParam(
                                            GeoTiffPCSCodes.ProjNatOriginLongGeoKey,(paramValue).doubleValue());
                                }else if (AbstractIdentifiedObject.nameMatches(value.getDescriptor(), "scale_factor")) {
                                    metadata.addGeoDoubleParam(
                                            GeoTiffPCSCodes.ProjScaleAtNatOriginGeoKey,(paramValue).doubleValue());
                                }else if (AbstractIdentifiedObject.nameMatches(value.getDescriptor(), "standard_parallel_1")) {
                                    metadata.addGeoDoubleParam(
                                            GeoTiffPCSCodes.ProjStdParallel1GeoKey,(paramValue).doubleValue());
                                }else if (AbstractIdentifiedObject.nameMatches(value.getDescriptor(), "false_easting")) {
                                    metadata.addGeoDoubleParam(
                                            GeoTiffPCSCodes.ProjFalseEastingGeoKey,(paramValue).doubleValue());
                                }else if (AbstractIdentifiedObject.nameMatches(value.getDescriptor(), "false_northing")) {
                                    metadata.addGeoDoubleParam(
                                            GeoTiffPCSCodes.ProjFalseNorthingGeoKey,(paramValue).doubleValue());
                                }
                            }
                        }
                       
      return;
    }

    // /////////////////////////////////////////////////////////////////////
    //
    // Lamber conformal 1sp
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof LambertConformal && name.indexOf("1") != -1) {

      // key 3075
      metadata
          .addGeoShortParam(
              GeoTiffPCSCodes.ProjCoordTransGeoKey,
              GeoTiffCoordinateTransformationsCodes.CT_LambertConfConic_Helmert);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLongGeoKey,
          parameters.parameter("central_meridian").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLatGeoKey,
          parameters.parameter("latitude_of_origin").doubleValue());
      metadata.addGeoDoubleParam(
          GeoTiffPCSCodes.ProjScaleAtNatOriginGeoKey, parameters
              .parameter("scale_factor").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
          parameters.parameter("false_easting").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
          parameters.parameter("false_northing").doubleValue());
      return;

    }

    // /////////////////////////////////////////////////////////////////////
    //
    // LAMBERT_CONFORMAL_CONIC_2SP
    // lambert_conformal_conic_2SP_Belgium
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof LambertConformal && name.indexOf("2") != -1) {
      // key 3075
      metadata
          .addGeoShortParam(
              GeoTiffPCSCodes.ProjCoordTransGeoKey,
              GeoTiffCoordinateTransformationsCodes.CT_LambertConfConic_2SP);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLongGeoKey,
          parameters.parameter("central_meridian").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLatGeoKey,
          parameters.parameter("latitude_of_origin").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjStdParallel1GeoKey,
          parameters.parameter("standard_parallel_1").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjStdParallel2GeoKey,
          parameters.parameter("standard_parallel_2").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
          parameters.parameter("false_easting").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
          parameters.parameter("false_northing").doubleValue());
      return;

    }

    // if (name.equalsIgnoreCase("equidistant_conic")
    // || code == GeoTiffMetadata2CRSAdapter.CT_EquidistantConic) {
    // parameters = mtFactory
    // .getDefaultParameters("equidistant_conic");
    // parameters.parameter("central_meridian").setValue(
    // getOriginLong());
    // parameters.parameter("latitude_of_origin").setValue(
    // getOriginLat());
    // parameters
    // .parameter("standard_parallel_1")
    // .setValue(
    // this
    // .getGeoKeyAsDouble(GeoTiffIIOMetadataDecoder.ProjStdParallel1GeoKey));
    // parameters
    // .parameter("standard_parallel_2")
    // .setValue(
    // this
    // .getGeoKeyAsDouble(GeoTiffIIOMetadataDecoder.ProjStdParallel2GeoKey));
    // parameters.parameter("false_easting").setValue(
    // getFalseEasting());
    // parameters.parameter("false_northing").setValue(
    // getFalseNorthing());
    //
    // return parameters;
    // }

    // /////////////////////////////////////////////////////////////////////
    //
    // stereographic
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof Stereographic
        && name.equalsIgnoreCase("stereographic")) {

      // key 3075
      metadata.addGeoShortParam(GeoTiffPCSCodes.ProjCoordTransGeoKey,
          GeoTiffCoordinateTransformationsCodes.CT_Stereographic);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLongGeoKey,
          parameters.parameter("central_meridian").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLatGeoKey,
          parameters.parameter("latitude_of_origin").doubleValue());
      metadata.addGeoDoubleParam(
          GeoTiffPCSCodes.ProjScaleAtNatOriginGeoKey, parameters
              .parameter("scale_factor").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
          parameters.parameter("false_easting").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
          parameters.parameter("false_northing").doubleValue());
      return;

    }

    // /////////////////////////////////////////////////////////////////////
    //
    // polar_stereographic
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof PolarStereographic
        && name.equalsIgnoreCase("polar_stereographic")) {
      // key 3075
      metadata
          .addGeoShortParam(
              GeoTiffPCSCodes.ProjCoordTransGeoKey,
              GeoTiffCoordinateTransformationsCodes.CT_PolarStereographic);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLongGeoKey,
          parameters.parameter("central_meridian").doubleValue());
      metadata.addGeoDoubleParam(
          GeoTiffPCSCodes.ProjStraightVertPoleLongGeoKey, parameters
              .parameter("latitude_of_origin").doubleValue());
      metadata.addGeoDoubleParam(
          GeoTiffPCSCodes.ProjScaleAtNatOriginGeoKey, parameters
              .parameter("scale_factor").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
          parameters.parameter("false_easting").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
          parameters.parameter("false_northing").doubleValue());
      return;

    }
   
    // /////////////////////////////////////////////////////////////////////
    //
    // Oblique_Stereographic
    //
    // /////////////////////////////////////////////////////////////////////
    if(projTransf instanceof ObliqueStereographic
        && name.equalsIgnoreCase("Oblique_Stereographic")) {
       metadata.addGeoShortParam(
           GeoTiffPCSCodes.ProjCoordTransGeoKey,
           GeoTiffCoordinateTransformationsCodes.CT_ObliqueStereographic);
//       metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);
      
       // params     
       metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLongGeoKey,
           parameters.parameter("central_meridian").doubleValue());
       metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLatGeoKey,
           parameters.parameter("latitude_of_origin").doubleValue());
       metadata.addGeoDoubleParam(
           GeoTiffPCSCodes.ProjScaleAtNatOriginGeoKey, parameters
               .parameter("scale_factor").doubleValue());
       metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
           parameters.parameter("false_easting").doubleValue());
       metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
           parameters.parameter("false_northing").doubleValue());
       return;
     }
            
    // /////////////////////////////////////////////////////////////////////
    //
    // Oblique Mercator
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof ObliqueMercator
        && (name.equalsIgnoreCase("oblique_mercator") || name
            .equalsIgnoreCase("hotine_oblique_mercator"))) {

      // key 3075
      metadata.addGeoShortParam(GeoTiffPCSCodes.ProjCoordTransGeoKey,
          GeoTiffCoordinateTransformationsCodes.CT_ObliqueMercator);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjCenterLongGeoKey,
          parameters.parameter("longitude_of_center").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjCenterLatGeoKey,
          parameters.parameter("latitude_of_center").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjScaleAtCenterGeoKey,
          parameters.parameter("scale_factor").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
          parameters.parameter("false_easting").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjAzimuthAngleGeoKey,
          parameters.parameter("azimuth").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
          parameters.parameter("false_northing").doubleValue());
      // rectified grid angle???
      return;

    }
    // /////////////////////////////////////////////////////////////////////
    //
    // albers_Conic_Equal_Area
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof AlbersEqualArea
        && name.equalsIgnoreCase("albers_Conic_Equal_Area")) {

      // key 3075
      metadata.addGeoShortParam(GeoTiffPCSCodes.ProjCoordTransGeoKey,
          GeoTiffCoordinateTransformationsCodes.CT_AlbersEqualArea);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLongGeoKey,
          parameters.parameter("longitude_of_center").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjNatOriginLatGeoKey,
          parameters.parameter("latitude_of_center").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
          parameters.parameter("false_easting").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
          parameters.parameter("false_northing").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjStdParallel1GeoKey,
          parameters.parameter("standard_parallel_1").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjStdParallel2GeoKey,
          parameters.parameter("standard_parallel_2").doubleValue());
      // rectified grid angle???
      return;

    }

    // /////////////////////////////////////////////////////////////////////
    //
    // Orthographic
    //
    // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof Orthographic
        && name.equalsIgnoreCase("Orthographic")) {

      // key 3075
      metadata.addGeoShortParam(GeoTiffPCSCodes.ProjCoordTransGeoKey,
          GeoTiffCoordinateTransformationsCodes.CT_Orthographic);
//      metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);

      // params
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjCenterLongGeoKey,
          parameters.parameter("central_meridian").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjCenterLongGeoKey,
          parameters.parameter("latitude_of_origin").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
          parameters.parameter("false_easting").doubleValue());
      metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
          parameters.parameter("false_northing").doubleValue());
      return;
    }
   
    // /////////////////////////////////////////////////////////////////////
                //
                // Lambert Azimuthal Equal Area
                //
                // /////////////////////////////////////////////////////////////////////
    if (projTransf instanceof LambertAzimuthalEqualArea
                        && name.equalsIgnoreCase("Lambert_Azimuthal_Equal_Area")) {

                // key 3075
                    metadata.addGeoShortParam(GeoTiffPCSCodes.ProjCoordTransGeoKey,
                                    GeoTiffCoordinateTransformationsCodes.CT_LambertAzimEqualArea);
//                    metadata.addGeoAscii(GeoTiffPCSCodes.PCSCitationGeoKey, name);
   
                    // params
                    metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjCenterLatGeoKey,
                                    parameters.parameter("latitude_of_center").doubleValue());
                    metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjCenterLongGeoKey,
                                    parameters.parameter("longitude_of_center").doubleValue());
                    metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseEastingGeoKey,
                                    parameters.parameter("false_easting").doubleValue());
                    metadata.addGeoDoubleParam(GeoTiffPCSCodes.ProjFalseNorthingGeoKey,
                                    parameters.parameter("false_northing").doubleValue());
                    return;
                }
   
    // throw new
    // GeoTiffException(null,"CRS2GeoTiffMetadataAdapter::parseCoordinateTransform::unknown
View Full Code Here

    //
    // We might need to do a band select in order to cope with the GTOPO30
    // limitation.
    //
    // /////////////////////////////////////////////////////////////////////
    final ParameterValueGroup pvg = sdFactory.getParameters();
    pvg.parameter("Source").setValue(gc2D);
    pvg.parameter("SampleDimensions").setValue(new int[]{writeBand});
    pvg.parameter("VisibleSampleDimension").setValue(writeBand);
    gc2D = (GridCoverage2D) sdFactory.doOperation(pvg, hints);

    // /////////////////////////////////////////////////////////////////////
    //
    // STEP 2
View Full Code Here

    // new grid range
    final GeneralGridEnvelope newGridrange = new GeneralGridEnvelope(new int[] {0, 0 }, new int[] { GIF_WIDTH, GIF_HEIGHT });
    final GridGeometry2D newGridGeometry = new GridGeometry2D(newGridrange,gc.getEnvelope());

    // resample this coverage
    final ParameterValueGroup pvg= resampleFactory.getParameters();
    pvg.parameter("Source").setValue(gc);
    pvg.parameter("GridGeometry").setValue(newGridGeometry);
    pvg.parameter("InterpolationType").setValue(new InterpolationBilinear());
    return (GridCoverage2D) resampleFactory.doOperation(pvg, hints);

  }
View Full Code Here

TOP

Related Classes of org.opengis.parameter.ParameterValueGroup

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.