【计算机图形学】期末复习part2:二维与三维图形变换

简介: 【计算机图形学】期末复习part2:二维与三维图形变换

4、5题共同的前置科技:齐次坐标

image.png

基本变换

1.比例变换:

image.png

2.对称变换:

image.png


3.错切变换

image.png


4.旋转变换

相对于坐标系原点旋转θ \thetaθ角。image.png

5.平移变换

image.png

级联变换

不属于五种基本变换的都属于级联变换。

示例:绕任意点旋转

image.png


代码

注:代码就只是把上面的公式敲一遍而已,来自北极星实验

//int xp = MaxX() / 2;
//int yp = MaxY() / 2;
//此处旋转中心P点为屏幕中心
//pnew为新的坐标
//p0为原坐标
for (int i = 0; i < 17; i++){
  pnew[i].x = p0[i].x * cos(theta) - p0[i].y * sin(theta) + xp - xp * cos(theta) + yp * sin(theta);
  pnew[i].y = p0[i].x * sin(theta) + p0[i].y * cos(theta) - xp * sin(theta) + yp - yp * cos(theta);
}
drawPolaris(pDC, pnew);//只改变每个顶点坐标,顶点间的拓扑关系(连接关系)不变

示例:以任意直线轴对称

image.png

代码

注:代码就只是把上面的公式敲一遍而已,来自北极星实验

double A = -2, B = 1, C = 800;
double alpha = atan(( - 1.0 * A) / (1.0 * B));
for (int i = 0; i < 17; i++) {
  pnew[i].x = p0[i].x * cos(2 * alpha) + p0[i].y * sin(2 * alpha) + (cos(2 * alpha) - 1) * C / A;
  pnew[i].y = p0[i].x * sin(2 * alpha) + p0[i].y * -cos(2 * alpha) + sin(2 * alpha) * C / A;
}
drawPolaris(pDC, p0);
drawPolaris(pDC, pnew);

5.三维图形几何变换


image.png

image.png

基本变换

比例变换

image.png

对称变换

包括对原点、对坐标轴和对坐标平面的变换。

image.png

错切变换

错切变换指三维立体沿着x,y,z三个方向错切,是画斜轴测图的基础。

image.png


旋转变换

image.png


平移变换

image.png

要注意的问题

image.png

复杂变换

image.png

image.png


目录
相关文章
|
7月前
|
算法
MATLAB | 插值算法 | 二维griddata插值法 | 附数据和出图代码 | 直接上手
MATLAB | 插值算法 | 二维griddata插值法 | 附数据和出图代码 | 直接上手
574 0
|
7月前
|
算法
MATLAB | 插值算法 | 二维interp2插值法 | 附数据和出图代码 | 直接上手
MATLAB | 插值算法 | 二维interp2插值法 | 附数据和出图代码 | 直接上手
526 0
|
人工智能 算法 计算机视觉
基于Fringe-Projection环形投影技术的人脸三维形状提取算法matlab仿真
基于Fringe-Projection环形投影技术的人脸三维形状提取算法matlab仿真
|
存储
MATLAB实战 | 不同形式的三维曲面图
通常,MATLAB中绘制三维曲面图,先要生成网格数据,再调用mesh函数和surf函数绘制三维曲面。若曲面用含两个自变量的参数方程定义,则还可以调用fmesh函数和fsurf函数绘图。若曲面用隐函数定义,则可以调用fimplicit3函数绘图。
690 0
|
机器学习/深度学习 传感器 人工智能
基于MATLAB进行荧光光谱数据处理包括三维荧光光谱图、等高线图、激发光谱图、发射光谱图
基于MATLAB进行荧光光谱数据处理包括三维荧光光谱图、等高线图、激发光谱图、发射光谱图
|
数据采集 算法 图形学
基于radon变换和CT算法的二维切片图像序列三维建模matlab仿真
基于radon变换和CT算法的二维切片图像序列三维建模matlab仿真
|
算法 图形学
【计算机图形学】实验三:二维图形变换
【计算机图形学】实验三:二维图形变换
276 0
【计算机图形学】实验三:二维图形变换
|
机器学习/深度学习 算法 图形学
【计算机图形学】实验一:二维图形绘制
【计算机图形学】实验一:二维图形绘制
245 0
【计算机图形学】实验一:二维图形绘制
|
算法 图形学
【计算机图形学】期末复习part1:直线与曲线的绘制
【计算机图形学】期末复习part1:直线与曲线的绘制
175 0
【计算机图形学】期末复习part1:直线与曲线的绘制
|
算法
各种不同几何形状布局布阵下的GDOP相对值图matlab仿真
各种不同几何形状布局布阵下的GDOP相对值图matlab仿真
268 0
各种不同几何形状布局布阵下的GDOP相对值图matlab仿真