当前位置: 首页 > news >正文

记矩阵基础概念

转自up:Naruto_Qcsdn:三维空间几何变换矩阵

先贴个站里分享的基础概念。

learn form 肥猫同学VFX b站:会用transform就会用矩阵

移动 旋转 缩放

1.transofrm ——输出变化矩阵
在这里插入图片描述

可以移动transform查看变化去理解

位移

[1 0 0 0]

缩放

在这里插入图片描述

旋转

在这里插入图片描述

由此——3*3矩阵无法实现 ,位移

vex

4@m=ident(); //ch4('m')//单位矩阵
scale(@m,ch('sacle'));//缩放 对空间缩放(物体在空间内——同步缩放)float angle=radians(chf('angle'));
vector axis=chv('axis');
rotate(@m,angle,axis);// 旋转translate(@m,chv('tran'));//位移  or这里用3*3矩阵  最后@P+位移 也可以@P*=m;

lookat函数

vector p1=getbbox_center(0);
vector p2=point(1,'P',0);
martix3 m=lookat(p2,p1);
@P*=m;

dihedral 函数 让a转向b

绕指定轴转

vector a={0,1,0};
vector b=normlize(b向量);
martix3 m =dihedral(a,b);float angle=radians(chf('angle'));
rotate(@m,angle,b);// 旋转
@P*=m;

在这里插入图片描述

读取位移信息

在这里插入图片描述
copy给物体
在这里插入图片描述
读取运动 这里等于复制了3个transform

maketransform

在这里插入图片描述
z +y+中心 定义4*4

vector zaxis=z;
vector yaxis=y;
vector translate=getbbox_center(1);
matrix m=maketransform(zaxis,yaxis,translate);
@P*=m;

3*3-------四元数

3@m=ident();
p@q=quaternion(3@m);

逆矩阵 invert
转置矩阵 transpose (eg:(m,n)矩阵A的行和列 给出的转置矩阵At 大小为(n,m))

http://www.lryc.cn/news/271157.html

相关文章:

  • 用html,js和layui写一个简单的点击打怪小游戏
  • [线代]不挂科猴博士
  • 扩散式过滤器 水泵角通除污器 0阻力过滤器直角过滤器工作原理
  • MetalLB:本地Kubernetes集群的LoadBalancer负载均衡利器
  • C++判定终端ip和目标ip是否在同一局域网内
  • 深入解析 可空值类型
  • esp32idf使用thingscloud例程
  • 记一次应急响应练习(Linux)
  • Pandas教程(四)—— 分层索引及数据联合
  • 小梅哥Xilinx FPGA学习笔记16——FSM(状态机)的学习
  • vol----学习随记!!!
  • HarmonyOS4.0系统性深入开发10卡片事件能力说明
  • openGauss学习笔记-181 openGauss 数据库运维-升级-升级流程
  • 提前应对威胁
  • C语言与人生:数组交换和二分查找
  • Python实现【亚马逊商品】数据采集
  • Git使用教程 gittutorial
  • 有了向量数据库,我们还需 SQL 数据库吗?
  • 信息网络协议基础-IPv6协议
  • VC++ ado 实现单表CURD
  • C#使用switch多路选择语句判断何为季节
  • 可爱的魔法曲线 Lovely Magical Curves(12年开始只有5个人AC)
  • 通过C++程序实现光驱的自动化刻录和读取
  • 【电商项目实战】商品详情显示与Redis存储购物车信息
  • 概率论基础
  • Mac电脑CMake安装和配置
  • FormData传送复杂数据
  • 力扣回溯算法-电话号码的字母组合
  • 运维面试笔试题
  • Oracle database 静默安装 oracle12c 一键安装 12.1.0.2