SynL1CSlstrSceneTransformProvider implements SceneTransformProvider { @Override public MathTransform2D getSceneToModelTransform() { return sceneToModelTransform; } SynL1CSlstrSceneTransformProvider(Band colCorrespondenceBand, Band rowCorrespondenceBand); @Override MathTransform2D getModelToSceneTransform(); @Override MathTransform2D getSceneToModelTransform();  }
@Test public void testGetSceneToModelTransform() throws Exception { final Band colMisregistrationBand = new Band("colMisregistrationBand", ProductData.TYPE_INT32, 4, 4); final ProductData colMisRegistrationData = ProductData.createInstance(new int[]{1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 3}); colMisregistrationBand.setData(colMisRegistrationData); final Band rowMisregistrationBand = new Band("rowMisregistrationBand", ProductData.TYPE_INT32, 4, 4); final ProductData rowMisRegistrationData = ProductData.createInstance(new int[]{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 2}); rowMisregistrationBand.setData(rowMisRegistrationData); final SynL1CSlstrSceneTransformProvider provider = new SynL1CSlstrSceneTransformProvider(colMisregistrationBand, rowMisregistrationBand); final MathTransform2D sceneToModelTransform = provider.getSceneToModelTransform(); PixelPos resultPos = new PixelPos(); sceneToModelTransform.transform(new PixelPos(0, 0), resultPos); assertEquals(1, (int)resultPos.getX()); assertEquals(0, (int)resultPos.getY()); sceneToModelTransform.transform(new PixelPos(2, 1), resultPos); assertEquals(1, (int)resultPos.getX()); assertEquals(0, (int)resultPos.getY()); sceneToModelTransform.transform(new PixelPos(1, 2), resultPos); assertEquals(2, (int)resultPos.getX()); assertEquals(1, (int)resultPos.getY()); sceneToModelTransform.transform(new PixelPos(3, 3), resultPos); assertEquals(3, (int)resultPos.getX()); assertEquals(2, (int)resultPos.getY()); }