怎样将一个图形绕某一点旋转90度
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
1个回答
展开全部
看你说是90度,估计是二维旋转,三维一般会说三个角或者旋转轴的。
假如点P的坐标为(a, b) 取转置
假如旋转角度为 phi
假如矩阵求逆函数为inv()
假如变换系统为矩阵在左,列向量在右:
令T = [
1, 0, a
0, 1, b,
0, 0, 1 ];
令R = [
cos(phi), -sin(phi), 0
sin(phi), cos(phi), 0
0, 0,1]
令P2为变换后的点:
P2 = T * R * inv(T)
数学上是这么算的,如果是写程序实现一般没这么复杂,用DX、OGL或者GDI都有工具函数你可以使用的。
假如点P的坐标为(a, b) 取转置
假如旋转角度为 phi
假如矩阵求逆函数为inv()
假如变换系统为矩阵在左,列向量在右:
令T = [
1, 0, a
0, 1, b,
0, 0, 1 ];
令R = [
cos(phi), -sin(phi), 0
sin(phi), cos(phi), 0
0, 0,1]
令P2为变换后的点:
P2 = T * R * inv(T)
数学上是这么算的,如果是写程序实现一般没这么复杂,用DX、OGL或者GDI都有工具函数你可以使用的。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询