Подскажите пожалуйста. Есть две точки экрана с целочисленными координатами, мне нужно построить диагональ между ними и по целочисленным координатам этой диагонали плавно перемещать курсор мыши с помощью Robot.
Если использовать double значения, то все более менее понятно, вычисляем длину диагонали, определяем шаг и передвигаем. Но так как точки на экране целые, то тут уже вроде не так всё просто.
Может есть какие-нибудь специальные библиотеки, или уже готовые решения?
Заранее спасибо!
Нашел готовое решение:
package robot;
import java.awt.*;
public class MainClass {
public static void main(String[] args) throws Exception {
mouseGlide(50, 50, 400, 600, 10, 1000);
}
private static void mouseGlide(int x1, int y1, int x2, int y2, int t, int n) {
try {
Robot r = new Robot();
double dx = (x2 - x1) / ((double) n);
double dy = (y2 - y1) / ((double) n);
double dt = t / ((double) n);
for (int step = 1; step <= n; step++) {
Thread.sleep((int) dt);
r.mouseMove((int) (x1 + dx * step), (int) (y1 + dy * step));
}
} catch (AWTException | InterruptedException e) {
e.printStackTrace();
}
}
}
Вот источник. Правда код нуждается в доработке.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Не получается реализовать метод печати файлов екселя из java приложения, пробовал двумя способами: 1
Собственно таких участков очень большое количество, меняется только конструктор фреймовМожно ли как то выделить этот код в метод? UPD1: Ещё...
To gain a popularity among the business’ competitors, GeekMoviesuz should provide a various qualities for the content on the site