我使用 Snap.svg 库创建了一个旋钮(基本上是一个圆圈),我使用 Snap 的变换函数和旋转参数来旋转它。
我使用两个 Snap 内置功能,Snap.deg()
并将Snap.angle()
旋钮旋转到某个位置(使“手”面向光标或触摸点)。我的理解是它的Snap.angle
工作原理与 atan2 函数非常相似,同时Snap.deg
将弧度值转换为度
我遇到的问题是,默认情况下,0 / 360° 位置是旋钮的指针(如时针)面对3:00 和(顺时针移动旋钮时度数上升)我希望时针位于 6:00 时的 0 / 360° 位置(顺时针旋转度数仍在上升)。
我试图只加减 90°,但这只会使值不准确,因为从 3:00 到 6:00 计算的角度在 0 到 -90 之间。
这些值很重要,不是因为物理旋钮的外观(当前计算适用于此),而是因为我在代码中的其他地方使用计算值,并且想要正南的值为 0,正西的值为 90,正西的值为 180北等
Snap.deg 的参考是:http ://snapsvg.io/docs/#Snap.angle