canvas 中的绘图自由流动绘图工具

Drawing free-flow drawing tool in canvas

我研究了 Douglas Peucker 算法。也许我可以将它用作替代解决方案来自由流动我的绘图。但是我的问题是,我画的时候,之前画的点也在动。有什么方法可以使绘制的线在数组中的同一点集合内绘制时保持静止。

这是code

mousemoves 事件为您提供时间戳 (event.timeStamp)。

使用该时间戳计算随时间移动的距离(distance/time==速度):var distance=Math.sqrt((prevX-thisX)*(prevX-thisX)+(prevY-thisY)*(prevY-thisY));

强制线到 X 轴:如果速度低于您的 "slow" 阈值,只需使用先前的 Y 坐标而不是鼠标事件提供的 Y。