下你所需,载你所想!
汇集开发技术源码资料

两点之间鼠标直线移动带轨迹算法

:179.734KB :1 :2019-12-24 08:49:06

部分简介

鼠标_移动 (, 起点X, 起点Y)
坐标x = 起点X
坐标y = 起点Y
.如果 (坐标x < 终点X 且 坐标y > 终点Y)
水平X = 终点X - 取鼠标水平位置 ()
水平Y = 取鼠标垂直位置 () - 终点Y
y = 水平Y ÷ 水平X × x
x = 水平X ÷ 水平Y × y
P = 0
.判断循环首 (Y1 ≠ 终点Y)
P = P + 1
Y1 = 坐标y - P
X1 = 坐标x + 水平X ÷ 水平Y × P
鼠标_移动 (窗口句柄, X1, Y1)
延迟 (移动速度)
.判断循环尾 ()

Function lineMove(targetX, targetY)
//获取当前鼠标的坐标
GetCursorPos x, y
//获取斜率
k=(targetY-y)/(targetX-x)
//把当前坐标带入公式y=kx+b 求得b值
b = y - k * x
//获取坐标值差
dx = targetX - x
//定义总移动次数 可以通过调整此参数和下面的延迟时间 获得更佳模拟效果
moveNum = 900
//获取每次偏移量
perX=dx/moveNum

For moveNum
x = x + perX
y = k * x + b
MoveTo x,y
Delay 0.2
Next
End Function

//测试
Call lineMove(800,800)

两点之间鼠标直线移动带轨迹算法

热门推荐

相关文章