Package org.opengis.referencing.operation

Examples of org.opengis.referencing.operation.MathTransform.inverse()


        CoordinateReferenceSystem crs = ReferencingFactoryFinder.getCRSFactory(null).createFromWKT(WKT.UTM_10N);
        MathTransform t = ReferencingFactoryFinder.getCoordinateOperationFactory(null).
                createOperation(DefaultGeographicCRS.WGS84, crs).getMathTransform();
        DirectPosition position = new GeneralDirectPosition(-123, 55);
        position = t.          transform(position, position);
        position = t.inverse().transform(position, position);
        assertEquals(-123, position.getOrdinate(0), 1E-6);
        assertEquals55, position.getOrdinate(1), 1E-6);
    }

    /**
 
View Full Code Here


        firstEnvelope.setCoordinateReferenceSystem(WGS84);

        transformedEnvelope = CRS.transform(crsTransform, firstEnvelope);
        transformedEnvelope.setCoordinateReferenceSystem(mapCRS);

        oldEnvelope = CRS.transform(crsTransform.inverse(), transformedEnvelope);
        oldEnvelope.setCoordinateReferenceSystem(WGS84);

        assertTrue(oldEnvelope.contains(firstEnvelope, true));
        assertTrue(oldEnvelope.equals  (firstEnvelope, 0.02, true));
    }
View Full Code Here

     */
    @Override
    protected String formatWKT(final Formatter formatter) {
        MathTransform inverse = conversionFromBase.getMathTransform();
        try {
            inverse = inverse.inverse();
        } catch (NoninvertibleTransformException exception) {
            // TODO: provide a more accurate error message.
            throw new IllegalStateException(exception.getLocalizedMessage(), exception);
        }
        formatter.append(inverse);
View Full Code Here

                    mt2, method, CoordinateOperation.class);
        } else { // Inverse operation
            try {
                props.put("name", targetCRS + " \u21E8 " + sourceCRS);
                coordop = DefaultOperation.create(props, target, source,
                    mt2.inverse(), method, CoordinateOperation.class);
            } catch (NoninvertibleTransformException e) {
                return null;
            }       
        }
        return coordop;
View Full Code Here

                     */
                    continue;
                }
                if (targetPt == null) {
                    try {
                        mt = mt.inverse();
                    } catch (NoninvertibleTransformException exception) {
                        /*
                         * If the transform is non invertible, this method can't do anything. This
                         * is not a fatal error because the envelope has already be transformed by
                         * the caller. We lost the check for singularity points performed by this
View Full Code Here

            MathTransform mt = findMathTransform(sourceCRS,
                    DefaultGeographicCRS.WGS84);
            DirectPosition2D pos = new DirectPosition2D(sourceCRS);
            mt.transform(input, pos);
            pos.setOrdinate(0, longitude);
            mt.inverse().transform(pos, pos);
            transformed.add(pos);
        } catch (Exception e) {
            LOGGER.log(Level.FINER, "Tried to expand target envelope to include longitude "
                    + longitude + " but failed. This is not necesseraly and issue, "
                    + "this is a best effort attempt to handle the polar stereographic "
View Full Code Here

             *       have already detected that this resample is not doing anything.
             */
            if (!targetGG.isDefined(GridGeometry2D.GRID_TO_CRS_BITMASK)) {
                step1    = sourceGG.getGridToCRS(CORNER); // Really sourceGG, not targetGG
                step2    = IdentityTransform.create(step1.getTargetDimensions());
                step3    = step1.inverse();
                allSteps = IdentityTransform.create(step1.getSourceDimensions());
                targetGG = new GridGeometry2D(targetGG.getGridRange(), step1, targetCRS);
            } else {
                step1    = targetGG.getGridToCRS(CORNER);
                step2    = IdentityTransform.create(step1.getTargetDimensions());
View Full Code Here

                targetGG = new GridGeometry2D(targetGG.getGridRange(), targetEnvelope);
                step1    = targetGG.getGridToCRS(CORNER);
            } else {
                step1 = targetGG.getGridToCRS(CORNER);
                if (!targetGG.isDefined(GridGeometry2D.GRID_RANGE_BITMASK)) {
                    GeneralEnvelope gridRange = CRS.transform(step1.inverse(), targetEnvelope);
                    // According OpenGIS specification, GridGeometry maps pixel's center.
                    targetGG = new GridGeometry2D(new GeneralGridEnvelope(gridRange, PixelInCell.CELL_CENTER), step1, targetCRS);
                }
            }
            /*
 
View Full Code Here

                            .getMathTransformFactory(null);
                    MathTransform affineMT = factory
                            .createAffineTransform(new org.geotools.referencing.operation.matrix.AffineTransform2D(
                                    tx));
                    MathTransform2D chained = (MathTransform2D) factory
                            .createConcatenatedTransform(affineMT.inverse(), originalTransform);

                    // setup the warp builder
                    Double tolerance = (Double) getRenderingHint(Hints.RESAMPLE_TOLERANCE);
                    if (tolerance == null) {
                        tolerance = (Double) Hints.getSystemDefault(Hints.RESAMPLE_TOLERANCE);
View Full Code Here

        assertEquals-4, tr.getScaleY(),     0);
        assertEquals(-178, tr.getTranslateX(), 0);
        assertEquals88, tr.getTranslateY(), 0);
       
        final MathTransform     transform= PixelTranslation.translate(gg.getGridToCRS2D(), PixelInCell.CELL_CENTER, PixelInCell.CELL_CORNER);
        final GeneralEnvelope    envelope=CRS.transform(transform.inverse(), gg.getEnvelope2D());
        final GeneralGridEnvelope   ge= new GeneralGridEnvelope(envelope,PixelInCell.CELL_CORNER,true);
        assertEquals(   0, ge.getLow(0),     0);
        assertEquals(   0, ge.getLow(1),     0);
        assertEquals(   90, ge.getHigh(0),     0);
        assertEquals(   45, ge.getHigh(1),     0);
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. 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.