Moin,
hab ein kleines Problem. Ich möchte ein Programm schreiben, welches die Pixelfarben in einem Bildschirmbereich abfragt. Es gibt von der Klasse Robot dien Methode robot.getPixelColor(int x, int y)
Nun habe ich folgende Methode geschrieben, um die Pixelfarbe direkt in RGB-Daten zu zerlegen:
Allerdings ist es nun so, dass wenn ich in die Datei schaue, die Zeilen unterschiedlich lang ist, obwohl es ein Rechteck sein sollte und somit die Länge der Pixelreihen die abgefragt werden immer gleich lang sein müsste...
Die Koordinaten wo er anfängt sind jeweils:
x = 240;
y= 27;
breite = 32;
hoehe = 19;
Hat jemand ne Erklärung für das Problem und wie ich das beheben könnte?
Vielen Dank für jede Antwort im Voraus
Fawkes
hab ein kleines Problem. Ich möchte ein Programm schreiben, welches die Pixelfarben in einem Bildschirmbereich abfragt. Es gibt von der Klasse Robot dien Methode robot.getPixelColor(int x, int y)
Nun habe ich folgende Methode geschrieben, um die Pixelfarbe direkt in RGB-Daten zu zerlegen:
Java:
public void readFromScreen(int x, int y, int breite, int hoehe)
{
ArrayList<Integer> red = new ArrayList<>();
ArrayList<Integer> green = new ArrayList<>();
ArrayList<Integer> blue = new ArrayList<>();
ArrayList<Integer> xPos = new ArrayList<>();
ArrayList<String> lines = new ArrayList<>();
for(int i=y; i<y+hoehe; i++)
{
for(int j=x; j<x+breite; j++)
{
Color screenColor = robot.getPixelColor(j,i);
red.add(screenColor.getRed());
green.add(screenColor.getGreen());
blue.add(screenColor.getBlue());
xPos.add(j);
}
lines.add(buildString(xPos,y,red,green,blue));
}
writeStringArray(lines, blenderMenue);
}
Die Koordinaten wo er anfängt sind jeweils:
x = 240;
y= 27;
breite = 32;
hoehe = 19;
Hat jemand ne Erklärung für das Problem und wie ich das beheben könnte?
Vielen Dank für jede Antwort im Voraus
Fawkes