【发布时间】:2010-12-22 11:40:52
【问题描述】:
我正在使用 Web 界面为我的本地照片创建一个数据库,我希望能够在其中标记图像并旋转它们,等等。在实现标签(就像 Facebook 的标签系统一样)时,我遇到了一个有问题的领域。即:
假设我标记了(不是)我的图像:
当我旋转它时,我希望标签坐标随图像一起旋转,如下所示:
这是我的问题。我将坐标存储在 CSS 坐标系中的数据库 (x, y) 中,即左/上而不是数学左/下。 (这可能不是什么大问题?)
下一个大问题是,当我围绕中心(点 [0,0])旋转时,我得到负坐标。例如,从 [100, 100] 到 [-100, -100]。这是不正确的,因为当我旋转图像时,我没有得到负坐标。坐标系只是正的。
我所有的旋转代码都使用了矢量旋转公式:
$nx = $x * cos(deg2rad($rotation_angle)) - $y * sin(deg2rad($rotation_angle));
$ny = $x * sin(deg2rad($rotation_angle)) + $y * cos(deg2rad($rotation_angle));
我的问题是:我该如何解决这个问题?我曾尝试仅使用abs 将负值变为正值,但会导致坐标错误。
【问题讨论】:
标签: math tags rotation coordinates