今天记录一下一些基本的数学知识,左手坐标系和右手坐标系。这些对于搞图像开发或者游戏开发的朋友来说,应该是很基础的东西,不过对于大部分人来说还是比较陌生的知识。之所以看这方面资料主要是因为在使用Android Camera使用Matrix的过程中,发现需要一些数学理论支持才能理解。这是为了后面使用Android Camera和Matrix的基础。

1、空间直角坐标系

  下面摘录一段百科的解析,这些都是数学基础。过空间定点O作三条互相垂直的数轴,它们都以O为原点,具有相同的单位长度.这三条数轴分别称为X轴(横轴).Y轴(纵轴).Z轴(竖轴),统称为坐标轴。

  各轴之间的顺序要求符合右手法则,即以右手握住Z轴,让右手的四指从X轴的正向以90度的直角转向Y轴的正向,这时大拇指所指的方向就是Z轴的正向.这样的三个坐标轴构成的坐标系称为右手空间直角坐标系.与之相对应的是左手空间直角坐标系.一般在数学中更常用右手空间直角坐标系,在其他学科方面因应用方便而异。三条坐标轴中的任意两条都可以确定一个平面,称为坐标面.它们是:由X轴及Y轴所确定的XOY平面;由Y轴及Z轴所确定的YOZ平面;由X轴及Z轴所确定的XOZ平面.这三个相互垂直的坐标面把空间分成八个部分,每一部分称为一个卦限.位于X,Y,Z轴的正半轴的卦限称为第一卦限,从第一卦限开始,在XOY平面上方的卦限,按逆时针方向依次称为第二,三,四卦限;第一,二,三,四卦限 下方的卦限依次称为第五,六,七,八卦限。
 
 
 

2、右手坐标系

  右手坐标系在我们以前初中高中学几何的时候也经常用到。在三维坐标系中,Z轴的正轴方向是根据右手定则确定的。右手定则也决定三维空间中任一坐标轴的正旋转方向。要标注X、Y和Z轴的正轴方向,就将右手背对着屏幕放置,拇指即指向X轴的正方向。伸出食指和中指,如右图所示,食指指向Y轴的正方向,中指所指示的方向即是Z轴的正方向。要确定轴的正旋转方向,如下图所示,用右手的大拇指指向轴的正方向,弯曲手指。那么手指所指示的方向即是轴的正旋转方向。

3、左手坐标系

  伸出左手,让拇指和食指成“L”形,大拇指向右,食指向上。其余的手指指向前方。这样就建立了一个左手坐标系。拇指、食指和其余手指分别代表x,y,z轴的正方向。判断方法:在空间直角坐标系中,让左手拇指指向x轴的正方向,食指指向y轴的正方向,如果中指能指向z轴的正方向,则称这个坐标系为左手直角坐标系.反之则是右手直角坐标系。
 
 
 
4、左手坐标系和右手坐标系比较
  手坐标系和右手坐标系,左手坐标系是X轴向右,Y轴向上,Z轴向前,右手坐标系的Z轴正好相反,是指向“自己”的,在计算机中通常使用的是左手坐标系,而数学中则通常使用右手坐标系。计算机里面其实很多也有用右手坐标系,这个只是根据实际应用不同,没有说哪个比较好。
 
 
5、结语
  今天主要是讲讲这两个坐标系和区分,因为后面我会讲解有关Android Camera使用Matrix进行滑动特效变换。里面就好应用到很多坐标系的转换,所以脑袋里面要先有这方面的概念,否则有关Matrix的转换和图像操作就不好理解了。
 
 

Edited by mythou

原创博文,转载请标明出处:http://www.cnblogs.com/mythou/p/3327046.html

