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 ...
随机推荐
- POJ训练计划2418_Hardwood Species(Trie树)
解题报告 Tire树. #include <iostream> #include <cstring> #include <cstdio> #include < ...
- Eclipse+Maven创建webapp项目<二> (转)
Eclipse+Maven创建webapp项目<二> 1.开启eclipse,右键new——>other,如下图找到maven project 2.选择maven project,显 ...
- 【iOS开发-60】案例学习:多组数据的tableView设置、添加右側组索引、多层数据模型设置以及valueForKeyPath
效果: 这里的数据模型有两层:每一组汽车是一层模型,每一组里面的每一行汽车品牌也是一层模型. (1)我们先创建一个WSCars模型. 在WSCars.h中: #import <Foundatio ...
- HDU 3681 BFS&像缩进DP&二分法
N*M矩阵.从F出发点.走完全部Y点.每个人格开支1电源点,去G点,电池充满,D无法访问.最小的开始问什么时候满负荷可以去完全部Y.Y和G总共高达15一 第一BFS所有的F.Y.G之间的最短距离. 然 ...
- SQLSERVER2014的内存优化表
SQL Server 2014中的内存引擎(代号为Hekaton)将OLTP提升到了新的高度. 现在,存储引擎已整合进当前的数据库管理系统,而使用先进内存技术来支持大规模OLTP工作负载. 就算如此, ...
- windows下搭建Apache+Mysql+PHP开发环境
原文:windows下搭建Apache+Mysql+PHP开发环境 要求 必备知识 熟悉基本编程环境搭建. 运行环境 windows 7(64位); Apache2.2;MySQL Server 5. ...
- Java基金会——JUnit
JUnit 測试的重要性毋庸质疑.但怎样使測试更加准确和全面.而且独立于项目之外而且避免硬编码,JUnit给了我们一个非常好的解决方式. 能够说JUnit是为单元測试而生的,一个Java语言的单元測试 ...
- some notions about os
1. Multiprogramming system provide an environment in which the various resources (like CPU,memory,an ...
- Extjs Web Desktop申请书
今天我Web Desktop应用基本完成.多语言支持.现有asp,php,jsp版本号. 废话拍了几张照片让大家有一个直观的了解: watermark/2/text/aHR0cDovL2Jsb2cuY ...
- 关系数据库的基本概念和MySQL说明
关系数据库的基本概念 数据库: 大量的信息化解决方案的高效管理. 根据数据结构来组织.存储和管理数据的库. 数据库系统(DBS,DATABASE SYSTEM): 数据库(DB,DATABASE) + ...