[3d笔记-1]基本几何---个人理解笔记
2007-10-24 23:17
281 查看
关于3x4(实际的4x4)矩阵的个人解说:
矩阵如下:
n11 n12 n13 n14
n21 n22 n23 n24
n31 n32 n33 n34
u v w j
其中 u v w j是本人加上去的,具体类似AS3中的2d矩阵最后以行,其实可以忽略
产生平移 旋转 倾斜或剪切 的作用阵列:
n11 n12 n13
n21 n22 n23
n31 n32 n33
坐标整列
n14
n24
n34
一般情况下可以定义3x4实际上应该当作4x4齐次阵列默认定义如下
n11 n12 n13 n14
n21 n22 n23 n24
n31 n32 n33 n34
0 0 0 1
平移时阵列表现:
1 0 0 n14
0 1 0 n24
0 0 1 n34
0 0 0 1
可以看出当对角线为1 最后一列前三行仅有值时作平移运动
缩放时阵列表现:
s1 0 0 0
0 s2 0 0
0 0 s3 0
0 0 0 1
s1对应x轴方向的缩放
s2对应y轴方向的缩放
s3对应z轴方向的缩放
一般应用于一同变换 可参考AS3 的matrix矩阵的scale方法,与之类似
旋转时阵列请看继续下一段回复
关于旋转
声明:
rad为将旋转的角度
var c :Number = Math.cos( rad );
即余弦值
var s :Number = Math.sin( rad );
即正弦值
绕x轴旋转整列状态
1 0 0 0
0 c -s 0
0 s c 0
0 0 0 1
绕y轴旋转整列状态
c 0 s 0
0 1 0 0
-s 0 c 0
0 0 0 1
绕z轴旋转整列状态
c -s 0 0
s c 0 0
0 0 1 0
0 0 0 1
由于存在3轴故
可以分为
rotationX
rotationY
rotationZ
值得注意的是在此矩阵x y z 变换时候不需要考虑y轴方向
而转换到 flash x y 时就需要定义y的方向或者考虑y的方向
因为在舞台中y是向下的
另外要考虑的是我们现在一般都采用(0,0)左上对其方式,这也需要被自定义
或者去考虑是否要让他们像我们数学环境下考虑的中心(0,0);不过好在这一点比起前面一点来说并不那么重要
矩阵如下:
n11 n12 n13 n14
n21 n22 n23 n24
n31 n32 n33 n34
u v w j
其中 u v w j是本人加上去的,具体类似AS3中的2d矩阵最后以行,其实可以忽略
产生平移 旋转 倾斜或剪切 的作用阵列:
n11 n12 n13
n21 n22 n23
n31 n32 n33
坐标整列
n14
n24
n34
一般情况下可以定义3x4实际上应该当作4x4齐次阵列默认定义如下
n11 n12 n13 n14
n21 n22 n23 n24
n31 n32 n33 n34
0 0 0 1
平移时阵列表现:
1 0 0 n14
0 1 0 n24
0 0 1 n34
0 0 0 1
可以看出当对角线为1 最后一列前三行仅有值时作平移运动
缩放时阵列表现:
s1 0 0 0
0 s2 0 0
0 0 s3 0
0 0 0 1
s1对应x轴方向的缩放
s2对应y轴方向的缩放
s3对应z轴方向的缩放
一般应用于一同变换 可参考AS3 的matrix矩阵的scale方法,与之类似
旋转时阵列请看继续下一段回复
关于旋转
声明:
rad为将旋转的角度
var c :Number = Math.cos( rad );
即余弦值
var s :Number = Math.sin( rad );
即正弦值
绕x轴旋转整列状态
1 0 0 0
0 c -s 0
0 s c 0
0 0 0 1
绕y轴旋转整列状态
c 0 s 0
0 1 0 0
-s 0 c 0
0 0 0 1
绕z轴旋转整列状态
c -s 0 0
s c 0 0
0 0 1 0
0 0 0 1
由于存在3轴故
可以分为
rotationX
rotationY
rotationZ
值得注意的是在此矩阵x y z 变换时候不需要考虑y轴方向
而转换到 flash x y 时就需要定义y的方向或者考虑y的方向
因为在舞台中y是向下的
另外要考虑的是我们现在一般都采用(0,0)左上对其方式,这也需要被自定义
或者去考虑是否要让他们像我们数学环境下考虑的中心(0,0);不过好在这一点比起前面一点来说并不那么重要
相关文章推荐
- 卷积神经网络之一:基本慨念的理解笔记
- java学习个人笔记---内存管理之垃圾回收基本算法
- 网上查了点关于windows注册表的知识,发现基本名词没理解好,于是整理这篇笔记(可能个别地方不准确,先这么理解吧),有了这个理解,再去看网上的文章,就差不读了
- Deep Learning(深度学习)学习笔记整理系列之LeNet-5卷积参数个人理解
- Java学习笔记之输入流输出流的个人理解及总结
- 设计模式理解(个人笔记)
- 计算几何学习笔记之基本运算
- 3D 学习笔记 几何混合 Geometry Blending
- 个人学习笔记---ebp,esp指针的理解
- Servlet学习笔记1-基本知识点,和servlet的理解
- 【学习笔记】对OOP思想及基本设计原则的理解
- 读老罗的安卓之旅这本书的一些笔记及个人的理解
- BI基本架构和ETL的个人理解(转)
- 编译原理学习笔记02——(对最基本文法的理解)——2014_1_12
- Log4j的基本配置和个人理解
- OpenGL学习笔记(5)3D基本概念
- 个人理解,前端默默自学的感受及一些基本学习思路
- .NET/Dot Net学习笔记---.net理解,C#.net的基本类型,字符串转义字符处理..
- Z-Stack的运行角度的理解(仅作个人学习笔记,希望别人评指正)