以下に貼り付けた私の現在のコードは、明らかに、同じ RGB 値を持つ色が見つかるまで、ピクセル (x, y) の色のみを取得し1,1
、 一致する色が見つからない場合はピクセルで停止します。これを行うためのより良い方法は何ですか?ピクセル座標の色を取得するだけではありません。?2, 2
3,3
targetColor
1000,1000
1,1
2,2
getPixelColor(x, y)
そして、色の座標が必要なため、メソッドを使用する必要があるため、色の場所をクリックできます。
import java.awt.Color;
import java.awt.Robot;
public class Colour
{
int x, y;
int n = 0;
int m = 0;
int i = 0;
public Colour()
{
try
{
Robot robot = new Robot();
Color targetColor = new Color(255, 25, 255);
Color color = robot.getPixelColor(n, n);
while (color.getRGB() != targetColor.getRGB() && i != 1000)
{
color = robot.getPixelColor(n, n);
System.out.println("color = " + color);
n++;
i++;
if (color.getRGB() == targetColor.getRGB())
{
i = 1000;
System.out.println("colour found" + n + " " + n);
}
}
}
catch (Exception e)
{
}
}
public static void main(String[] args)
{
Colour color = new Colour();
}
}
私が尋ねた内容が明確でない場合は、ただ言ってください。より深く、またはより理解しやすい方法で説明しようとします。