Mahlzeit!
Ich steh vor einem kleinen, wahrscheinlich sehr trivialen Problem:
Ich will (vorerst) mal ein Image in ein JFrame zeichnen und das dann mittels MouseWheel skalieren.
Das klappt auch mit Graphics ganz gut:
Allerdings bietet Graphics keine Methode zum Skalieren.
Wenn ich mir nun die API anschaue, sieht die MEthode drawImage folgendermaßen aus:
drawImage(BufferedImage img, BufferedImageOp op, int x, int y)
Renders a BufferedImage that is filtered with a BufferedImageOp.
bzw.
drawImage(Image img, AffineTransform xform, ImageObserver obs)
Renders an image, applying a transform from image space into user space before drawing.
Leider kenn ich mich weder mit dem Interface BufferedImageOp noch mit AffineTransformation noch mit ImageObserver aus und bin ziemlich überfordert, was das ganze betrifft. Bin auch ziemlich raus was programmieren betrifft, weil ich 9 monate nichts mehr gemacht habe in der hinsicht.
Wenn mir jemand ein paar tipps oder hinweise geben könnte, wie das ganze funktioniert, wäre ich sehr dankbar.
Ich steh vor einem kleinen, wahrscheinlich sehr trivialen Problem:
Ich will (vorerst) mal ein Image in ein JFrame zeichnen und das dann mittels MouseWheel skalieren.
Das klappt auch mit Graphics ganz gut:
Java:
public class scalePicture extends JFrame
{
private Image map;
public scalePicture()
{
init();
map = Toolkit.getDefaultToolkit().getImage("C:\\...\\karte.jpg");
}
public void init()
{
this.setSize(800,600);
}
public void paint(Graphics g)
{
g.drawImage(map, 0, 0, this);
this.repaint();
}
public static void main(String[] args)
{
scalePicture sp = new scalePicture();
sp.setVisible(true);
sp.validate();
}
}
Wenn ich mir nun die API anschaue, sieht die MEthode drawImage folgendermaßen aus:
drawImage(BufferedImage img, BufferedImageOp op, int x, int y)
Renders a BufferedImage that is filtered with a BufferedImageOp.
bzw.
drawImage(Image img, AffineTransform xform, ImageObserver obs)
Renders an image, applying a transform from image space into user space before drawing.
Leider kenn ich mich weder mit dem Interface BufferedImageOp noch mit AffineTransformation noch mit ImageObserver aus und bin ziemlich überfordert, was das ganze betrifft. Bin auch ziemlich raus was programmieren betrifft, weil ich 9 monate nichts mehr gemacht habe in der hinsicht.
Wenn mir jemand ein paar tipps oder hinweise geben könnte, wie das ganze funktioniert, wäre ich sehr dankbar.