if (renderedImage.getTile(rimtx, rimty).getDataBuffer().getDataType() != writableRI.getTile(wrimtx, wrimty).getDataBuffer().getDataType()) throw new IllegalArgumentException("rendered image and writable rendered image haven't got same datas type");
/** * Test result obtained from biLinear interpolation and a resampling. * * @throws NoninvertibleTransformException * @throws FactoryException * @throws TransformException */ @Test // @Ignore public void jaiBiLinearTest() throws NoninvertibleTransformException, FactoryException, TransformException { setTargetImage(9, 9, DataBuffer.TYPE_DOUBLE, -1000); setAffineMathTransform(MathTransforms.concatenate(pixelInCellCenter, new AffineTransform2D(3, 0, 0, 3, 0, 0), pixelInCellCenter.inverse())); /* * Resampling */ final Resample resample = new Resample(mathTransform.inverse(), targetImage, sourceImg, InterpolationCase.BILINEAR, ResampleBorderComportement.FILL_VALUE, new double[]{0}); resample.fillImage(); final Raster coverageRaster = targetImage.getTile(0, 0); java.awt.image.DataBufferDouble datadouble = (java.awt.image.DataBufferDouble) coverageRaster.getDataBuffer(); assertArrayEquals(BILINEAR_RESULT, datadouble.getData(0), 1E-9); }
final int tileX = XToTileX(x, tileXOff, tileWidth); final int tileY = YToTileY(y, tileYOff, tileHeight); final Raster top = (tileY != minTileY) ? image.getTile(tileX, tileY-1) : null; final Raster bottom = (tileY != maxTileY) ? image.getTile(tileX, tileY+1) : null; final WritableRaster raster = image.getWritableTile(tileX, tileY); try {
/** * Test result obtained from neighBor interpolation and a resampling. * * @throws NoninvertibleTransformException * @throws FactoryException * @throws TransformException */ @Test // @Ignore public void jaiNeighBorTest() throws NoninvertibleTransformException, FactoryException, TransformException { setTargetImage(9, 9, DataBuffer.TYPE_DOUBLE, -1000); setAffineMathTransform(MathTransforms.concatenate(pixelInCellCenter, new AffineTransform2D(3, 0, 0, 3, 0, 0), pixelInCellCenter.inverse())); /* * Resampling */ Resample resample = new Resample(mathTransform.inverse(), targetImage, sourceImg, InterpolationCase.NEIGHBOR, ResampleBorderComportement.FILL_VALUE, new double[]{0}); resample.fillImage(); Raster coverageRaster = targetImage.getTile(0, 0); java.awt.image.DataBufferDouble datadouble = (java.awt.image.DataBufferDouble) coverageRaster.getDataBuffer(); assertArrayEquals(NEIGHBOR_RESULT, datadouble.getData(0), 1E-9); }
if (renderedImage.getTile(rimtx, rimty).getDataBuffer().getDataType() != writableRI.getTile(wrimtx, wrimty).getDataBuffer().getDataType()) throw new IllegalArgumentException("rendered image and writable rendered image haven't got same datas type");
/** * Test result obtained from biLinear interpolation and a resampling and without any fillvalue. * * @throws NoninvertibleTransformException * @throws FactoryException * @throws TransformException */ @Test // @Ignore public void withoutFillValueBiLinearTest() throws NoninvertibleTransformException, FactoryException, TransformException { setTargetImage(9, 9, DataBuffer.TYPE_DOUBLE, -1000); setAffineMathTransform(MathTransforms.concatenate(pixelInCellCenter, new AffineTransform2D(3, 0, 0, 3, 0, 0), pixelInCellCenter.inverse())); /* * Resampling */ final Resample resample = new Resample(mathTransform.inverse(), targetImage, sourceImg, InterpolationCase.BILINEAR, ResampleBorderComportement.FILL_VALUE, null); resample.fillImage(); final Raster coverageRaster = targetImage.getTile(0, 0); java.awt.image.DataBufferDouble datadouble = (java.awt.image.DataBufferDouble) coverageRaster.getDataBuffer(); assertArrayEquals(BILINEAR_RESULT_W_F, datadouble.getData(0), 1E-9); }
InterpolationCase.BICUBIC, ResampleBorderComportement.FILL_VALUE, new double[]{0}); resample.fillImage(); final Raster coverageRaster = targetImage.getTile(0, 0);
final Raster coverageRaster = targetImage.getTile(0, 0);