平面上点的旋转

平面上点的旋转

在平面坐标上,任意点P(x1,y1),绕一个坐标点Q(x2,y2)逆时针旋转θ角度后,新的坐标设为(x, y)的计算公式:

x= (x1 - x2)*cos(θ) - (y1 - y2)*sin(θ) + x2 
y= (x1 - x2)*sin(θ) + (y1 - y2)*cos(θ) + y2 

 

另一个场景应用,坐标轴绕着原点逆时针旋转θ角度,也就变成:

 
x= x1 * cos(θ) - y1 * sin(θ) 
y= x1 * sin(θ) + y1 * cos(θ) 

 

 

在图像中,图像(0,0)点的坐标的原点是在图像的左上角。

假设图像的宽度x高度为col x row,图像中某个像素P(x1,y1),绕某个像素点Q(x2,y2)旋转θ角度后,则该像素点的新坐标位置为(x, y),其计算公式为:

x1 = x1
y1 = row - y1
x2 = x2
y2 = row - y2
x = (x1 - x2)*cos(pi / 180.0 * θ) - (y1 - y2)*sin(pi / 180.0 * θ) + x2
y = (x1 - x2)*sin(pi / 180.0 * θ) + (y1 - y2)*cos(pi / 180.0 * θ) + y2
x=x
y = row - y

 

 

 

 

 

#############################

posted @   西北逍遥  阅读(392)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2022-06-25 绘制位置
2021-06-25 QTime
2020-06-25 IfcRightCircularCone
2020-06-25 IfcRectangularPyramid
2019-06-25 Civil 3D百度云地址
2019-06-25 osg define shape(create box)
2019-06-25 osg #ifdef _WIN32 osg
点击右上角即可分享
微信分享提示