我有 2 个图像,用户在两个图像上选择匹配点 我计算对齐图像所需的旋转角度
该坐标系中定义的旋转角度id
-90
-180 | 0
---------
180 | 0
90
我的图形 View 是由这个坐标系定义的
270
180--|--0
90
旋转角度正确 如何确定旋转方向?
示例 如果 X 和 Y 是图像上的点 坐标系定义的旋转角度均为 -110
x |
|
-------y-
|
|
如何创建 if 语句来确定旋转方式
注意:如果旋转角度在 -90 和 90 之间,则通过应用旋转 原始值有效,但如果该值不在这些值之间,则无法正确旋转
从上面的例子 如果我旋转 x -> y (x 需要正向旋转) 但如果 y -> x (y 需要旋转负数) 但无论如何,原始值都是 -110 所以我猜我不能使用旋转角度作为参数来确定旋转方式
我觉得很简单 但由于某种原因我无法理解它
最佳答案
你们的坐标系是相同的! -90deg == 270deg(在此上下文中)
您需要应用的转换是:
其中 x 和 y 是原始坐标,x' y' 是新坐标。旋转角度为theta
编辑:
我应该添加这会执行绕原点的旋转。如果你想围绕另一个点旋转,你需要先平移你的图像,直到原点达到你需要的位置
关于c++ - 基于不同坐标系旋转图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18505920/