Package org.opengis.coverage.grid

Examples of org.opengis.coverage.grid.GridGeometry


                            final ReferencedEnvelope bounds = new ReferencedEnvelope(reader.getOriginalEnvelope());
                            // apply the bounds, taking into account the reprojection policy if need be
                            final ProjectionPolicy projectionPolicy=resourceInfo.getProjectionPolicy();
                            if (projectionPolicy != ProjectionPolicy.NONE && bounds != null) {
                                // we need to fix the registered grid for this coverage
                                final GridGeometry grid = cinfo.getGrid();
                                cinfo.setGrid(new GridGeometry2D(grid.getGridRange(),grid.getGridToCRS(), resourceInfo.getCRS()));
                            }
                        }
                     
                        catalog.add(resourceInfo);
                        try {
View Full Code Here


     * @param coverageInfo
     * @return
     */
    private ReferencedEnvelope createTestEnvelope(final CoverageInfo coverageInfo) {
        final ReferencedEnvelope envelope = coverageInfo.getNativeBoundingBox();
        final GridGeometry geometry = coverageInfo.getGrid();
        final MathTransform transform = geometry.getGridToCRS();

        // Creating a 2x2 envelope to get a sample coverage to retrieve statistics from that small piece
        final double scaleX = XAffineTransform.getScaleX0((AffineTransform) transform);
        final double scaleY = XAffineTransform.getScaleY0((AffineTransform) transform);
        final double minX = envelope.getMinimum(0);
View Full Code Here

    private void setupCoordinates() {
        //TODO: support more CRSs and coordinates
        final RenderedImage image = sampleGranule.getRenderedImage();
        final Envelope envelope = sampleGranule.getEnvelope2D();

        GridGeometry gridGeometry = sampleGranule.getGridGeometry();
        MathTransform transform = gridGeometry.getGridToCRS();
        AxisOrder axisOrder = CRS.getAxisOrder(sampleGranule.getCoordinateReferenceSystem());

        final int numLat = image.getHeight();
        final int numLon = image.getWidth();
View Full Code Here

            new GridGeometry2D(reader.getOriginalGridRange(), subEnvelope));
        GridCoverage2D gc = (GridCoverage2D) reader.read(CoverageUtils.getParameters(readParams, parameters,
                    true));
       
        // grid geometry
        final GridGeometry geometry = gc.getGridGeometry();
        final int dimensions = geometry.getGridRange().getDimension();
        String lower = "";
        String upper = "";
        for(int i = 0; i < dimensions; i++) {
            lower = lower + geometry.getGridRange().getLow(i) + " ";
            upper = upper + geometry.getGridRange().getHigh(i) + " ";
        }
        writer.write("<grid dimension = \"" + dimensions + "\">\n");
        writer.write("<low>" + lower + "</low>\n");
        writer.write("<high>" + upper + "</high>\n");
        final CoordinateSystem cs = crs.getCoordinateSystem();
        for (int i=0; i < cs.getDimension(); i++) {
            writer.write("<axisName>" + cs.getAxis(i).getName().getCode() + "</axisName>\n");
        }
        if(geometry.getGridToCRS() instanceof AffineTransform) {
            AffineTransform aTX = (AffineTransform) geometry.getGridToCRS();
            writer.write("<geoTransform>");
                writer.write("<scaleX>" + aTX.getScaleX() + "</scaleX>\n");
                writer.write("<scaleY>" + aTX.getScaleY() + "</scaleY>\n");
                writer.write("<shearX>" + aTX.getShearX() + "</shearX>\n");
                writer.write("<shearY>" + aTX.getShearY() + "</shearY>\n");
View Full Code Here

     * @return The "grid to CRS" affine transform of the given coverage, or {@code null}
     *         if none or if the transform is not affine.
     */
    protected static AffineTransform getAffineTransform(final Coverage coverage) {
        if (coverage instanceof GridCoverage) {
            final GridGeometry geometry = ((GridCoverage) coverage).getGridGeometry();
            if (geometry != null) {
                final MathTransform gridToCRS;
                if (geometry instanceof GridGeometry2D) {
                    gridToCRS = ((GridGeometry2D) geometry).getGridToCRS();
                } else {
                    gridToCRS = geometry.getGridToCRS();
                }
                if (gridToCRS instanceof AffineTransform) {
                    return (AffineTransform) gridToCRS;
                }
            }
View Full Code Here

                            reader.getOriginalEnvelope());
                    // apply the bounds, taking into account the reprojection policy if need be
                    final ProjectionPolicy projectionPolicy = resourceInfo.getProjectionPolicy();
                    if (projectionPolicy != ProjectionPolicy.NONE && bounds != null) {
                        // we need to fix the registered grid for this coverage
                        final GridGeometry grid = cinfo.getGrid();
                        cinfo.setGrid(new GridGeometry2D(grid.getGridRange(), grid.getGridToCRS(),
                                resourceInfo.getCRS()));
                    }
                }

                catalog.validate(resourceInfo, true).throwIfInvalid();
View Full Code Here

         * @param ci
         * @param elevationMetadata
         * @throws Exception
         */
        private void handleGrid(CoverageInfo ci) throws Exception {
          final GridGeometry originalGrid = ci.getGrid();
          final GridEnvelope gridRange=originalGrid.getGridRange();
          final AffineTransform2D gridToCRS = (AffineTransform2D) originalGrid.getGridToCRS();
            final int gridDimension = (gridToCRS != null ? gridToCRS.getSourceDimensions() : 0);

            AttributesImpl attributes = new AttributesImpl();
            attributes.addAttribute("", "dimension", "dimension", "", String.valueOf(gridDimension));
            attributes.addAttribute("", "srsName", "srsName", "", ci.getSRS());
View Full Code Here

            new GridGeometry2D(reader.getOriginalGridRange(), subEnvelope));
        GridCoverage2D gc = (GridCoverage2D) reader.read(CoverageUtils.getParameters(readParams, parameters,
                    true));
       
        // grid geometry
        final GridGeometry geometry = gc.getGridGeometry();
        final int dimensions = geometry.getGridRange().getDimension();
        String lower = "";
        String upper = "";
        for(int i = 0; i < dimensions; i++) {
            lower = lower + geometry.getGridRange().getLow(i) + " ";
            upper = upper + geometry.getGridRange().getHigh(i) + " ";
        }
        writer.write("<grid dimension = \"" + dimensions + "\">\n");
        writer.write("<low>" + lower + "</low>\n");
        writer.write("<high>" + upper + "</high>\n");
        final CoordinateSystem cs = crs.getCoordinateSystem();
        for (int i=0; i < cs.getDimension(); i++) {
            writer.write("<axisName>" + cs.getAxis(i).getName().getCode() + "</axisName>\n");
        }
        if(geometry.getGridToCRS() instanceof AffineTransform) {
            AffineTransform aTX = (AffineTransform) geometry.getGridToCRS();
            writer.write("<geoTransform>");
                writer.write("<scaleX>" + aTX.getScaleX() + "</scaleX>\n");
                writer.write("<scaleY>" + aTX.getScaleY() + "</scaleY>\n");
                writer.write("<shearX>" + aTX.getShearX() + "</shearX>\n");
                writer.write("<shearY>" + aTX.getShearY() + "</shearY>\n");
View Full Code Here

TOP

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

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.