利用旋转矩阵简便旋转二位矢量(SDacm4A题解)
来源:互联网 发布:美萍软件介绍 编辑:程序博客网 时间:2024/06/05 10:10
题目原意是给你A,B两点坐标,让你求出逆时针的第三点C的坐标。
我这里运用旋转矩阵的方法,大大缩减代码量及code难度。
#include<stdio.h>#include<math.h>int main(){ double x1,x2,y1,y2,ansx,ansy; int t; scanf("%d",&t); while(t--) { scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2); double newx2,newy2; newx2=x2-x1; newy2=y2-y1; ansx=newx2*0.5-sqrt(3.0)/2.0*newy2; ansy=newx2*sqrt(3.0)/2.0+newy2*0.5; printf("(%.2lf,%.2lf)\n",(ansx+x1),(ansy+y1)); } return 0;}
首先将A点平移到坐标原点,B点坐标也按A点的平移大小进行平移,然后将B点以A点为中心逆时针旋转60.
在二维空间中,旋转可以用一个单一的角 θ 定义。作为约定,正角表示逆时针旋转。把笛卡尔坐标的列向量关于原点逆时针旋转θ 的矩阵是:
该矩阵的逆矩阵为:
表示较原来反方向旋转θ ,也即顺时针旋转θ
注意,坐标表示成2*1规模的矩阵,展开就OK了。
0 0
- 利用旋转矩阵简便旋转二位矢量(SDacm4A题解)
- 矩阵旋转(图像旋转)
- 利用四元数求解旋转矩阵
- 旋转变换(一)旋转矩阵
- 旋转变换(一)旋转矩阵
- 旋转变换(一)旋转矩阵
- 旋转变换(一)旋转矩阵
- 旋转变换(一)旋转矩阵
- 旋转向量-旋转矩阵
- 旋转矩阵,旋转影像
- 利用三维旋转矩阵在空间中旋转平面
- 旋转矩阵
- 矩阵旋转
- 旋转矩阵
- 旋转矩阵
- 旋转矩阵
- 旋转矩阵
- 矩阵旋转
- 安装Sublime Text 3插件的方法
- OJ 1185 特殊排序
- 黑马程序员——Java基础知识——面向对象(二)
- Hadoop学习笔记之Hadoop简介
- 面向对象学习(4)
- 利用旋转矩阵简便旋转二位矢量(SDacm4A题解)
- web项目中导入外部jar
- Android图像处理技术(实现Android中的PS)(四)
- android 仓库下载分析
- arm-linux-gcc安装和配置
- C语言不支持引用传递和函数重载
- Intent和IntentFilter详解
- 逐顶点和逐像素光照
- 二叉树转换为双向链表