# Bild anhand von Koordinaten einteilen



## smau (6. Okt 2009)

Hallo zusammen,

ich habe ein vorgegebens Bild und die Koordinaten der vier Eckpunkte und möchte auf einzelnen Koordinaten des Bildes zugreifen. Nur wie kann ich das machen?

Mögliche Klassen die ich gefunden habe, sind BufferedImage und Raster. Nur ich habe keine Ahnung wie ich das jetzt anstellen soll...

Vielleicht könnt ihr mir ja helfen!


----------



## SlaterB (6. Okt 2009)

Google
->
Creating a Buffered Image (Java Developers Almanac Example)
siehe auch weitere Beispiele am unteren Ende der Seite


----------



## smau (6. Okt 2009)

Zu dieser Klasse finde ich Beispiele, wie man das Bild vermessen kann. Aber nicht wie man an vorhandenen Koordinaten das Bild aufteilt. Das ist mein Problem.


----------



## SlaterB (6. Okt 2009)

> auf einzelnen Koordinaten des Bildes zugreifen
steht im ersten Post, also image.getPixel(x,y);

was meinst du denn nun, ein Bild in 4 Teile splitten?
das ist ja eine höhere Anwendung, ob man da was fertiges findet?..
sonst halt erstmal Pixel für Pixel selber kopieren


----------



## smau (6. Okt 2009)

Ne ich mein das anders. Ich habe ein fertiges Bild und die Koordinaten für rechts oben, links oben, rechts unten und links unten.

Und über diese Koordinaten will ich auf einzelnen Punkte des Bildes zugreifen.


----------



## SlaterB (6. Okt 2009)

SlaterB hat gesagt.:


> siehe auch weitere Beispiele am unteren Ende der Seite



steht da nicht


> e671.  Getting and Setting Pixels in a Buffered Image


oder inwiefern hilft das nicht?


----------



## smau (6. Okt 2009)

Thx, "e671. Getting and Setting Pixels in a Buffered Image" ist glaub ich genau das was ich dafür gebrauchen kann. 
Mal schaun, ob das damit auch klappt.

Edit:
Nur wo ich da die Verzweigung zu meiner Bilddatei? Denn die muss ich dort ja auch angeben.

Mein bisheriger Quellcode:

```
import java.awt.image.*;

public class BufferedImageklasse
{
    {
        int x = 0;
        int y = 0;
    BufferedImage test = new BufferedImage();
    // Get a pixel
    int rgb = test.getRGB(x, y);

    // Get all the pixels
    int w = test.getWidth(null);
    int h = test.getHeight(null);
    int[] rgbs = new int[w*h];
    test.getRGB(0, 0, w, h, rgbs, 0, w);

    // Set a pixel
    rgb = 0xFF00FF00; // green
    test.setRGB(x, y, rgb);

    }
}
```
Als Fehler zeigt der mir BufferedImage test = new BufferedImage(); an. Ich weiss das da nochwas in die Klammern muss, nur nicht was. 
Und die Verbindung zu meiner Bilddatei fehlt auch noch.


----------



## Gastredner (6. Okt 2009)

```
File imgFile = new File("my_pic.gif");
BufferedImage img = ImageIO.read(imgFile)
```


----------

