/** * Work around for RFE #4093999 in Sun's bug database ("Relax constraint on placement of * this()/super() call in constructors"). */ private DefaultConcatenatedOperation( final Map<String, ?> properties, final MathTransform transform, final List<SingleOperation> operations) { super( mergeAccuracy(properties, operations), operations.get(0).getSourceCRS(), operations.get(operations.size() - 1).getTargetCRS(), transform); this.operations = UnmodifiableArrayList.wrap( operations.toArray(new SingleOperation[operations.size()])); }
if (sourceCRS instanceof CompoundCRS) { int firstAffectedOrdinate = 0; final CoordinateReferenceSystem search = operation.getSourceCRS(); for (final CoordinateReferenceSystem c : ((CompoundCRS) sourceCRS).getComponents()) { final int dim = ReferencingUtilities.getDimension(c);
if (sourceCRS instanceof CompoundCRS) { int firstAffectedOrdinate = 0; final CoordinateReferenceSystem search = operation.getSourceCRS(); for (final CoordinateReferenceSystem c : ((CompoundCRS) sourceCRS).getComponents()) { final int dim = ReferencingUtilities.getDimension(c);
final CoordinateReferenceSystem sourceCRS = op.getSourceCRS(); final CoordinateReferenceSystem targetCRS = op.getTargetCRS(); final MathTransform transform = op.getMathTransform().inverse();
final CoordinateReferenceSystem sourceCRS = op.getSourceCRS(); final CoordinateReferenceSystem targetCRS = op.getTargetCRS(); final MathTransform transform = op.getMathTransform().inverse();
if (parameters != null) { CoordinateReferenceSystem crs; if (Utilities.equalsApproximatively(sourceCRS, crs = operation.getSourceCRS())) sourceCRS = crs; if (Utilities.equalsApproximatively(targetCRS, crs = operation.getTargetCRS())) targetCRS = crs; final MathTransformFactory mtFactory = factorySIS.getMathTransformFactory();
if (parameters != null) { CoordinateReferenceSystem crs; if (Utilities.equalsApproximatively(sourceCRS, crs = operation.getSourceCRS())) sourceCRS = crs; if (Utilities.equalsApproximatively(targetCRS, crs = operation.getTargetCRS())) targetCRS = crs; final MathTransformFactory mtFactory = factorySIS.getMathTransformFactory();
final CoordinateReferenceSystem sourceCRS = single.getSourceCRS(); if (targetCRS != null && sourceCRS != null) { assertEquals("ConcatenatedOperation: source dimension of a single operation " + final CoordinateReferenceSystem firstCRS = first .getSourceCRS(); final CoordinateReferenceSystem lastCRS = last .getTargetCRS(); if (sourceCRS != null && firstCRS != null) {
assertEpsgNameWithoutIdentifierEqual("NTF to WGS 84 (1)", step2); assertSame("SourceCRS shall be the targetCRS of previous step.", step1.getTargetCRS(), step2.getSourceCRS()); assertEquals("Method 1", "Longitude rotation", step1.getMethod().getName().getCode()); assertEquals("Method 2", "Geocentric translations (" + domain + ')', step2.getMethod().getName().getCode());