图形学基础 (一)点乘叉乘的意义

光栅化

把3D的物体显示在屏幕上这就是光栅化

实时:

每秒钟能够生成30幅画面或者叫30帧,否则叫离线 (offline)

光线追踪费时, 现在随着技术的发展已经有了实时光线追踪

编程语言不推荐用python, 可以使用C++, 因为python实在是太慢了

线性代数基础

向量点乘
  • 默认向量的缺省是列向量

向量的点乘是一个数字

在这里插入图片描述

image-20211125220523377

image-20211125220750168

会发现点乘其实是对应的元素位置相乘再相加

image-20211125220912798

点乘可以用在求法线, 求投影夹角上

点乘可以得到一个向量投影到另一个向量的样子:

  • 现在是把b向量投影到a向量

image-20211125222040415

  • 投影出来有啥用呢?可以把一个向量分解为两个向量,比如b分为平行于a和垂直于a的向量

image-20211125222441487

  • 向量的点乘还可以告诉前与后的信息

image-20211126102641804

比如以a为界,落在虚线以上的是forward部分, 下面是backward部分, 如果点乘都是大于0就是方向基本相同, 否则就是方向基本相反, 如果都是单位向量哈可以根据是否接近1来判断接近的程度

向量叉积

image-20211126103628309

从左到右用右手卷判断方向

叉积有什么用处呢?可以通过给定的两个向量来确定第三个向量, 以此构成坐标系

image-20211126104220703

如果在一个坐标系里面x叉乘y得到 了z, 那么我们称这个坐标系是个右手坐标系

叉乘的规则:

  1. 交换方向相反
  2. 相同向量叉乘得到的是零向量
  3. 分配律和结合律仍然存在

叉乘的矩阵表示

image-20211127112137863

叉积还有一些用处, 判断左和右, 内与外,这两个其实一个意思

image-20211127112150734

现在有个平面, a和b构成的, 从图上我可以很明显的看出, b在a的左侧(逆时针旋转),但是假如从向量角度出发就可以判断a叉乘b是否为正向量

假如A, B, C 三个点按逆时针的顺序排列在一起, 判断P点是不是在三角形的内部, 是不是在AB的左侧, 就可以构建从A到P的向量, 假如AB叉乘AP指向外, 那么P点就在AB左侧, 然后判断是CA的左侧,那么P在三角形内

点乘分解坐标

image-20211127112216463

矩阵

矩阵的乘积列等于行

image-20211126124556129

转置的性质

image-20211126141430117

点乘可以变换计算方式

image-20211126141905883

左边是点乘, 右边是矩阵乘积

叉乘也可以写成矩阵的形式

image-20211126142040233

其中 A ∗ A^* A是一个矩阵, 叫dual matrix

矩阵变换

缩放

image-20211127112325639

放缩对角线有值, 这个矩阵叫缩放矩阵

image-20211126163252127

对称

image-20211127112339366

切变(shear)

比如拉着图向右拉, 这个和平行四边形是不一样的, 因为这里y是一点都不动的

image-20211127112927720

这里最上面的边移动的距离是a, 下面的距离是0, 这里假设最高为1, 也就是1对应a, 0对应0, 那么任何一个y对应的就是y*a

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

live_for_myself

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值