3D数学学习笔记——笛卡尔坐标系
本系列文章由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数学学习笔记——笛卡尔坐标系的更多相关文章
- 3D数学--学习笔记(五岁以下儿童):总结一些概念(避免遗忘!)
下面是一些概念只是一个简单的解释,这里是它的一个简单的了解! 当人们谈论,我能理解有关. 1.正交投影: 投影.这意味着降维操作. 全部的点都被拉平至垂直的轴(2D)或平面(3D)上.这样的类型的投影 ...
- 在GDI+中如何实现以左下角为原点的笛卡尔坐标系
今天写了一个求点集合的凸包的一个算法,虽然结果求解出来了,但是想将过程用GDI+绘制出来,就需要将点绘制出来,然而c#GDI+中绘图的坐标与我们常用数学中笛卡尔坐标系是不一样的,所以就要转换GDI+中 ...
- 3D数学读书笔记——多坐标系和向量基础
本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/24662453 第一个知识点 ...
- 3D数学读书笔记——矩阵基础
本系列文章由birdlove1987编写,转载请注明出处. 文章链接:http://blog.csdn.net/zhurui_idea/article/details/24975031 矩 ...
- 【Unity 3D】学习笔记三十五:游戏实例——摄像机切换镜头
摄像机切换镜头 在游戏中常常会切换摄像机来观察某一个游戏对象,能够说.在3D游戏开发中,摄像头的切换是不可或缺的. 这次我们学习总结下摄像机怎么切换镜头. 代码: private var Camera ...
- 3D数学读书笔记——矩阵基础番外篇之线性变换
本系列文章由birdlove1987编写.转载请注明出处. 文章链接:http://blog.csdn.net/zhurui_idea/article/details/25102425 前面有一篇文章 ...
- 【Unity 3D】学习笔记29:游戏的例子——简单的小制作地图
无论学习.只看不练是坏科学. 因此,要总结回想这怎么生产MMROPG小地图的游戏.于MMROPG游戏类,在游戏世界中行走时导致各地,通常在屏幕的右上角,将有一个区域,以显示当前的游戏场景微缩.在游戏世 ...
- 3D数学读书笔记——四元数
本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/25400659 什么是四元数 ...
- 3D数学读书笔记——向量运算及在c++上的实现
本系列文章由birdlove1987编写.转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/24782661 ...
随机推荐
- IOS开发-表视图LV3导航控制器
学到这里感觉有点难了,其实这篇文章再草稿箱里放了好久了~ 最近对于学习的热情下降了.这不行-抓紧学习走起! 在这一章节的学习中主要针对导航控制器及表视图来建立多视图的应用, 首先要了解一些概念-- 1 ...
- Google的Guava它Collection升华
至于Guava这是不是在这里说.一个已被提上一个非常特殊的! 这主要是为了分享Guava对于一些升华处理组.井,不多说了,直接在代码: package com.joyce.guava.bean; /* ...
- fscanf()功能具体解释
一旦文件被解析常规时间或使用正则表达式.或者是敲自己太傻代码来解析一个普通文件. 今天突然发现c该图书馆有一个现成的文件可以解析常规功能,这是fscanf()功能.哎 曾经自己做了这么多无用功.在这里 ...
- UVA11100- The Trip, 2007
option=com_onlinejudge&Itemid=8&category=512&page=show_problem&problem=2041"> ...
- AutoFac使用方法总结:Part I
注册部分 使用RegisterType进行注册 [Fact] public void can_resolve_myclass() { var builder = new ContainerBuilde ...
- DHCP Option 60 认识
原文地址: http://blog.163.com/chenqioulin_1983/blog/static/83216232010109104430251/ 首先还是看看RFC咋说的吧.DHCP ...
- html风格的滚动条
DIV辊棒的设置 (CSS)2008/09/26 03:07div 控制滚动条2008年01月06日本 星期日 01:181)隐藏滚动条<body style="overflow-x: ...
- 解决Nginx的connect() to 127.0.0.1:8080 failed (13: Permission denied) while connect
在进行Nginx+Tomcat 负载均衡的时候遇到了这个权限问题,在error.log日志中.我们能够看到例如以下: connect() to 127.0.0.1:8080 failed (13: P ...
- Java常见Exception物种
Java常见Exception物种 1.ClassNotFoundException 2.IOException 3.NoSuchFieldException 4.NoSuchMethodExcept ...
- LINQ之路(1):LINQ基础
本文将从什么是LINQ(What).为什么使用LINQ(Why)以及如何使用LINQ(How)三个方面来进行说明. 1.什么是LINQ LINQ(Language Integrated Query)是 ...