gpt4 book ai didi

javascript旋转翻译功能

转载 作者:行者123 更新时间:2023-11-30 18:24:12 25 4
gpt4 key购买 nike

有人在 javascript 中有旋转后 x/y 位置的转换功能吗?

例如:

this.mousex = event.clientX - this.el.offsetLeft;
this.mousey = event.clientY - this.el.offsetTop;

给我鼠标位置,但是我的父 div 旋转了 x 度,这当然意味着 mousex/mousey 不正确。 javascript 是否有内置函数(不是我见过的,但是..)?

非常感谢

最佳答案

我刚刚为您写了以下内容,我已经用 (1,0,Math.PI/2)(0,1,Math.PI/2) 进行了检查 并且有效。

function rotatePoints(x,y,angle){
var point={};
point.x = x*Math.cos(angle)- y*Math.sin(angle);
point.y = x*Math.sin(angle) + y*Math.cos(angle);
return point;
}

应该可以,请参阅 Rotation Matrix in Wikipedia

当然, Angular 应该以弧度为单位。您可以通过乘以 Math.PI 并除以 180 将度数转换为弧度。 Angular 是逆时针的,如果您想顺时针旋转,传递 -angle 或将 sin 更改为 -sin 应该可以。

关于javascript旋转翻译功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11332188/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com