graphics2d

[Java2D] Is this bad practice? Multiple Graphics2D Objects

I've created a JPanel canvas that holds all graphics; namely JLabel. To get animated sprites to work you have to over ride the paintComponent of the extended JLabel class. I've successfully implemented animated sprites this way. Is it bad practice to have a Graphics2D canvas and then have multiple 'images' in their own Graphics2D? ...

Java - Filling a Custom Shape

I have created a custom shape, essentially it is a collection of four Arc2D objects. When these arcs are drawn they form what could be considered a four point rounded star shape, kind of like a clover. Where one arc ends, the other begins. They form a square in the center. So imagine, taking a square and drawing half circles on every...

Testing graphics generation with JUnit

I'm using Java's Graphics2D to generate a graphical representation of a graph. I'm also using ImageIO to write a PNG file. (ImageIO.write(image, "png", out);) I'm wondering how should I write JUnit tests to test whether the generated graphics is what is expected. I could pre-generate the PNG files but what if the font is a bit different...

Fill an area inside two CubicCurve2D.Float s and a line

Hi all. I'm drawing a tab and I have the outline as I want it. I now want to fill the area I create but can't figure out how. This is the code that draws the border of the tab: val g2 = g.asInstanceOf[Graphics2D] g2.translate(x, y) val q = new CubicCurve2D.Float q.setCurve(0, h, 8, h, 6, 0, 16, 0) g2.setColor(Color.RED) g2...

How to write an Image without running out of memory in Java?

final BufferedImage img = new BufferedImage(3500, 2480, BufferedImage.TYPE_BYTE_INDEXED); final Graphics2D g2D = img.createGraphics(); g2D.setBackground(Color.white); g2D.clearRect(0, 0, width, height); (full code in this question). This code results in a Java Heap Space exception although I've set the jvm attribute to 3GB. Could that...