Package org.geotools.coverage.grid

Examples of org.geotools.coverage.grid.GridEnvelope2D


    final GeneralEnvelope envelope = reader.getOriginalEnvelope();
    final Dimension dim= new Dimension();
    dim.setSize(reader.getOriginalGridRange().getSpan(0)/2.0, reader.getOriginalGridRange().getSpan(1)/2.0);
    final Rectangle rasterArea=(( GridEnvelope2D)reader.getOriginalGridRange());
    rasterArea.setSize(dim);
    final GridEnvelope2D range= new GridEnvelope2D(rasterArea);
    gg.setValue(new GridGeometry2D(range,envelope));
   
    final SimpleDateFormat formatD = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
    formatD.setTimeZone(TimeZone.getTimeZone("GMT"));
   
View Full Code Here


    RasterSymbolizer rs = extractRasterSymbolizer(sld);

                // do the rendering and check the final color model
    GridToEnvelopeMapper gtoem = new GridToEnvelopeMapper();
    gtoem.setEnvelope(envelope);
    gtoem.setGridRange(new GridEnvelope2D(0, 0, 50, 50));
    gtoem.setPixelAnchor(PixelInCell.CELL_CORNER);
    final GridCoverageRenderer renderer= new GridCoverageRenderer(
            DefaultGeographicCRS.WGS84,
            ReferencedEnvelope.reference(envelope),
            new Rectangle(0,0,50,50),
View Full Code Here

    //
    // get the dimension of the hr image and build the model as well as
    // computing the resolution
    // //
    final Rectangle actualDim = new Rectangle(0, 0, reader.getWidth(0),reader.getHeight(0));
    originalGridRange = new GridEnvelope2D(actualDim);

    // ///
    //
    // setting the higher resolution avalaible for this coverage
    //
View Full Code Here

    // getting Grid Properties
    child = child.getNextSibling();
    attributes = child.getAttributes();
    final int hrWidth = Integer.parseInt(attributes.getNamedItem("nColumns").getNodeValue());
    final int hrHeight = Integer.parseInt(attributes.getNamedItem("nRows").getNodeValue());
    originalGridRange = new GridEnvelope2D(new Rectangle(0, 0, hrWidth,hrHeight));
    final boolean pixelIsArea = AsciiGridsImageMetadata.RasterSpaceType.valueOf(attributes.getNamedItem("rasterSpaceType").getNodeValue()).equals(AsciiGridsImageMetadata.RasterSpaceType.PixelIsArea);
    if (!grass) {
        inNoData = Double.parseDouble(attributes.getNamedItem("noDataValue").getNodeValue());
    }
View Full Code Here

//        if (granulesPaths != null) {
//            properties = new HashMap<String, String>();
//            properties.put(AbstractGridCoverage2DReader.FILE_SOURCE_PROPERTY, granulesPaths);
//        }
//        image = TransposeDescriptor.create(image, TransposeDescriptor.FLIP_VERTICAL, hints);
        return COVERAGE_FACTORY.create(request.name, image, new GridGeometry2D(new GridEnvelope2D(PlanarImage.wrapRenderedImage(image)
                        .getBounds()), PixelInCell.CELL_CORNER, finalGridToWorldCorner,
                        this.targetBBox.getCoordinateReferenceSystem(), hints), sampleDimensions, null,
                properties);
    }
View Full Code Here

          this.originalEnvelope.setCoordinateReferenceSystem(crs);
        }
       
        // original gridrange (estimated). I am using the floor here in order to make sure
        // we always stays inside the real area that we have for the granule
        originalGridRange = new GridEnvelope2D(
                        new Rectangle(
                                        (int) (originalEnvelope.getSpan(0)/ highestRes[0]),
                                        (int) (originalEnvelope.getSpan(1)/ highestRes[1])
                                        )
                        );
View Full Code Here

          //it is already a bbox
            coverageBBox = new ReferencedEnvelope(coverageEnvelope);
        }
       
        // compute the approximated full resolution in wgs84
        final GridToEnvelopeMapper geMapper= new GridToEnvelopeMapper(new GridEnvelope2D(coverageRasterArea),coverageGeographicBBox);
        approximateCoverageWGS84FullResolution=CoverageUtilities.getResolution(geMapper.createAffineTransform());
    }
View Full Code Here

            }
            // XXX Optimize when referenced envelope has intersection method that actually retains the CRS, this is the JTS one
            requestedBBox=new ReferencedEnvelope(((ReferencedEnvelope) requestedBBox).intersection(coverageBBox),coverageCRS2D);
            //compute approximate full resolution
            // compute the approximated full resolution in wgs84
            final GridToEnvelopeMapper geMapper= new GridToEnvelopeMapper(new GridEnvelope2D(requestedRasterArea),requestedBBox);
            requestedResolution=CoverageUtilities.getResolution(geMapper.createAffineTransform());
           
            return;
        } catch (TransformException te) {
            // something bad happened while trying to transform this
            // envelope. let's try with wgs84
            if(LOGGER.isLoggable(Level.FINE))
              LOGGER.log(Level.FINE,te.getLocalizedMessage(),te);
        }

        // //
        //
        // If this does not work, we go back to reproject in the wgs84
        // requested envelope
        //             
        // //
      //convert to WGS84
      final GeographicBoundingBoxImpl geographicRequestedBBox = new GeographicBoundingBoxImpl(requestedBBox);
        ReferencedEnvelope approximateWGS84requestedBBox =GridCoverageUtilities.getReferencedEnvelopeFromGeographicBoundingBox(geographicRequestedBBox);

        // checking the intersection in wgs84 with the geographicbbox for this coverage
        if (!approximateWGS84requestedBBox.intersects((BoundingBox)coverageGeographicBBox))
        {
          requestedBBox =  null;
          return;
        }
        //compute approximate full resolution
        // compute the approximated full resolution in wgs84
        final GridToEnvelopeMapper geMapper= new GridToEnvelopeMapper(new GridEnvelope2D(requestedRasterArea),approximateWGS84requestedBBox);
        approximateWGS84RequestedResolution=CoverageUtilities.getResolution(geMapper.createAffineTransform());

        // intersect with the coverage native WGS84 bbox
        // note that for the moment we got to use general envelope since there is no intersection othrewise
        // TODO fix then we'll have intersection in ReferencedEnvelope
View Full Code Here

            }

            MathTransform2D mt = coverages.get(0).getGridGeometry().getCRSToGrid2D();
            Rectangle rasterSpaceEnvelope;
            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);
View Full Code Here

        //
        // 2) Grid
        //
        // //
        if (this.originalGridRange == null)
            this.originalGridRange=new GridEnvelope2D(new Rectangle(0, 0,
                    metadata.getWidth(), metadata.getHeight()));

        // //
        //
        // 3) Envelope
View Full Code Here

TOP

Related Classes of org.geotools.coverage.grid.GridEnvelope2D

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.