Package org.geotools.referencing.operation.transform

Examples of org.geotools.referencing.operation.transform.ConcatenatedTransform


        assertEquals("Easting",                 axis1.getName().getCode());
        assertEquals("South along 180 deg",     axis0.getDirection().name());
        assertEquals("South along 90 deg East", axis1.getDirection().name());
        assertFalse(transform.isIdentity());
        assertTrue(transform instanceof ConcatenatedTransform);
        ConcatenatedTransform ct = (ConcatenatedTransform) transform;
        // An affine transform for swapping axis should be
        // performed before and after the map projection.
        final int mask = AffineTransform.TYPE_FLIP              |
                         AffineTransform.TYPE_QUADRANT_ROTATION |
                         AffineTransform.TYPE_UNIFORM_SCALE;
View Full Code Here


        assertEquals("Easting",                 axis1.getName().getCode());
        assertEquals("South along 180 deg",     axis0.getDirection().name());
        assertEquals("South along 90 deg East", axis1.getDirection().name());
        assertFalse(transform.isIdentity());
        assertTrue(transform instanceof ConcatenatedTransform);
        ConcatenatedTransform ct = (ConcatenatedTransform) transform;
        // An affine transform for swapping axis should be
        // performed before and after the map projection.
        final int mask = AffineTransform.TYPE_FLIP              |
                         AffineTransform.TYPE_QUADRANT_ROTATION |
                         AffineTransform.TYPE_UNIFORM_SCALE;
View Full Code Here

    final MathTransform mt = conversion.getMathTransform();
    final MapProjection projTransf;
    if (!(mt instanceof ConcatenatedTransform))
      projTransf = (MapProjection) mt;
    else {
      final ConcatenatedTransform tr = (ConcatenatedTransform) mt;
      final MathTransform m1 = tr.transform1, m2 = tr.transform2;
      if (m1 instanceof MapProjection)
        projTransf = (MapProjection) m1;
      else
        projTransf = (MapProjection) m2;
View Full Code Here

    final MathTransform mt = conversion.getMathTransform();
    final MapProjection projTransf;
    if (!(mt instanceof ConcatenatedTransform))
      projTransf = (MapProjection) mt;
    else {
      final ConcatenatedTransform tr = (ConcatenatedTransform) mt;
      final MathTransform m1 = tr.transform1, m2 = tr.transform2;
      if (m1 instanceof MapProjection)
        projTransf = (MapProjection) m1;
      else
        projTransf = (MapProjection) m2;
View Full Code Here

    }
  }

  private void accumulateTransforms(MathTransform mt, List<MathTransform> elements) {
    if(mt instanceof ConcatenatedTransform) {
      ConcatenatedTransform ct = (ConcatenatedTransform) mt;
      accumulateTransforms(ct.transform1, elements);
      accumulateTransforms(ct.transform2, elements);
    } else {
      elements.add(mt);
    }
View Full Code Here

        final CoordinateReferenceSystem sourceCRS = CRS.parseWKT(geoWKT);
        final CoordinateReferenceSystem targetCRS = CRS.parseWKT(prjWKT);
        final MathTransform transform = CRS.findMathTransform(sourceCRS, targetCRS);
        assertTrue(transform instanceof ConcatenatedTransform);
        final ConcatenatedTransform ct = (ConcatenatedTransform) transform;
        assertTrue(ct.transform2 instanceof LinearTransform);
        final Matrix matrix = ((LinearTransform) ct.transform2).getMatrix();
        assertDiagonal(matrix);
        assertEquals("East-West direction should be reverted. ",  -1, matrix.getElement(0,0), EPS);
        assertEquals("North-South direction should be reverted.", -1, matrix.getElement(1,1), EPS);
View Full Code Here

        if (method!=null && transform!=null) {
            int actual, expected=method.getSourceDimensions();
            while ((actual=transform.getSourceDimensions()) > expected) {
                if (transform instanceof ConcatenatedTransform) {
                    // Ignore axis switch and unit conversions.
                    final ConcatenatedTransform c = (ConcatenatedTransform) transform;
                    if (isTrivial(c.transform1)) {
                        transform = c.transform2;
                    } else if (isTrivial(c.transform2)) {
                        transform = c.transform1;
                    } else {
View Full Code Here

    private static ParameterValueGroup getParameterValues(MathTransform mt,
            final ParameterDescriptorGroup descriptor, boolean required)
    {
        while (mt != null) {
            if (mt instanceof ConcatenatedTransform) {
                final ConcatenatedTransform ct = (ConcatenatedTransform) mt;
                final ParameterValueGroup param1 = getParameterValues(ct.transform1, descriptor, false);
                final ParameterValueGroup param2 = getParameterValues(ct.transform2, descriptor, false);
                if (param1 == null && param2 != null) return param2;
                if (param2 == null && param1 != null) return param1;
                required = true;
View Full Code Here

    private static MapProjection unrollProjection(MathTransform mt) {
        if(mt instanceof MapProjection) {
            return (MapProjection) mt;
        } else if(mt instanceof ConcatenatedTransform) {
            ConcatenatedTransform ct = (ConcatenatedTransform) mt;
            MapProjection result = unrollProjection(ct.transform1);
            if(result == null) {
                result = unrollProjection(ct.transform2);
            }
            return result;
View Full Code Here

        Matrix geographicScale = null;
        Matrix  projectedScale = null;
        projection = crs.getConversionFromBase();
        MathTransform candidate = projection.getMathTransform();
        while (candidate instanceof ConcatenatedTransform) {
            final ConcatenatedTransform ctr = (ConcatenatedTransform) candidate;
            if (ctr.transform1 instanceof LinearTransform) {
                if (geographicScale != null) {
                    // Should never happen with ConcatenatedTransform.create(...) implementation.
                    throw new IllegalStateException(String.valueOf(candidate));
                }
View Full Code Here

TOP

Related Classes of org.geotools.referencing.operation.transform.ConcatenatedTransform

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.