@Test public void testGetFiller2 () { final Color color = new Color(63, 127, 255); checkColor(new CreateOp(10, 10, EditableImage.DataType.BYTE, color), color, 255); checkColor(new CreateOp(10, 10, EditableImage.DataType.SHORT, color), color, Math.pow(2, 15) - 1); checkColor(new CreateOp(10, 10, EditableImage.DataType.UNSIGNED_SHORT, color), color, Math.pow(2, 16) - 1); checkColor(new CreateOp(10, 10, EditableImage.DataType.INT, color), color, Math.pow(2, 31) - 1); checkColor(new CreateOp(10, 10, EditableImage.DataType.FLOAT, color), color, 1.0); checkColor(new CreateOp(10, 10, EditableImage.DataType.DOUBLE, color), color, 1.0); }
@Test public void testGetWidth () { for (int w = 1; w < 1000; w += 10) { final CreateOp createOp1 = new CreateOp(w, 10, EditableImage.DataType.BYTE); AssertJUnit.assertEquals(w, createOp1.getWidth()); final CreateOp createOp2 = new CreateOp(w, 10, EditableImage.DataType.BYTE, Color.BLACK); AssertJUnit.assertEquals(w, createOp2.getWidth()); final CreateOp createOp3 = new CreateOp(w, 10, EditableImage.DataType.BYTE, 0); AssertJUnit.assertEquals(w, createOp3.getWidth()); } }
@Test public void testGetHeight () { for (int h = 1; h < 1000; h += 10) { final CreateOp createOp1 = new CreateOp(10, h, EditableImage.DataType.BYTE); AssertJUnit.assertEquals(h, createOp1.getHeight()); final CreateOp createOp2 = new CreateOp(10, h, EditableImage.DataType.BYTE, Color.BLACK); AssertJUnit.assertEquals(h, createOp2.getHeight()); final CreateOp createOp3 = new CreateOp(10, h, EditableImage.DataType.BYTE, 0); AssertJUnit.assertEquals(h, createOp3.getHeight()); } }
@Test public void testGetFiller1 () { final CreateOp createOp = new CreateOp(10, 10, EditableImage.DataType.BYTE); final double[] filler = createOp.getFiller(); AssertJUnit.assertEquals(1, filler.length); AssertJUnit.assertEquals(0.0, filler[0], 0.0); }
@Test public void testGetDataType () { for (EditableImage.DataType dataType : EditableImage.DataType.values()) { if (dataType == EditableImage.DataType.UNDEFINED) { continue; } final CreateOp createOp1 = new CreateOp(10, 10, dataType); AssertJUnit.assertEquals(dataType, createOp1.getDataType()); final CreateOp createOp2 = new CreateOp(10, 10, dataType, Color.BLACK); AssertJUnit.assertEquals(dataType, createOp2.getDataType()); final CreateOp createOp3 = new CreateOp(10, 10, dataType, 0); AssertJUnit.assertEquals(dataType, createOp3.getDataType()); } }
@Test public void testCreateSingleBandUnsignedShortBlack () { log("testCreateSingleBandUnsignedShortBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.UNSIGNED_SHORT)); assertImage(image, 1, 16, 16, EditableImage.DataType.UNSIGNED_SHORT); assertIntContents(image, 0); }
@Test public void testCreateSingleBandIntInitialValue () { log("testCreateSingleBandIntInitialValue"); for (int i = 0; i < intValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.INT, intValues[i])); assertImage(image, 1, 32, 32, EditableImage.DataType.INT); assertIntContents(image, intValues[i]); } }
@Test public void testCreateSingleBandDoubleBlack () { log("testCreateSingleBandDoubleBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.DOUBLE)); assertImage(image, 1, 64, 64, EditableImage.DataType.DOUBLE); assertDoubleContents(image, 0); }
@Test public void testCreateSingleBandFloatInitialValue () { log("testCreateSingleBandFloatInitialValue"); for (int i = 0; i < floatValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.FLOAT, floatValues[i])); assertImage(image, 1, 32, 32, EditableImage.DataType.FLOAT); assertFloatContents(image, floatValues[i]); } }
@Test public void testCreateSingleBandDoubleInitialValue () { log("testCreateSingleBandDoubleInitialValue"); for (int i = 0; i < doubleValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.DOUBLE, doubleValues[i])); assertImage(image, 1, 64, 64, EditableImage.DataType.DOUBLE); assertDoubleContents(image, doubleValues[i]); } }
@Test public void testCreateSingleBandByteBlack () { log("testCreateSingleBandByteBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.BYTE)); assertImage(image, 1, 8, 8, EditableImage.DataType.BYTE); assertIntContents(image, 0); }
@Test public void testCreateSingleBandIntBlack () { log("testCreateSingleBandFloatBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.INT)); assertImage(image, 1, 32, 32, EditableImage.DataType.INT); assertIntContents(image, 0); }
@Test public void testCreateSingleBandFloatBlack () { log("testCreateSingleBandFloatBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.FLOAT)); assertImage(image, 1, 32, 32, EditableImage.DataType.FLOAT); assertFloatContents(image, 0f); }
@Test public void testCreateSingleBandByteInitialValue () { log("testCreateSingleBandByteInitialValue"); for (int i = 0; i < byteValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.BYTE, byteValues[i])); assertImage(image, 1, 8, 8, EditableImage.DataType.BYTE); assertIntContents(image, byteValues[i]); } }
@Test public void testCreateSingleBandUnsignedShortInitialValue () { log("testCreateSingleBandUnsignedShortInitialValue"); for (int i = 0; i < shortValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.UNSIGNED_SHORT, shortValues[i])); assertImage(image, 1, 16, 16, EditableImage.DataType.UNSIGNED_SHORT); assertIntContents(image, shortValues[i]); } }
@Test public void testCreateThreeBandsByteInitialValue () { log("testCreateThreeBandsByteInitialValue"); for (int r = 0; r < byteValues.length; r++) { for (int g = 0; g < byteValues.length; g++) { for (int b = 0; b < byteValues.length; b++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.BYTE, byteValues[r], byteValues[g], byteValues[b])); assertImage(image, 3, 8, 24, EditableImage.DataType.BYTE); assertIntContents(image, byteValues[r], byteValues[g], byteValues[b]); } } } }
@Test public void testCreateThreeBandsIntInitialValue () { log("testCreateThreeBandsIntInitialValue"); for (int r = 0; r < intValues2.length; r++) { for (int g = 0; g < intValues2.length; g++) { for (int b = 0; b < intValues2.length; b++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.INT, intValues2[r], intValues2[g], intValues2[b])); assertImage(image, 3, 32, 96, EditableImage.DataType.INT); assertIntContents(image, intValues2[r], intValues2[g], intValues2[b]); } } } }
@Test public void testCreateThreeBandsFloatInitialValue () { log("testCreateThreeBandsFloatInitialValue"); for (int r = 0; r < floatValues2.length; r++) { for (int g = 0; g < floatValues2.length; g++) { for (int b = 0; b < floatValues2.length; b++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.FLOAT, floatValues2[r], floatValues2[g], floatValues2[b])); assertImage(image, 3, 32, 96, EditableImage.DataType.FLOAT); assertFloatContents(image, floatValues2[r], floatValues2[g], floatValues2[b]); } } } }
@Test public void testGetFiller3 () { final CreateOp createOp = new CreateOp(10, 10, EditableImage.DataType.BYTE, 1, 2, 3, 4, 5, 6, 7); final double[] filler = createOp.getFiller(); AssertJUnit.assertEquals(7, filler.length); AssertJUnit.assertEquals(1.0, filler[0], 0.0); AssertJUnit.assertEquals(2.0, filler[1], 0.0); AssertJUnit.assertEquals(3.0, filler[2], 0.0); AssertJUnit.assertEquals(4.0, filler[3], 0.0); AssertJUnit.assertEquals(5.0, filler[4], 0.0); AssertJUnit.assertEquals(6.0, filler[5], 0.0); AssertJUnit.assertEquals(7.0, filler[6], 0.0); }
private void convert (final DataType fromType, final DataType toType) { Lookup.getDefault().lookup(ImplementationFactoryJAI.class); final EditableImage image = EditableImage.create(new CreateOp(640, 480, fromType)); assertEquals(fromType, image.getDataType()); assertEquals("KODAK Grayscale Conversion - Gamma 1.0", ImageUtils.getICCProfileName(image.getICCProfile())); assertNotNull(image.getICCProfile()); image.execute(new ChangeFormatOp(toType)); assertEquals(toType, image.getDataType()); assertNotNull(image.getICCProfile()); assertEquals("KODAK Grayscale Conversion - Gamma 1.0", ImageUtils.getICCProfileName(image.getICCProfile())); } }