@Test public void addDimensionMinMaxTest() { Img<DoubleType> img = new ArrayImgFactory<DoubleType>().create(new int[] { 10, 10 }, new DoubleType()); int max = 20; int min = 0; IntervalView<DoubleType> il2 = Views.addDimension(img, min, max); IntervalView<DoubleType> opr = ops.transform().addDimensionView(img, min, max); assertEquals(il2.numDimensions(), opr.numDimensions(), 0.0); for (int i = 0; i < il2.numDimensions(); i++) { assertEquals(il2.dimension(i), opr.dimension(i), 0.0); } } }
@Test public void IntervalHyperSliceTest() { final Img<DoubleType> img = new ArrayImgFactory<DoubleType>().create(new int[] { 10, 10, 10 }, new DoubleType()); final IntervalView<DoubleType> il2 = Views.hyperSlice((RandomAccessibleInterval<DoubleType>) img, 1, 8); final IntervalView<DoubleType> opr = ops.transform().hyperSliceView(img, 1, 8); for (int i = 0; i < ((MixedTransformView<DoubleType>) il2.getSource()).getTransformToSource() .getMatrix().length; i++) { for (int j = 0; j < ((MixedTransformView<DoubleType>) il2.getSource()).getTransformToSource() .getMatrix()[i].length; j++) { assertEquals( ((MixedTransformView<DoubleType>) il2.getSource()).getTransformToSource().getMatrix()[i][j], ((MixedTransformView<DoubleType>) opr.getSource()).getTransformToSource().getMatrix()[i][j], 1e-10); } } assertEquals(img.numDimensions() - 1, opr.numDimensions()); } }
@Test public void testIntervalRotateInterval() { final Img<DoubleType> img = new ArrayImgFactory<DoubleType>().create(new int[] { 20, 10 }, new DoubleType()); final IntervalView<DoubleType> il2 = Views.rotate((RandomAccessibleInterval<DoubleType>) img, 1, 0); final IntervalView<DoubleType> opr = ops.transform().rotateView((RandomAccessibleInterval<DoubleType>) img, 1, 0); assertEquals(img.min(1), il2.min(0)); assertEquals(img.max(1), il2.max(0)); assertEquals(img.min(0), -il2.max(1)); assertEquals(img.max(0), -il2.min(1)); for (int i = 0; i < il2.numDimensions(); i++) { assertEquals(il2.max(i), opr.max(i)); assertEquals(il2.min(i), opr.min(i)); } } }
Cursor<FloatType> v = Views.flatIterable( viewTransformed ).cursor(); Assert.assertEquals( interval.numDimensions(), viewTransformed.numDimensions() ); for ( int d = 0; d < interval.numDimensions(); ++d ) Assert.assertEquals( interval.dimension( d ), viewTransformed.dimension( d ) );
Cursor<FloatType> v = Views.flatIterable( viewTransformed ).cursor(); Assert.assertEquals( interval.numDimensions(), viewTransformed.numDimensions() ); for ( int d = 0; d < interval.numDimensions(); ++d ) Assert.assertEquals( interval.dimension( d ), viewTransformed.dimension( d ) );