本系列文章由birdlove1987编写,转载请注明出处。

文章链接: http://blog.csdn.net/zhurui_idea/article/details/24601215

1.3D数学是一门和计算机几何相关的学科,计算几何则是研究用数值方法解决几何问题的学科。3D数学讲解如何在3D空间中精确度量位置、距离和角度。

2.在3D数学里使用最广泛的度量体系是笛卡尔坐标系统。(笛卡尔数学由法国数学家Rene Descartes发明,并以他的名字命名)

3.关于数的类型:实数包含有理数和无理数(如果用小数表示小数后面有无穷多位)。

实数数学被很多人认为是数学中最重要的领域之一,因为它是工程学的基础,人类使用实数创建了文明。

最酷的事情是有理数可数,而实数不可数。研究自然数和整数的领域称作离散数学,研究实数的领域称作连续数学

(许多物理学家们都认为:实数只是一种错觉,因为宇宙是离散和有限的。)

4.c++提供的多种数据类型来描述3D虚拟世界,包括short,int,float和double。

short是16位整数,可以代表65536个不同的数值,虽然这个数很大,但是量度现实世界还是远远不够的。

int是32位整数,可以代表4,294,967,296个不同的数值。

float是32位有理数,可以代表4,294,967,296个数值。

double是64位有理数,与float类似。

5.为虚拟世界选择度量单位的关键是选择离散的精度。有一种错误的观点认为short、int是离散的,而float、double是连续的,而实践上这些数据类型都是离散的。

计算机图形学第一准则:近似原则 如果它看上去是对的它就是对的。(感觉应该叫计算机实现第一准则—_—!)

6.2D笛卡尔坐标系有以下两点定义:

A. 每个2D笛卡尔坐标系都有一个特殊的点,称作原点(Origin(0,0)),它是坐标系的中心。

B. 每个2D笛卡尔坐标系都有两条过原点的直线向两边无限延伸,称做(axis)。两个轴相互垂直。

笛卡尔坐标系特点:

A. 2D坐标空间是无限伸展的。

B. 坐标系中的直线没有宽度,坐标系中每个点都是坐标系的一部分。

7.2D笛卡尔坐标系:水平的轴称作X轴,向右为X轴的正方向,垂直的轴称作Y轴,向上为Y轴的正方向,这是表示2D坐标系的惯用法。(注意:名词“水平”和“垂直”实际上并不准确)。

8.如下图,无论我们为X轴和Y轴选择什么方向,总能通过旋转使X轴向右为正,Y轴向上为正。所有从某种意义上讲,所有的2D坐标系都是“等价”的。

ps:这种说法对3D坐标系是不成立的。

9.关于2D笛卡尔坐标系的其他一些概念:

A. 在2D平面中,两个数(x,y)就可以定位一个点,且2D坐标的标准表示法就是(x,y)。

B. (x,y)每一个分量都是到相应的轴的有符号距离,x分量表示该点到Y轴的“有符号距离”。同样Y分量表示该点到X轴的“有符号距离”。

ps:有符号距离是指在某个方向上距离为正,而在相反的方向上距离为负。

10.3D坐标系:我们需要用3个轴来表示三维坐标系,前两个轴称作X轴和Y轴,这类似于2D平面,但并不等同于2D的轴,第3个轴称作Z轴。(3各轴互相垂直)。

11.在3D中定位一个点需要3个数:x,y和z,分别代表该点到yz,xz和xy平面的有符号距离。

12.对于任意的3D坐标系,通过旋转我们只能使用个轴和目标相同,第三个轴总是和目标方向相反。

3D坐标系之间不一定是等价的。实际上,存在两种完全不同的3D坐标系:左手坐标系和右手坐标系。如果同属于左手坐标系或右手坐标系,则可以通过旋转来重合,否则不可以。

        

左手坐标系和右手坐标系没有好坏之分,在不同的研究领域和不同的背景下,人们会选择不同的坐标系。如果运用某种技术结果不对,那么很可能是弄错了坐标系类型。

ps:以后笔记里使用的都是左手坐标系,也就是左图中的坐标系。(本人刚好是左撇子,嘿嘿—_—!)。

参考文献:(1)《3D Math Primer for Graphics and Game Development》

(2)百度百科

