美文网首页
OpenGL六-3D数学(向量与3D坐标系)

OpenGL六-3D数学(向量与3D坐标系)

作者: AlanGe | 来源:发表于2020-06-28 14:21 被阅读0次

    2D笛卡尔坐标系原则

    1、每个2D迪卡尔坐标系都有一个特殊的点,称作原点(0,0);

    2、笛卡尔坐标轴是无限延伸的

    3、无论笛卡尔坐标如果朝向,X轴朝右为正,朝左为负;Y轴朝上为正, 朝下为负


    3D笛卡尔坐标系


    3D笛卡尔坐标系


    左手坐标系 与 右手坐标系

    image.png

    摄像机坐标系

    image.png

    在3D图形学中,常用的坐标系: * 世界坐标系

    • 物体坐标系

    • 摄像机坐标系

    • 惯性坐标系

    世界坐标、惯性坐标、物体坐标

    image.png

    练习: 1.下面情节,使用什么坐标比较合适?(物体\惯性\摄像机\世界坐标系)

    • 计算机在我的前面还后面? —物体

    • 书在我的西边\北北边 —世界坐标系,惯性坐标系

    • 怎样从一个房间移动到另外有一个房间 .世界坐标系(寻路型质疑一般都是世界坐标系)

    • 你能看见我的计算机吗? 摄像坐标系

    向量的记法

    列向量


    通常使用下标法来引⽤向量的某个分量

    ⽐如,a1 = 1; a2 = 2; a3 = 3

    横向量


    在课程中,针对的是2D\3D\4D向量,所以不用下标法

    2D向量:x y

    3D向量:x y z

    4D向量:x y z w

    向量: 速度和位移

    标量:速率和长度

    几何意义:

    向量变负,就会得到一个和原向量⼤小相等,⽅向相反的向量

    向量大小计算公式


    2D、3D向量大⼩的计算公式


    练习



    image.png

    几何意义: 对于2D中任意向量V,能构成一个以V为斜边的直角三⻆形

    标量与向量的乘法

    应用到3D 向量


    几何意义:
    通过向量与标量相乘,可以获得一个新的向量.与原向量平行,长度不同或方向相反

    注意:
    标量 与向量不能做相加!
    标量 与向量的乘法 满足交换律

    标量与向量的除法


    练习:标量与向量的乘除法


    image.png

    注意:
    标量 与 向量相乘时,不需要写乘号.将2个量挨着写即可表示相乘.(常将标量量写做左边)
    负向量能被认为是乘法的特殊情况,乘标量-1
    标量不能除以向量,并且向量不能除以另外一个向量

    几何意义:
    向量乘以标量K的效果以因⼦子[k]缩放向量的⻓度.

    标准化向量
    只关⼼向量的方向,不关⼼其⼤小 —单位向量


    练习 标准化2D向量 [ 12,-5 ]


    零向量是不能被标准的,数学上是不允许的,因为将导致除0.⼏何上也没有意义。因为零向量没有方向

    向量加法


    向量减法


    练习



    求 a+b , a-b , b+c-a

    答案




    思考
    1、向量能不能与标量相加减?
    2、向量能不能与维度不同的向量相加减?
    3、向量加减法都适⽤用于标量加减法规则,比如交换律律?

    注意:
    1.向量不能 标量或维度不同的向量相加减
    2.与标量加法一样,满足交换律,但是减法不满足交换律
    永远只有 a + b = b + a 没有a - b = b-a;

    几何意义:
    向量a ,b相加几何解释,平移向量

    距离公式


    练习
    a = [ 5 0 ] , b = [ -1 8 ] ,求ab向量之间的距离

    答案


    向量点乘 内积
    注意:向量点乘中的点,不能省略


    应⽤到2D、3D 中: a•b = b•a
    向量与标量点乘,最终结果是向量
    向量与向量点乘,最终结果是标量


    练习

    1、求 2D 向量量[ 4 6 ] • [ -3 7 ]的乘积
    2、求3D 矩阵


    答案



    几何意义:
    一般来说,点乘的结果描述2个向量的相似程度.点乘结果越大,2个向量越相近

    点乘几何意义



    a • b = ||a|| ||b|| cos(q)

    3D中,两向量的夹⻆是在包含两向量的平面中定义的


    用点乘计算2个向量之间的夹角q,如果a,b都是单位向量

    q = arccos ( a • b )


    根据向量v 和向量量 n 求向量V2?


    根据向量V2 求向量V1?


    向量的叉乘 叉积


    练习

    1、求3D 矩阵叉乘



    答案


    注意:
    向量叉乘 则得到一个向量并且不满⾜足叫交换律,也不满足结合律
    叉乘 必须把中间的*号写出来,不能省略

    叉乘 与点乘一起时,叉乘优先计算. a . b * c = a .(b * c)

    向量的叉乘几何意义

    向量a,b在一个平面中。向量a * b 指向该平面的正上方,垂直于a 和b a * b的长度等于向量的大⼩小与向量夹角的sin值的积,如下:

    || a * b || = ||a|| ||b|| sin∂


    课后作业

    A 热身作业区

    1.计算如下向量表达式:



    2.计算如下向量之间的距离:



    3.计算如下向量表达式:

    4.计算向量[1,2]和[-6,3]的夹⻆角

    课后作业

    B 兴趣区

    5.给定2个向量

    , 请将V 分解为平行和垂直于n的分量。(n 为单位向量)

    6.某⼈正在登机,航班规定乘客随身携带物品不能超过⼆尺长、二尺宽或二尺高。此人有物品,3尺长。 他能把这物品带上⻜飞机,为么?他能携带的物品最⻓为多长?

    答案

    A 热身作业区答案

    1.计算如下向量表达式:


    2.计算如下向量之间的距离:


    3.计算如下向量表达式:


    image.png

    4.计算向量[1,2]和[-6,3]的夹角


    B 兴趣区

    5.给定2个向量

    请将V 分解为平行和垂直于n的分量。(n 为单位向量)


    6.某人正在登机,航班规定乘客随身携带物品不能超过二尺长、二尺宽或二尺高。此人有物品,3尺长。

    他能把这物品带上⻜飞机,为么?他能携带的物品最⻓为多长?

    这个男⼈人可以登机,他将物品斜在一个立方体形状的盒⼦子,是2英尺长,2英尺高,和2ft宽。 他能携带的最长物品的⻓度是大约41.5英⼨


    书:22-3D数学基础:图形与游戏开发

    相关文章

      网友评论

          本文标题:OpenGL六-3D数学(向量与3D坐标系)

          本文链接:https://www.haomeiwen.com/subject/bjaifktx.html