Package org.opengis.coverage.grid

Examples of org.opengis.coverage.grid.GridEnvelope


      return null;
    }

    final RasterDataAdapter adapter = (RasterDataAdapter) geowaveAdapterStore.getAdapter(new ByteArrayId(
        coverageName));
    final GridEnvelope gridEnvelope = getOriginalGridRange();
    return new ImageLayout().setMinX(
        gridEnvelope.getLow(0)).setMinY(
        gridEnvelope.getLow(1)).setTileWidth(
        adapter.getTileSize()).setTileHeight(
        adapter.getTileSize()).setSampleModel(
        adapter.getSampleModel()).setColorModel(
        adapter.getColorModel()).setWidth(
        gridEnvelope.getHigh(0)).setHeight(
        gridEnvelope.getHigh(1));
  }
View Full Code Here


      }

      final MultiDimensionalNumericData bounds = GeometryUtils.basicConstraintsFromEnvelope(
          projectedReferenceEnvelope).getIndexConstraints(
          index.getIndexStrategy());
      final GridEnvelope gridEnvelope = gridCoverage.getGridGeometry().getGridRange();
      final double[] tileRangePerDimension = new double[bounds.getDimensionCount()];
      final double[] maxValuesPerDimension = bounds.getMaxValuesPerDimension();
      final double[] minValuesPerDimension = bounds.getMinValuesPerDimension();
      double maxSpan = -Double.MAX_VALUE;
      for (int d = 0; d < tileRangePerDimension.length; d++) {
        tileRangePerDimension[d] = ((maxValuesPerDimension[d] - minValuesPerDimension[d]) * tileSize) / gridEnvelope.getSpan(d);

        maxSpan = Math.max(
            gridEnvelope.getSpan(d),
            maxSpan);
      }
      final HierarchicalNumericIndexStrategy imagePyramid = (HierarchicalNumericIndexStrategy) index.getIndexStrategy();
      final TreeMap<Double, SubStrategy> substrategyMap = new TreeMap<Double, SubStrategy>();
      for (final SubStrategy pyramidLevel : imagePyramid.getSubStrategies()) {
View Full Code Here

            // the same size as the input one
            double teWidth = intersectionEnvelope.getSpan(0);
            double teHeight = intersectionEnvelope.getSpan(1);

            double targetRatio = teWidth / teHeight;
            GridEnvelope gr = reader.getOriginalGridRange();
            int targetRasterWidth = gr.getSpan(0);
            int targetRasterHeight = (int) Math.ceil(targetRasterWidth / targetRatio);
            double scaleX = teWidth / targetRasterWidth;
            double scaleY = -teHeight / targetRasterHeight;

            if (gridCRS == null
View Full Code Here

        final int sourceTileW=sampleModel.getWidth();
        final int sourceTileH=sampleModel.getHeight();       
        final Dimension tileDimensions= new Dimension(sourceTileW,sourceTileH);
        LOGGER.fine("Source tiling:"+tileDimensions.width+"x"+tileDimensions.height);
        // if the tile size exceeds the image dimension, let's retile to save space on output image
        final GridEnvelope gr = sourceCoverage.getGridGeometry().getGridRange();
        if(gr.getSpan(0) < tileDimensions.width) {
            tileDimensions.width = gr.getSpan(0);
        }
        if(gr.getSpan(1) < tileDimensions.height) {
            tileDimensions.height = gr.getSpan(1);
        }
        LOGGER.fine("Source tiling reviewed to save space:"+tileDimensions.width+"x"+tileDimensions.height);       

        //
        // tiling
View Full Code Here

                boolean axesSwap) {
            // setup vars
            final String gridId = "grid00__" + gcName;

            // Grid Envelope
            final GridEnvelope gridEnvelope = gg2D.getGridRange();

            final StringBuilder lowSb = new StringBuilder();
            for (int i : gridEnvelope.getLow().getCoordinateValues()) {
                lowSb.append(i).append(' ');
            }
            final StringBuilder highSb = new StringBuilder();
            for (int i : gridEnvelope.getHigh().getCoordinateValues()) {
                highSb.append(i).append(' ');
            }

            // build the fragment
            final AttributesImpl gridAttrs = new AttributesImpl();
View Full Code Here

            targetCoverage = readerTarget.read(null);
            final CoordinateReferenceSystem targetCRS=CRS.decode("EPSG:3857", true);
            Assert.assertTrue(CRS.equalsIgnoreMetadata(targetCoverage.getCoordinateReferenceSystem(), targetCRS));           
   
            // checks
            final GridEnvelope gridRange = targetCoverage.getGridGeometry().getGridRange();
           
            final GeneralEnvelope expectedEnvelope= new GeneralEnvelope(
                    new double[]{1.6308305401213994E7,-5543147.203861462},
                    new double[]{1.6475284637403902E7,-5311971.846945147});   
            expectedEnvelope.setCoordinateReferenceSystem(targetCRS);
   
            final double scale = getScale(targetCoverage);
            assertEnvelopeEquals(expectedEnvelope,scale,(GeneralEnvelope) targetCoverage.getEnvelope(),scale);
            assertEquals(gridRange.getSpan(0), 360);
            assertEquals(gridRange.getSpan(1), 360);
           
        } finally {
            try{
                readerTarget.dispose();
            } catch (Exception e) {
View Full Code Here

            targetCoverage = readerTarget.read(null);
            final CoordinateReferenceSystem targetCRS=CRS.decode("EPSG:3857", true);
            Assert.assertTrue(CRS.equalsIgnoreMetadata(targetCoverage.getCoordinateReferenceSystem(), targetCRS));           
   
            // checks
            final GridEnvelope gridRange = targetCoverage.getGridGeometry().getGridRange();
           
            final GeneralEnvelope expectedEnvelope= new GeneralEnvelope(
                    new double[]{1.6308305401213994E7,-5543147.203861462},
                    new double[]{1.6475284637403902E7,-5311971.846945147});   
            expectedEnvelope.setCoordinateReferenceSystem(targetCRS);
   
            final double scale = getScale(targetCoverage);
            assertEnvelopeEquals(expectedEnvelope,scale,(GeneralEnvelope) targetCoverage.getEnvelope(),scale);
            assertEquals(gridRange.getSpan(0), 360);
            assertEquals(gridRange.getSpan(1), 360);
           
        } finally {
            try{
                readerTarget.dispose();
            } catch (Exception e) {
View Full Code Here

        assertTrue(coverages.length==1);
        final AffineTransform2D tx = (AffineTransform2D) result.getGridGeometry().getGridToCRS();
        assertEquals("resx",expectedTx.getScaleX(),tx.getScaleX(),1E-6);
        assertEquals("resx",Math.abs(expectedTx.getScaleY()),Math.abs(tx.getScaleY()),1E-6);
       
        final GridEnvelope gridEnvelope = result.getGridGeometry().getGridRange();
        assertEquals("w",180,gridEnvelope.getSpan(0));
        assertEquals("h",180,gridEnvelope.getSpan(1));
        assertEquals("grid envelope",expectedGridEnvelope, gridEnvelope);
       
        // dispose
        CoverageCleanerCallback.disposeCoverage(baseCoverage);
        CoverageCleanerCallback.disposeCoverage(coverages[0]);
View Full Code Here

        assertEquals(0, Double.compare(expected.getMaximum(0), envelope.getMaximum(0)));
        assertEquals(0, Double.compare(expected.getMinimum(1), envelope.getMinimum(1)));
        assertEquals(0, Double.compare(expected.getMaximum(1), envelope.getMaximum(1)));

        // check we did not get a massive raster out (GEOS-5346)
        GridEnvelope range = coverages[0].getGridGeometry().getGridRange();
        assertEquals(360, range.getSpan(0));
        assertEquals(499, range.getSpan(1));
    }
View Full Code Here

        // System.out.println(envelope);
        CoordinateReferenceSystem targetCRS = CRS.decode("urn:x-ogc:def:crs:EPSG:3003");
        assertEquals(targetCRS, envelope.getCoordinateReferenceSystem());

        // check we did not get a massive raster out
        GridEnvelope range = coverages[0].getGridGeometry().getGridRange();
        assertEquals(482, range.getSpan(0));
        assertEquals(447, range.getSpan(1));
    }
View Full Code Here

TOP

Related Classes of org.opengis.coverage.grid.GridEnvelope

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.