3D数学读书笔记——笛卡尔坐标系统相关推荐

  1. 3D数学读书笔记——向量运算及在c++上的实现

    本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/24782661 开始之前:接 ...

  2. 3D数学读书笔记——矩阵基础番外篇之线性变换

    本系列文章由birdlove1987编写.转载请注明出处. 文章链接:http://blog.csdn.net/zhurui_idea/article/details/25102425 前面有一篇文章 ...

  3. 3D数学读书笔记——3D中的方位与角位移

    本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/25339595 方位和角位移 ...

  4. 3D数学读书笔记——矩阵进阶

    本系列文章由birdlove1987编写,转载请注明出处. 文章链接:http://blog.csdn.net/zhurui_idea/article/details/25242725 最终要学习矩阵 ...

  5. 读书笔记 计算机系统--系统架构与操作系统的高度集成 第一章概叙

    大二下开始意识到计算机基础的重要性,就去图书馆随缘找了一本机械工业出版社的大部头书籍开始看, 也为了让自己养成总结和记录的习惯,把每一章的内容结构化的写成读书笔记.以后查阅方便. 这本书是集成的,计算 ...

  6. 读书笔记—用系统来工作

    用系统来工作 作者:[美]萨姆·卡彭特(Sam Carpenter) 序一 如果我有八小时去砍一棵树,我会先花六小时磨斧子. --亚伯拉罕·林肯 本质上来说,每个生意都是一个系统,通过共同运作,可靠地 ...

  7. Unity 中的 3D 数学学习笔记——认识坐标系及坐标系之间的转换

    一 :3d空间坐标系  x,y,z 轴 z轴方向确定有两种方式 左手坐标系和右手坐标系 左手坐标系:伸开左手,大拇指指向X轴正方向,食指指向Y轴正方向,其他三个手指指向Z轴正方向. 右手坐标系:伸开右 ...

  8. [读书笔记]Windows系统下的docker…

    交流群:216672921 最近刚接触了docker,有很多前辈也写了关于docker的搭建和原理的技术博客,在这里我就分享一下我在不同平台搭建docker遇到d问题以及处理方法,在做一切准备工作之前 ...

  9. 程序员的数学读书笔记(全)

    https://www.jianshu.com/p/28a8e58f37aa 第1章 0的故事 计数法分为按位计数法和罗马计数法 按位计数法常用的有2进制.8进制.10进制.16进制等几种. 理论上多 ...

最新文章

  1. Poj 2887-Big String Splay
  2. c++ 多线程 垃圾回收器_JVM的垃圾回收机制 总结(垃圾收集、回收算法、垃圾回收器)...
  3. Ubuntu复制相同的目录结构(不复制文件)
  4. Matplotlib基础(part2)--图形对象
  5. C++与Java语法上的不同,互联网 面试官 如何面试
  6. php微信公众号测试号token配置失败,微信公众号Token配置失败解决办法
  7. 计算机关键性检测的部件是,试论计算机硬件关键技术的若干问题分析
  8. VIM使用系列:quickfix功能
  9. 看博客学学Android(二十一)
  10. wpf之访问当前程序下的图片
  11. CentOS清除用户登录记录和命令历史方法
  12. Benefits of 3D CAD Modeling for Today’s Mechanical Engineer
  13. linux源代码安装apr,linux APR安装 APR-UTIL 安装 源码安装
  14. 手机话费充值 java实例_手机话费充值接口调用示例
  15. access IIf函数
  16. 妙用switch 计算几天是 一年的第几天
  17. matlab由图像得到复振幅程序,基于Matlab的空间滤波实验的计算机仿真
  18. vscode下载安装和配置使用
  19. python实现强智科技教务系统抢课(两种方法)
  20. GitHub管理代码

热门文章

  1. Java程序员11面阿里,错失offer,期间还面了EMC+网易+美团......
  2. [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配
  3. 诺顿等效电路 用计算机,r t norton equivalent circuits (诺顿等效电路).ppt
  4. 5秒钟用google earth engine(GEE)填补Landsat7条带问题
  5. BAT、网易、蘑菇街面试题整理
  6. Rosalind Java| Counting DNA Nucleotides
  7. FX5U和je-C伺服通讯案例和学习资料
  8. UBLOX芯片 M8T几个指令总结
  9. Ublox-F9P USB接口
  10. 飞飞cms添加广告html,飞飞影视cms-飞飞cms免费影视站程序