使用加速度计和陀螺仪移动鼠标光标

问题描述 投票:0回答:1

希望您能帮助我!

我想用陀螺仪和加速度计的值控制我的电脑光标。因此,基本上,当我移动传感器时,应该移动光标。我使用了MPU-6050芯片和ESP32。

我如何获得光标的位置:

public static void main (String[] args){

        for(int i = 0; i<= 1000000; i++) {

        PointerInfo info = MouseInfo.getPointerInfo();

        Point location = info.getLocation();

        System.out.println("x="+ location.x + " y=" + location.y);

}

我将如何从传感器获取值:

 public SensorData(JsonObject data) {
    //accerlation accelerometer
    ax = data.get("ax").asDouble()/ASENSETIFITY;
    ay = data.get("ay").asDouble()/ASENSETIFITY;
    az = data.get("az").asDouble()/ASENSETIFITY;

    //temperature 
    temp = data.get("t").asDouble()/340.00+36.53;

    //gyroscope
    gx = data.get("gx").asDouble()/GSENSETIFITY;
    gy = data.get("gy").asDouble()/GSENSETIFITY;
    gz = data.get("gz").asDouble()/GSENSETIFITY;

}

public String toString() {
    return "ax: " + Double.toString(ax) +", ay: " + Double.toString(ay)
        +", az: " + Double.toString(az) +", temp: " + Double.toString(temp)
        +", gx: " + Double.toString(gx) +", gy: " + Double.toString(gy)
        +", gz: " + Double.toString(gz);

}

我的问题:

我现在如何控制光标?你有个主意吗?

我以为,您需要鼠标光标的最后一个位置,然后获取传感器的当前位置并更改鼠标位置。但是我该如何写我的价值观呢?

我找到了this网站,当移动传感器时,在PC上旋转了3个对象。但这不是用Java编写的,我不理解他的解决方案。

我还阅读了很多有关SensorEvent的内容。也许它将那样工作。但是我没那么久就编程,也不了解。

java accelerometer
1个回答
0
投票

如果我很好地理解了您的问题,您正在尝试使用Java移动鼠标光标。为此,您可以使用'Robot'类,该类具有MouseMove(int x, int y)方法

© www.soinside.com 2019 - 2024. All rights reserved.