左手坐标系和右手坐标系 ZZ的更多相关文章

  1. cocos设置 相机矩阵和投影矩阵 源码浅析

    在cocos中,最后设置视口大小,相机矩阵,裁剪矩阵是在setProjection方法中,源码如下: void Director::setProjection(Projection projectio ...

  2. 左右手坐标系转换时R和T的具体形式分析

    本文介绍了在计算机视觉的一些应用中,左手坐标系和右手坐标系之间转换时,旋转矩阵R和平移向量T的具体表达形式有哪些变化.

  3. Unity3D游戏开发初探—2.初步了解3D模型基础

    一.什么是3D模型? 1.1 3D模型概述 简而言之,3D模型就是三维的.立体的模型,D是英文Dimensions的缩写. 3D模型也可以说是用3Ds MAX建造的立体模型,包括各种建筑.人物.植被. ...

  4. 《3D Math Primer for Graphics and Game Development》读书笔记1

    <3D Math Primer for Graphics and Game Development>读书笔记1 本文是<3D Math Primer for Graphics and ...

  5. Unity随机随学

    1.什么是渲染管道? 是指在显示器上为了显示出图像而经过的一系列必要操作.渲染管道中的步骤很多,都要将几何物体从一个坐标系中变换到另一个坐标系中去. 主要步骤有: 本地坐标->视图坐标-> ...

  6. 3D图形学常用公式

    本篇内容来自于书籍<3D图形学基础:图形与游戏开发>,个人总结 1.数学背景与历史 笛卡尔数学由著名的法国哲学家.物理学家.生物学家.数学家"勒奈·笛卡尔"发明. 1. ...

  7. Unity3D之空间转换学习笔记(三):3D数学

    3D数学基础 向量 向量可以看做具有方向和大小的一条线段. 比如:我们如果用点A减去点B,则可以得到一个向量,该向量的方向为点B面向点A的方向,而大小为两点的距离.这个方法在游戏开发中经常用到,比如我 ...

  8. 【3D研发笔记】之【数学相关】(一):坐标系

    现在开始学习3D基础相关的知识,本系列的数学相关笔记是基于阅读书籍<3D数学基础:图形与游戏开发>而来,实现代码使用AS3,项目地址是:https://github.com/hammerc ...

  9. 【我的书】Unity Shader的书 — 文件夹(2015.12.21更新)

    写在前面 感谢全部点进来看的朋友.没错.我眼下打算写一本关于Unity Shader的书. 出书的目的有以下几个: 总结我接触Unity Shader以来的历程,给其它人一个借鉴.我非常明确学Shad ...

随机推荐

  1. BZOJ3772精神污染

    参见http://blog.csdn.net/popoqqq/article/details/43122821 #include<bits/stdc++.h> using namespac ...

  2. 【LCA】BZOJ1776-[Usaco2010 Hol]cowpol 奶牛政坛

    [题目大意] 一棵n个点的树,树上每个点属于一个党派,要求每个党派的最远距离点.两点间距离为两点间边的个数. [思路] yy一下可知,最远距离点中必有一个是该党派深度最深的一个,那么我们就记下最深的点 ...

  3. [转]eclipse转idea, 快捷键设置

    原文地址: eclipse转idea, 快捷键设置   设置快捷键的途径: 打开idea的配置,找到Keymap,设置为eclipse 另外还要手动设置某些快捷键 上下移动 点击类打开 代码提示 查询 ...

  4. ueditor上传图片设置的简单实例

    0.前言:我用过ckeditor,kingeditor还是感觉ueditor最好用,功能强大,经常更新.之前因为升级了struts2到2.5的了,原本的kingeditor已经不能共存,于是找到了ud ...

  5. windows pm2 开机启动

    npm install pm2-windows-startup -g; pm2-startup install; pm2 kill; pm2 start ecosystem.config.js --o ...

  6. 使用 IntraWeb (3) - 页面切换

    新建 StandAlone Application 工程后, 再通过 File > New > Other.. > IntraWeb > New Form 添加两个窗体. 然后 ...

  7. CRC校验的实现

    本例提供的是通过查表发来实现CRC校验. CRC余式表如下: unsigned int crctab[256] ={/*CRC余式表 */ 0x0000, 0x1021, 0x2042, 0x3063 ...

  8. delphi 使用工控机控件 iThreadTimes 出现问题, 导致主程序创建页面的时候, 阻塞消息, 不能正常执行。

    delphi  使用工控机控件 iThreadTimes 出现问题, 导致主程序创建页面的时候, 阻塞消息, 不能正常执行. 使用这个控件需要小心 function Tfrm_MainIPC.Open ...

  9. 基于设备树的controller学习(2)

    作者 彭东林 pengdonglin137@163.com 平台 TQ2440 Linux-4.10.17 概述 上一篇大概介绍了一下demo-controller的结构,下面结合驱动分析.   正文 ...

  10. Delphi来实现一个IP地址输入控件

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...