- 博客(7)
- 收藏
- 关注
原创 三维数学基础6:旋转的表示-四元数
三维数学基础4:旋转的表示-四元数我们先来了解轴角法表示的旋转,其与四元数表述旋转的几何意义相似。轴角表示旋转一个以矢量定义的旋转轴,再加上一个标量定义的旋转角,这种表达旋转的方式称为轴角(axis-angle)表达方式。旋转轴A、角度θ\thetaθ可写成4维矢量形式:[Aθ]=[AxAyAzθ]\begin{bmatrix} A & \theta\end{bmatrix} = \begin{bmatrix} Ax & Ay & Az & \th
2021-05-24 21:54:14
938
原创 三维数学基础5:旋转的表示-欧拉角
三维数学基础5:旋转的表示-欧拉角我们已经了解到,4x4矩阵可以表示任意3维变换,包括平移、旋转和缩放。利用矩阵的乘法,可以将变换进行串接,并且将变换矩阵施加在点或矢量上。旋转还可以通过欧拉角和四元数进行表示。欧拉角(eular angle)欧拉角来描述刚体在三维欧几里得空间的取向。对于任何参考系,一个刚体的取向,是依照顺序,从这参考系,做三个欧拉角的旋转而设定的。所以,刚体的取向可以用三个基本旋转矩阵来决定。换句话说,任何关于刚体旋转的旋转矩阵是由三个基本旋转矩阵复合而成的。如下图所示,给定
2021-05-22 14:22:10
1725
原创 三维数学基础4:坐标空间、空间转换
三维数学基础4:坐标空间、空间转换通过4x4矩阵可以把变换作用于点或方向矢量上。进一步延伸到刚体,只需把物体当做无数个点,把变换施加在这些点上,即能实现将变换运用在物体上。在计算机图形学里,物体通常由三角形网格表示,每个三角形的3个顶点由点表示。在这种情况下,只需将变换矩阵施加在所有顶点上,就能把物体进行变换。一个点(位置矢量)是必须相对于某组坐标轴的,属于某个坐标空间的。下面介绍游戏世界较常用的几个坐标空间。模型空间(model space)制作3D物体模型时用到的局部空间(local spac
2021-05-22 14:15:48
1178
原创 三维数学基础3:基础变换矩阵
三维数学基础3:基础变换矩阵任何仿射变换矩阵都能由一连串表示纯平移、纯旋转、纯缩放或纯切变的4x4矩阵串接而成。以下针对点A = [AxAyAz1]\begin{bmatrix} Ax & Ay & Az & 1\end{bmatrix}[AxAyAz1]进行基础变换的演示。平移变换对点A向T矢量[TxTyTz]\begin{bmatrix} Tx & Ty & Tz\end{bmatrix}[TxTyTz]方向进行平移
2021-05-19 21:00:59
282
原创 nodejs资源服务
简单的nodejs资源服务,支持下载文件以及展示目录/*使用方法: node res_server.js 资源根目录 端口*/let http = require("http");let url = require("url");let fs = require("fs");let path = require('path');var os = require('os');const TextParam = {'Content-Type':'text/html;charse
2021-05-19 15:48:28
146
原创 三维数学基础2:矩阵、齐次坐标
三维数学基础2:矩阵、齐次坐标矩阵(matrix)是由 mxn 个标量组成的矩形数组。矩阵便于表示线性变换(transfromation),如平移(translation)、旋转(rotation)和缩放(scaling)。点和矢量都可以用行矩阵(1xn)或列矩阵(mx1)进行表示。仿射矩阵(affine matrix)若 3x3 矩阵的所有行和列矢量为单位矢量,则该矩阵称为特殊正交矩阵、各向同性矩阵、标准正交矩阵,这种矩阵表示纯旋转。变换矩阵:4x4矩阵可以表示任意3维变换,包括平移、旋转和缩
2021-05-18 22:11:59
1559
原创 三维数学基础1:坐标系、矢量
3D游戏世界是由三维物体组成的,通过记录这些物体的位置(position)、定向(orientation)、比例(scale)等信息,把这些属性变换至屏幕空间,使得物体能够被渲染在屏幕上;通过不断改变物体的这些属性来产生动画效果。笛卡尔坐标系左手:x向左,y向上,z向里右手:x向左,y向上,z向外矢量(vector)指n维空间中包含模(magnitude)和方向的量。点(point)是绝对的,矢量是相对的。模(magnitude)是一个标量,代表矢量的长度。矢量和标量的乘法:其效果为保留.
2021-05-14 14:01:56
1984
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人