kerios-123

前情回顾:什么是计算机图形学,图形学有哪些应用,课程要求

图形学依赖于线性代数,微积分,光学,力学,信号处理,统计,数值分析,美学;分为两个部分说明:向量与矩阵。

向量(vector):表示有大小有方向的量。AB的向量等于B-A,向量的属性就是方向与大小,向量不具有位置这个概念,随意平移,向量依然方向不变,大小不变。

模长为1,的向量是单位向量。

向量的基本计算:平行四边形法则,三角形法则

 

 

向量在代数上的计算:加法直接就是相应的坐标相加。同时向量还能表示为矩阵

 

 

在图形学中,一般把向量做成一个列矩阵。把向量做一个直角坐标系的做法,是很利于向量做计算模长的

向量的点乘:

 

 

点乘可以快速地得到两向量之间的夹角,向量之间的性质:结合律,交换律

 

 

在代数上计算点乘:

 

 

向量的另一个用处:投影

要计算a向量在b向量的投影,就是a的模长乘以两者之间的余弦

 

 

投影的好处是,可以分解向量,就相当于物理中分解力一般。

向量的点乘还能得到前与后的信息:

 

 

可以告诉我们是方向相同还是方向相反,还能告诉大家,向量之间的距离有多近。

一般向量默认成列向量,是一个约定俗成的事情;

向量的叉乘:

 

 

最终得到的第三个向量就是垂直与两者向量的

具体判定方向就是用右手螺旋定则,从a叉乘b,右手手指从a弯到b,然后看大拇指的方向。与图中是一致的。

 

 

与右手螺旋定则结果相反,对应用的就是左手坐标系,如果是相同的结果,就是右手坐标系。opengl用的就是左手坐标系

向量的叉乘在代数的写法:

 

 

叉乘的作用:

判定左与右,判定内与外

 

 

判定左与右。如果a叉乘b,结果是正的,那么是逆时针的,相对于a来说,那自然就是在a的左边

 

 

如何判定p点在三角形内部:

AB叉乘AP,是逆时针的,大拇指向屏幕外

BC叉乘BP,是逆时针的,大拇指向屏幕外

CA叉乘CP,是逆时针的,大拇指向屏幕外

三者结果相同,说明p相对于ABC三点来说都在他们的左边,那么久只能在三角形的内部。但凡在外部,定有一个叉乘是大拇指指向屏幕内。

通过这个方法,可以在光栅化阶段,看那些像素在三角形内部

如果刚好结果是0说明就在线条上,那这个点在不在三角形内,由自己说了算。

 

 

把一个空间中的向量分解在3D坐标系的轴上

矩阵:

 

 

这种三行两列的组合就是矩阵

矩阵的乘法:

 

 

(3x2)(2x4)这种矩阵的乘法才是有意义的,也才是计算的出来的。

(MxP)(NXS)这种形式是错误的,(MXP)(PXD)这种形式就是正确的,代表着几行几列

要计算未知的数字,它是一行,二列。

找第一个矩阵的第一行,第二个矩阵的第2列,那么计算就是1x6+3x7;

矩阵的性质:矩阵是没有交换律的,但是有结合律的。

矩阵的操作:转置:行列互换

 

 

单位矩阵:

 

 

一个矩阵乘以另一个矩阵,结果是单位矩阵,那么这两个矩阵就是互逆矩阵

 

 

向量的点乘与叉乘在矩阵上的表示;

 

分类:

技术点:

相关文章:

  • 2021-12-31
  • 2021-07-18
  • 2022-12-23
  • 2021-11-09
  • 2021-09-02
  • 2021-12-27
  • 2021-11-30
  • 2022-02-18
猜你喜欢
  • 2021-10-02
  • 2021-12-31
  • 2021-12-04
  • 2021-09-08
  • 2021-06-18
  • 2021-12-31
相关资源
相似解决方案