我有一个位图(web ,2048x1365)并在其上放一个点(
我知道旋转方程式:
$cs=cos($radian);
$sn=sin($radian);
$x2=($x*$cs)-($y*$sn);
$y2=($x*$sn)+($y*$cs);
但不知怎的,我有一个滞后......
我的代码(在PHP中):
$width=2048;
$height=1365;
$radian=$rot*M_PI/180;
$cs=cos($radian);
$sn=sin($radian);
$center_x=$width/2;
$center_y=$height/2;
$x-=$center_x;
$y-=$center_y;
$x2=($x*$cs)-($y*$sn);
$y2=($x*$sn)+($y*$cs);
$x=$x2+$center_x;
$y=$y2+$center_y;
$ rot = 6°,我必须转移(约)$ x2 + 30,$ y2 +85
$ rot = 21°,我必须换$ x2 + 40,$ 2 +380
$ rot = 90°,我必须转移$ x2 -340,$ y2 -340
$ rot = 180°,这很好
$ rot = 270°,我必须换$ x2 +340,$ y2 +340
我不明白这种滞后......
要提供帮助,here is an example。点是广场的中心。角度为10°时,我必须为3个点添加x + 180和y + 70。
非常感谢您的帮助
答案 0 :(得分:0)
从评论中复制到问题:
图像尺寸在旋转时不会改变吗?
旋转后计算角落的位置,你应该得到旋转的图像尺寸
(然后您可以从中计算新的旋转中心。)