Java moveMouse RNG建议与我的程序

时间:2018-12-09 02:56:29

标签: java class mouse mousemove awtrobot

我一直在使用Java Robot类来开发程序,以将鼠标移动到像素区域之间的随机位置。众所周知,moveMouse方法的作用与moveMove(x,y)相同,其中x是水平像素数,y是垂直像素数。然后,我将使用math.random对随机数生成器进行数学运算,以使程序单击屏幕上矩形区域中的随机像素。这行看起来像这样(数字是任意值)

robot.mouseMove(randomNum(350,400),randomNum(350,400)

它将在x方向上在像素350-400之间进行选择。在y方向上为350-400。虽然,我遇到的问题是最终经过几百次迭代后,点击的散点图看起来...不是那么随意:

"random" clicks

所以我想我将通过添加2个数组来保存此问题来解决这个问题,这些数组保存我想要的对应x和y值,并通过重复像素数来添加加权RNG,这样它就有更大的机会进入这些像素。但是我仍然得到一个看起来不自然的散点图。这是我的代码:

private static int[] items = new int[] 
{/*insert x coord pixels*/ };
    private static Random rand = new 
Random();

    public static int getRandArrayElement() 
 {
        return 
 items[rand.nextInt(items.length)];
    }


    private static int[] items2 = new int[] 
{/*insery y coord pixels*/};
    private static Random rand2 = new 
Random();

    public static int 
getRandArrayElement2(){
        return 
items2[rand2.nextInt(items2.length)];
    } 



robot.mouseMove(getRandArrayElement(),getRandArrayElement2());
robot.mousePress(button);
robot.delay(randomNum(11,32));
robot.mouseRelease(button);
robot.delay(randomNum(11,32));

此代码仍然具有与上一个相同的约束,无论如何,我的散点图仍将类似于某种矩形。有什么办法可以列出每个值都具有可读的x AND y值的列表,因此我可以通过省略某些像素来对加权RNG进行硬编码,从而选择散点图的形状?我想使它看起来像这样:

More random looking click plot

因此,如果任何人有任何想分享的有用信息,我都会为之倾听。干杯。 :)

0 个答案:

没有答案