我试图使用机器人类来移动鼠标指针,基于我从android设备上通过蓝牙获得的加速度计读数。问题是鼠标光标按步骤移动。我需要一种方法来平稳地移动它,比如物理地拖动指针。到目前为止,我的情况如下
@Override
public void serialEvent(SerialPortEvent serialPortEvent) {
if(serialPortEvent.getEventType() == SerialPortEvent.DATA_AVAILABLE) {
try {
String inputLine = input.readLine();
String[] values = inputLine.split(",");
int x = Integer.parseInt(values[0])*(-1);
int y = Integer.parseInt(values[1])*(-1);
mouse.moveMouse(x, y);
//System.out.println(inputLine);
} catch (IOException e) {
System.err.println(e.toString());
}
}
}在这里,鼠标指针以更小或更大的步骤移动,这取决于手机倾斜的程度。但我希望它移动得更快或更慢。
发布于 2015-04-09 18:42:32
你要找的是interpolation,,谷歌上可能有很多关于它的结果。但最基本的是,您需要确定哪些位置是之间的之间的开始和结束位置,并通过它们随着时间的推移。
或者,看起来您可以简单地缩小输入值。
https://stackoverflow.com/questions/29546354
复制相似问题