重学线性代数
朱维刚
前阿里云资深技术专家
9100 人已学习
新⼈⾸单¥59
登录后,你可以任选2讲全文学习
课程目录
已完结/共 19 讲
开篇词 (1讲)
重学线性代数
15
15
1.0x
00:00/00:00
登录|注册

12 | 如何通过矩阵转换让3D图形显示到二维屏幕上?

你好,我是朱维刚。欢迎你继续跟我学习线性代数,今天我要讲的内容是“如何通过矩阵转换让 3D 图形显示到二维屏幕上”。
在第八篇的线性映射中,我从二维直角坐标系的角度,讲解了线性映射和变换矩阵。其中,我特别讲到了,二维平面图形图像处理中的线性变换,比如物体的拉伸和旋转。在第九篇的仿射空间中,更是提到了 3D 的平移矩阵、缩放矩阵和旋转矩阵。
而这一篇则有些不一样,我会从更实践的角度,让你了解到二维平面和三维空间的变换,以及 3D 图形是如何显示到二维屏幕上的。矩阵在这里扮演的角色可以说是功不可没,接下来我们一起来看下矩阵到底是怎么做到的。

三维空间变换

我们都知道,计算机图形图像处理的是图片,且计算机屏幕是二维的。那你有没有想过,我们在屏幕上看到的静态和动态三维世界到底是怎么回事呢?这个就要涉及到三维到二维的投影技术了,这类技术都离不开矩阵,而且是超大规模矩阵运算。
三维空间的变换依赖于 4×4 矩阵,可能你会想,为什么不是 3×3 呢?这是因为四个关键运算中有一个无法用 3×3 矩阵来完成,其他三个运算为了统一也就都采用 4×4 矩阵了,这四个关键运算是:
平移;
缩放;
旋转;
投影。
平移就是那个无法用 3×3 矩阵来完成的特殊运算,也是看起来最简单的运算,只是每个点都加上向量 ,也就是点
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文深入介绍了如何通过矩阵转换将3D图形显示到二维屏幕上的技术原理。作者首先详细讲解了三维空间变换所依赖的4×4矩阵,包括平移、缩放、旋转和投影四个关键运算。文章还介绍了矩阵乘法的顺序对结果的影响,以及缩放在不同方向上的应用。此外,作者还讨论了二维和三维空间的旋转,以及将3D图形显示到二维屏幕上的过程,包括坐标系变换和对应的矩阵操作。整篇文章通过清晰的语言和实际案例,帮助读者了解了矩阵转换在3D图形显示中的重要作用,为读者提供了一种直观的理解方式。如果你对计算机3D图形处理感兴趣,这篇文章将为你打下坚实的数学基础。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《重学线性代数》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(3)

  • 最新
  • 精选
  • 杨宇
    “如果把正方形投影到一个平面上,你会得到一个什么形状的图形?”——说的是立方体吧?

    作者回复: 是的,可以这么认为,把3D投影到平面上,那这个3D就是立方体。

    2022-06-29
    1
  • 花雨田
    老师,不太理解如何得出 “投影到平面的投影矩阵是:I-nnT”

    作者回复: 理解投影矩阵如何推导还是有一定难度的,推荐这本书《Computer Graphics: Principles and Practice》。

    2021-05-16
    1
  • 那时刻
    1. 感谢老师的讲解,是我对于齐次坐标有了进一步理解,当时在学校初学的时候,只是了解了概念,没有深究含义,另外,参考这个文献http://www.songho.ca/math/homogeneous/homogeneous.html。更加形象些。 2. 请问老师,旋转那部分说到y 轴方向旋转的 sin 互换了,原因是什么呢? 3. 老师的课后问题,如果把正方形投影到一个平面上,你会得到一个什么形状的图形?我觉得可能是点或者线。

    作者回复: 还是老样子,推荐一篇文章“三维旋转矩阵的推导”,里面有详细的推导可以参考:https://blog.csdn.net/ningyaliuhebei/article/details/7481679 把正方形投影到一个平面上,会得到一个平行四边形或者一条线段。

    2020-08-26
    1
收起评论
显示
设置
留言
3
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部