Point旋转函数
点坐标的旋转在前端经常遇到,尤其是做图形变换、动画、canvas 绘制这块。Point_xuanzhuan
这个函数挺好用的,传进去点坐标、中心点、角度还有方向,直接能给你转好,省事不少。逻辑在 C# 写的,不过你完全可以参考它的思路,改成 JS 或 TS 也不难。
参数设计比较直观,比如RotatePoint(p1, center, Math.PI / 4, false)
这样写,表示点 p1
围绕 center
逆时针旋转 45 度(记得是 Math.PI / 4
哦,原文里写错了点)。逆时针顺时针只要调个布尔值就行,挺方便的。
你要是对坐标旋转感兴趣,可以看看这些相关的内容:螺旋输出、多边形方向判断、图片旋转,都蛮有参考价值。我下面也贴了几个链接,想深入可以点进去瞅瞅。
顺带提醒一下:如果你编译跑不通,率是参数写错或者角度单位搞混了,角度要用弧度制,别写成 45 就完事了(用Math.PI / 4
才对)。
如果你在做坐标变换类的交互,比如拖拽旋转、画图工具、图形编辑器,这函数的逻辑可以直接借来用,封装成 utils 或 hook 都好整。
下载地址
用户评论