《易传·系辞上传》:”易有太极,是生两仪,两仪生四象,四象生八卦。”

借用一下古代先人们的智慧引一下本文的主题-三维图形中的点线面,在三维几何中也有一句话可以和上面的话相对应:由点成线,由线成面,由面成体,由体成形。

点向量和方向向量

首先我们要明确在三维空间中表示点的点向量和表示方向的方向向量的区别,例如A(x,y,z)可以表示一个点向量,而OA(x,y,z)就表示一个方向向量。方向向量在平移过程中将保持不变。

3D空间中的直线

3维空间中有两个点P1和P2,那么通过这两个点的直线可以定义为:P(t) = (1-t)P1 + tP2,其中t可以是任意实数。P1和P2之间的线段对应于t在0到1之间的值。

射线是指只有一个端点并且在给定方向V上无限延伸的直线。射线的参数方程为:P(t) = P0+tV,其中t的值大于0。

可以看出,无论是直线还是射线,都可以由一个点加上指向而构成的。

两条直线的关系

在同一平面里的两条直线,它们的关系有两种,相交或者平行。当然重合也是包含在相交里面的。

但是在三维世界里,加入了空间的概念,所以两条直线的关系又增加了一种,那就是异面。

两条直线如下所示:

P(s) = P0+sVP

Q(t)=Q0+tVQ

其中s和t可以是任意实数。

3D空间中的平面

对于给定的3D点P0和法向量N,那么经过P0且与N垂直的平面可以定义为满足方程N.(P-P0)=0的点的集合。如下图所示:

平面方程可以表示为Ax+By+Cz+D=0 ,   其中A,B,C是法向量N的x,y,z的分量,D = -N . P0 。

平面与直线的关系

(1)直线在平面内 即直线和平面有无数个公共点。

(2)直线和平面相交 即直线和平面有且只有一个公共点(垂直也是一种相交)。

(3)直线和平面平行 即直线和平面没有公共点。

平面与平面的关系

在3维空间中平面和平面之间的关系就类似于2维空间中直线和直线的关系:

(1)两个平面相交(重合是一种特殊的相交)。

(2)两个平面平行。

java3d点线面_3D游戏与计算机图形学中的数学方法-点线面相关推荐

  1. 《3D游戏与计算机图形学中的数学方法》学习笔记 第二章

    第二章 向量 该章主要讲述向量的基本概念和性质,并且给出了性质的证明. 证明笔记这里就不给出了,毕竟向量的基本性质都是印在脑子里的东西了,要看证明的话可以翻小.初.高课本- 2.1向量性质 定理2.1 ...

  2. 数学之美--计算机图形学中的数学方法论

    我的github: https://github.com/jackyblf 我的公众号: 早期研究3D程序开发的程序员最大的情怀就是从无到有,自己实现一个游戏引擎.当时的我也是充满着这种复古情怀!! ...

  3. 数学系列:数学在计算机图形学中的应用

    宇宙的琴弦 博客园 首页 新随笔 联系 订阅 管理 随笔 - 60   文章 - 0   评论 - 0 数学系列:数学在计算机图形学中的应用 Copyright © 1900-2016, NORYES ...

  4. 《 线性代数及其应用 (原书第4版)》—— 2.7 计算机图形学中的应用

    本节书摘来自华章出版社< 线性代数及其应用 (原书第4版)>一书中的第2章,第2.7节,作者:(美)戴维C. 雷(David C. Lay)马里兰大学帕克学院 著刘深泉 张万芹 陈玉珍 包 ...

  5. 数学在计算机图形学中的应用

    数学在计算机图形学中的应用 刘利刚 中国科技大学 "学习计算机图形学需要多少的数学?"这是初学者最经常问的问题. 狭义的计算机图形学指的是传统的三维建模,绘制,动画等,而广义的计算 ...

  6. 游戏开发计算机图形学杂项知识系列:OpenGL红宝书中第一个渲染程序Triangles常见问题归总

    游戏开发计算机图形学杂项知识系列:OpenGL红宝书中第一个渲染程序Triangles常见问题归总 声明:未经作者允许,严禁商用,转载请标明出处和来源,谢谢 转载自:https://www.cnblo ...

  7. 计算机图形学中需要掌握的数学基础知识有哪些?

    计算机图形学中使用了大量数学知识,尤其是矩阵和线性代数.虽然我们倾向于认为3D图形编程是紧跟最新技术的领域之一(它在很多方面确实是),但它用到的很多技术实际上可以追溯到上百年前,其中一些甚至是由文艺复 ...

  8. 计算机图形学中的曲线问题

    文章目录 免责 前言 拉格朗日插值多项式 第一步:得到一个基函数 第二步:得到所有基函数 第三步:对所有基函数进行线性组合 举例验证 拉格朗日插值曲线绘制实践 三次埃尔米特插值多项式 第一步:得到第一 ...

  9. 计算机图形学中的四元数(Quaternions)

    计算机图形学中的四元数 计算机图形学中的四元数(Quaternions) 前言 欧拉角 欧拉角的万向节死锁(Gimbal Lock)与插值问题 四元数 参考 计算机图形学中的四元数(Quaternio ...

最新文章

  1. 深入分析ReentrantLock公平锁和非公平锁的区别 (转)
  2. cf D. Powerful array 莫队算法
  3. 《走遍中国》珍藏版(十四)
  4. 运输层的多路复用于多路分解
  5. (MATLAB中文乱码)UTF-8转GBK编码
  6. 单片机与嵌入式的关系,单片机是嵌入式的子类
  7. LNMP之PHP服务的安装(FastCGI方式)
  8. 简易检测wifi信号强度协助检测网络
  9. 怎么讲计算机屏幕录制,电脑如何录制屏幕
  10. android 评论发表情,安卓手机怎么在微信朋友圈评论发表情包?
  11. 【接口文档】微信支付现金红包未开通,公众号发红包用第三方红包代发接口
  12. 华为的全闪存存储之路
  13. 知识点四 图论:dijkstra (HDU 2544 +HDU 1874)
  14. 早该消失的埃菲尔铁塔为何存在至今?
  15. 【Java 线程池 概念+深析】简单理解
  16. 数据优化 | CnOpenData国家基金项目数据
  17. 平均置业年龄33.5岁!为啥搞数据的都往成都跑?
  18. 【半年总结】——2015.08
  19. 程序员拒绝PM小姐姐需求的 4 大理由!
  20. 计算机未安装OCR应用程序,电脑应用指南 篇四:天若OCR使用指南(扫描图片转文字)...

热门文章

  1. 使用PaddleDetection自带脚本将自制labelme数据集转为coco格式
  2. c语言中字符串比较指令,如何在C条件预处理器指令中比较字符串
  3. Golang的runtime
  4. 什么是4P-4C--4R营销理论?
  5. iPhone、iPad、Android UI常用设计尺寸
  6. Android 隐私合规API检查方案
  7. Day20.常用类:Date类、LocalTime、Math类、bigDecimal、Arrays、枚举
  8. 2020年10月中国编程语言排行榜
  9. Qt通过ODBC连接虚谷数据库,并对数据库数据进行增删查改
  10. haproxy中的Proxies段的配置