Hey, Denkfehler hab ich nicht... Ich wollte mit dem Source nur zeigen, was ich bisher herausgefunden habe... Und da das nur ein Test war, ist das schon mal ok ...
So, nun aber mal was erfreuliches: Nach wochenlangen Suchen habe ich was feines gefunden! Source:
class RobotRadar extends Thread {
myMosro window;
public RobotRadar ( myMosro window ) {
this.window = window;
}
public void run ( ) {
Color color;
Image image1;
BufferedImage bImage1;
Image image2;
BufferedImage bImage2;
Color rgb1;
Color rgb2;
int höhe;
int breite;
Label dummyObserver = new Label();
int h = 0;
while ( true ) {
image1 = window.createImage(window.getToolkit().getScreenSize().width, window.getToolkit().getScreenSize().height);
breite = image1.getWidth(dummyObserver);
höhe = image1.getHeight(dummyObserver);
bImage1 = new BufferedImage(breite + 1, höhe + 1, BufferedImage.TYPE_INT_RGB);
bImage1.getGraphics().setColor(image1.getGraphics().getColor());
bImage1.getGraphics().drawImage(image1, 0, 0, window);
try {
Thread.sleep(1000);
} catch ( InterruptedException ie ) {}
image2 = window.createImage(window.getToolkit().getScreenSize().width, window.getToolkit().getScreenSize().height);
bImage2 = new BufferedImage(breite + 1, höhe + 1, BufferedImage.TYPE_INT_RGB);
bImage2.getGraphics().setColor(image2.getGraphics().getColor());
bImage2.getGraphics().drawImage(image2, 0, 0, window);
for ( ; breite > 0; breite-- ) {
for ( ; höhe > 0; höhe-- ) {
if ( breite <= window.locX + 55 && breite >= window.locX - 5 ) {
breite = window.locX - 1;
}
if ( höhe <= window.locY + 55 && höhe >= window.locY - 5 ) {
höhe = window.locY - 1;
}
rgb1 = new Color(bImage1.getRGB(breite, höhe));
rgb2 = new Color(bImage2.getRGB(breite, höhe));
if ( (rgb1.getBlue() != rgb2.getBlue()) & (rgb1.getRed() != rgb2.getRed()) & (rgb1.getGreen() != rgb2.getGreen()) ) {
System.out.println("Der Pixel X:" + breite + " Y:" + höhe + " ist anders!" );
}
}
}
}
}
}
Ich würde mich unglaublich freuen, wenn das mal einer testen würde... aber im Editor...
THX, Stiewen