Source code: com/arranger/jarl/test/FilterTest2.java
1 package com.arranger.jarl.test;
2
3 import com.arranger.jarl.util.IOUtil;
4
5 import java.awt.*;
6 import java.awt.geom.Ellipse2D;
7 import java.awt.image.*;
8 import java.io.File;
9
10 /**
11 * FilterTest2 created on Mar 20, 2003
12 */
13 public class FilterTest2 extends FilterTest {
14
15 protected static final String dest = "src/com/arranger/jarl/test/filterTest_dest2.jpg";
16 protected int m_imageHeight = 200;
17 protected int m_circleHeight = 200;
18 protected int m_imageWidth = 200;
19 protected int m_circleWidth = 200;
20
21 public void testFilter() throws Exception {
22 super.testFilter();
23 }
24
25 protected Image getSourceImage() throws Exception {
26 Image image = createImage();
27 paintCircle((Graphics2D)image.getGraphics());
28 PixelGrabber pixelGrabber = new PixelGrabber(image, 0, 0, m_imageWidth, m_imageHeight, true);
29 pixelGrabber.grabPixels();
30 return Toolkit.getDefaultToolkit().createImage(new MemoryImageSource(m_imageWidth,
31 m_imageHeight,
32 (int [])pixelGrabber.getPixels(),
33 0, m_imageWidth));
34 }
35
36 protected ImageFilter getImageFilter() {
37 return super.getLookupFilter();
38 }
39
40 protected void save(Image image) {
41 IOUtil.save(image, new File(dest));
42 }
43
44 protected Image createImage() {
45 return new BufferedImage(m_imageWidth, m_imageHeight, BufferedImage.TYPE_INT_RGB);
46 }
47
48 protected void paintCircle(Graphics2D graphics2D) {
49 Ellipse2D ellipse2D = new Ellipse2D.Double((m_imageWidth / 2) - (m_circleWidth / 2),
50 (m_imageHeight / 2) - (m_circleHeight / 2),
51 m_circleWidth,
52 m_circleHeight);
53
54 graphics2D.setPaint(Color.blue);
55 graphics2D.fill(ellipse2D);
56 }
57 }