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

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

1.3D数学是一门和计算机几何相关的学科。计算几何则是研究用数值方法解决几何问题的学科。

3D数学解说怎样在3D空间中准确度量位置、距离和角度。

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

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

实数数学被非常多人觉得是数学中最重要的领域之中的一个,由于它是project学的基础,人类使用实数创建了文明。

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

(很多物理学家们都觉得:实数仅仅是一种错觉,由于宇宙是离散和有限的。)

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:有符号距离是指在某个方向上距离为正,而在相反的方向上距离为负。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemh1cnVpX2lkZWE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center">

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数学--学习笔记(五岁以下儿童):总结一些概念(避免遗忘!)

    下面是一些概念只是一个简单的解释,这里是它的一个简单的了解! 当人们谈论,我能理解有关. 1.正交投影: 投影.这意味着降维操作. 全部的点都被拉平至垂直的轴(2D)或平面(3D)上.这样的类型的投影 ...

  2. 在GDI+中如何实现以左下角为原点的笛卡尔坐标系

    今天写了一个求点集合的凸包的一个算法,虽然结果求解出来了,但是想将过程用GDI+绘制出来,就需要将点绘制出来,然而c#GDI+中绘图的坐标与我们常用数学中笛卡尔坐标系是不一样的,所以就要转换GDI+中 ...

  3. 3D数学读书笔记——多坐标系和向量基础

    本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/24662453 第一个知识点 ...

  4. 3D数学读书笔记——矩阵基础

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

  5. 【Unity 3D】学习笔记三十五:游戏实例——摄像机切换镜头

    摄像机切换镜头 在游戏中常常会切换摄像机来观察某一个游戏对象,能够说.在3D游戏开发中,摄像头的切换是不可或缺的. 这次我们学习总结下摄像机怎么切换镜头. 代码: private var Camera ...

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

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

  7. 【Unity 3D】学习笔记29:游戏的例子——简单的小制作地图

    无论学习.只看不练是坏科学. 因此,要总结回想这怎么生产MMROPG小地图的游戏.于MMROPG游戏类,在游戏世界中行走时导致各地,通常在屏幕的右上角,将有一个区域,以显示当前的游戏场景微缩.在游戏世 ...

  8. 3D数学读书笔记——四元数

    本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/25400659 什么是四元数 ...

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

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

随机推荐

  1. HDU-3502-Huson's Adventure Island(BFS+如压力DP)

    Problem Description A few days ago, Tom was tired of all the PC-games, so he went back to some old F ...

  2. 重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree

    原文:重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree [源码下载] 重新想象 ...

  3. [Python网络编程]gevent httpclient以及网页编码

    之前看到geventhttpclient这个项目,https://github.com/gwik/geventhttpclient,官方文档说非常快,因为响应使用了C的解析,所以我一直想把这玩意用到项 ...

  4. AC自己主动机 总结

    模板--参考六如家培训指南 /*===============================*\ 依照训练指南写的 \*===============================*/ #incl ...

  5. FileUpload类别FileUpload1.FileName和FileUpload1.PostedFile.FileName差异

    FileUpload1.FileName 用来获取client上使用 FileUpload 控件上载的文件的名称.此属性返回的文件名称不包括此文件在client上的路径. FileUpload1.Po ...

  6. WPF动态加载3D 放大-旋转-平移

    原文:WPF动态加载3D 放大-旋转-平移 WavefrontObjLoader.cs 第二步:ModelVisual3DWithName.cs public class ModelVisual3DW ...

  7. Android应用-包装脚本批量方法

    1. 设定ant周边环境 加入用户变量: 变量名:ANDROID_SDK_ROOT 变量值:D:\Android Develop\adt-bundle-windows-x86_64-20140321\ ...

  8. Tian Ji -- The Horse Racin

    Tian Ji -- The Horse Racin Problem Description Here is a famous story in Chinese history. "That ...

  9. Codeforces Round #223 (Div. 2)--A. Sereja and Dima

    Sereja and Dima time limit per test 1 second memory limit per test 256 megabytes input standard inpu ...

  10. WIZnet通过启动在线培训活动:计算机网络TCP/IP协议而事实上,现在的方法

    为了给大家营造更好的学习环境.WIZnet特此举办第一期培训活动,由WIZnet一线project师为你分享最最前沿和有用的网络技术知识,帮你解答开发过程中的疑问.欢迎前来交流.名额有限(20名满), ...