diff --git a/src/CanvasNest.js b/src/CanvasNest.js index 7b086fc..9875e8e 100644 --- a/src/CanvasNest.js +++ b/src/CanvasNest.js @@ -115,7 +115,11 @@ export default class CanvasNest { y_dist = r.y - e.y; // y轴距离 n dist = x_dist * x_dist + y_dist * y_dist; // 总距离, m - dist < e.max && (e === current && dist >= e.max / 2 && (r.x -= 0.03 * x_dist, r.y -= 0.03 * y_dist), // 靠近的时候加速 + dist < e.max && (e === current && + ( + ((Math.abs(r.xa / r.ya - x_dist / y_dist) < 0.1 ) && (dist <= e.max / 1.995 && dist >= e.max / 2.005) && (r.x -= r.xa, r.y -= r.ya)) || //当加速度斜率逼近距离斜率且距离小于某个范围时,就停止运动 + (dist >= e.max / 2 && (r.x -= 0.03 * x_dist, r.y -= 0.03 * y_dist)) + ), // 靠近的时候加速 d = (e.max - dist) / e.max, context.beginPath(), context.lineWidth = d / 2,