数码摄影与后期制作jsjht-d2

上传人:子 文档编号:56938121 上传时间:2018-10-17 格式:PPT 页数:42 大小:2.49MB
返回 下载 相关 举报
数码摄影与后期制作jsjht-d2_第1页
第1页 / 共42页
数码摄影与后期制作jsjht-d2_第2页
第2页 / 共42页
数码摄影与后期制作jsjht-d2_第3页
第3页 / 共42页
数码摄影与后期制作jsjht-d2_第4页
第4页 / 共42页
数码摄影与后期制作jsjht-d2_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《数码摄影与后期制作jsjht-d2》由会员分享,可在线阅读,更多相关《数码摄影与后期制作jsjht-d2(42页珍藏版)》请在金锄头文库上搜索。

1、,第二章 二维图形变换,一。 图形坐标矩阵1.二维取图形的拐点坐标(Xi,Yi)依次生成增加一坐标图形坐标矩阵 变成齐次坐标矩阵,x1,y1,x2,y2,x3,y3,x4,y4,第二章 二维图形变换,2.二维图形的输出图形坐标矩阵 抬笔 落笔输出绘图:12341x1,y1 x2,y2 x3,y3 x4,y4 x1,y1,x1,y1,x2,y2,x3,y3,x4,y4,3. 三维取图形的拐点坐标(Xi,Yi,Zi)依次生成增加一坐标图形坐标矩阵 变成齐次坐标矩阵,4. 三维图形的输出输出图形坐标矩阵输出图形棱边表 画线:抬笔 落笔 12,课堂练习题,1.试写出下图所示矩形的顶点坐标表 。顶点坐标

2、表,课堂练习题,2.试写出图3-28所示立体的立体顶点坐标表 ,棱边表。顶点坐标表棱边表,二图形变换 对图形进行各种变换,如平移、旋转、缩放、透视等。我们称平面 图形的变换为二维图形变换;称立体图形的变换为三维图形变换。图形变换 图形坐标矩阵变换矩阵=图形变换矩阵,三变换的两种形式变换前后坐标系不改变图形模式变换变换前后坐标系不一致坐标模式变换第二章 二维图形变换 一二维图形的矩阵表示法图形坐标矩阵y增加一坐标变成齐次坐标矩阵 x,二变换矩阵的齐次表示引入一个二维变换矩阵(齐次坐标表示) 比例,对称错切,旋转 透视变换 等基本变换全比例变换平移变换 三图形变换图形坐标矩阵变换矩阵=图形变换矩阵

3、,四基本变换 (一)恒等变换x4,y4 x3,y31,1A 图形坐标矩阵 x1,y1 x2,y2AT=B变换前后图形不改变,(二)比例变换变换矩阵 变换后的图形1)恒等变换12)图形沿x,y方向等比例放大11,3)图形沿x,y方向等比例缩小 变换矩阵 变换后的图形11 4)当ad时(1)图形沿y方向放大或缩小 1,图形沿x方向放大或缩小 变换矩阵 变换后的图形(2).压缩到Y轴上压缩到X轴上,(三)对称变换(镜像变换) 对x轴的对称变换 对y轴的对称变换 对-45线对称 对45线对称 对坐标原点对称,例:对图2-3所示的ABC进行变换见图2-3,2-4,(四)旋转变换,(五)错切变换a=b=1

4、 b,c之一为0c0沿X向错切 b0沿Y向错切 c0沿-X向错切 b0沿-Y向错切,(六)平移变换l 是X向的平移量m 是Y向的平移量D CA B,(七)二维图形的基本变换矩阵,(八)二维图形齐次变换矩阵性质除透视变换(p,q0)外,其余变换具有仿射变换的性质。即变换前后图形之间保持以下性质: 1). 从属性:变换前图形上的直线或点,变换后在图形上均有直线 或点以之对应。 2). 同素性:变换前是直线或点,变换后仍是直线或点。 3).平行性:两平行线段变换后仍保持平行。 4).定比性:变换前两线段之比等于变换后对应线段之比。p,q0时为透视变换,透视变换可将无限远点变换为有限远点, 相当于透视

5、投影中的灭点。,2018/10/17,二组合变换(即二维基本变换的级联或复杂变换)由数个基本变换组成复杂变换=基本变换的级联或组合变换 (一)绕坐标原点以外的任意点P(x0,y0)的旋转变换矩阵 (1) 将旋转中心平移到坐标原点变换矩阵为:(2) 使图形绕坐标原点旋转角变换矩阵为:,(3) 使旋转中心平移回原来P(x0,y0)的位置变换矩阵为:故绕任意点P的旋转变换的变换矩阵为:=平移,旋转,平移 上式当x=0,y=0时为对原点的旋转变换的变换矩阵,(二)对任意直线的对称变换 任意直线方程Ax+By+C=0 直线在x轴和y轴上的截距分别为CA和CB 直线与x轴的夹角为,=arctg( -A/B

6、)。 实现该变换步骤如下: (1)沿x轴方向平移CA,使对称轴通过坐标原点 其变换矩阵为: (2)绕坐标原点旋转角,使对称轴与x轴重合 其变换矩阵为:,(3) 对x轴进行对称变换,其变换矩阵为: (4) 绕坐标原点旋转角,其变换矩阵为: (5) 沿x向平移 ,使对称轴回到原点的位置,其变换矩阵为:,综上所述,对任意直线的对称变换为: =平移旋转对称旋转平移,(三). 级联顺序对图形的影响由于矩阵的乘法运算不适用交换律: 即BBA级联的顺序是不能随意颠倒的。也就是说,级联的顺序对图形一般是有影响的。 例如:平移、旋转的级联 平移量受旋转变换的影响。旋转、平移的、级联 平移量不受旋转变换的影响,对

7、先进行平移变换(设平移量为l=20,m=10),再绕坐标原点旋转90,其变换结果为:,三二维图形变换绘图程序设计 例1编写任意大小、任意位置的矩形子程序,并调用该子程序画出图2-16所示图形(矩形每次旋转角度是10)。 解:1导出绕任一点(x0,y0)旋转的变换矩阵设任意大小、任意位置的矩形参数如图2-15所示:其中D为矩形逆时针方向第一条边的边长,W为另一条边的边长,为第一条边与x方向的夹角。,(1)设任意矩形(2)将矩形绕坐标原点旋转 角(3)再将旋转后的矩形平移(x0,y0),(4). 得矩形绕任一点(x0,y0)旋转变换坐标得画矩形各顶点的坐标为:x1x0 x3x0cossinxWsi

8、ny1y0 y3y0sinWcosy2cosx2x0cos x4x0siny2y0sin y4y0Wcos,2编写画任意大小、任意位置的矩形子程序。void rect(x0,y0,d,w,af)double d,w,af,x0,y0; double bt,x2,y2,x3,y3,x4,y4;bt=0.0174533*af;x2=x0+d*cos(bt);y2=y0+d*sin(bt);x3=x2-w*sin(bt);y3=y2+w*cos(bt);x4=x0-w*sin(bt);y4=y0+w*cos(bt);moveto(x0,y0);lineto(x2,y2); lineto(x3,y3)

9、;lineto(x4,y4); lineto(x0,y0); ,编写绘制矩形旋转角度增量为旋转一周的图形程序。#include #include #include main() int i,n,mm,gd=DETECT,gm=0;double d,w,af,x0,y0,bt,x,y,r; void rect();initgraph( ,编写绘制如图217“环形”图案程序。#include #include #include main() float x0,y0,r,r1,af,bt,x1,y1;int i,n;int gd=DETECT,gm=0;initgraph(,af=360/n*0.0

10、174533;for(i=0;in;i+)bt=i*af;x1=x0+r*cos(bt);y1=y0+r*sin(bt);moveto(x1,y1);circle(x1,y1,r1);getch();closegraph();,例3编写绘制给定任意顶点坐标点集矩阵的比例、错切、旋转、平移变换的图形程序。,绘制给定任意图形的基本变换图形主程序 主程序:#include #include #include main() int i,k,j,key,ip;int gd=DETECT,gm=0;float a503,b33,c503,af;double xx,yy;void mat();printf(

11、“input number of vertex“);scanf(“%d“, ,for(i=0;i3;i+) 生成矩阵for(j=0;j3;j+)if(i=j) bij=1.0;elsebij=0.0;printf(“input keyn“);scanf(“%d“,case 2: 生成对称变换矩阵printf(“ input a , b, c, dn“); scanf(“%f,%f,%f,%f“,case 5: 生成平移变换矩阵printf(“ input l , mn“);scanf(“%f,%f“,stcolor(4); (红色)for(i=0;ik;i+) 画变换后的图形 xx=ci0;yy=ci1;if(i=0)moveto(xx,yy);else lineto(xx,yy);getch(); xx=c00;yy=c01;lineto(xx,yy); getch(); closegraph(); ,两矩阵相乘子程序void mat(a,b,c,k,m,n)int k,m,n; float a3,b3,c3; int i,j,l;for(i=0;ik;i+)for(j=0;jm;j+) cij=0.0;for(l=0;ln;l+)cij=cij+ail*blj; 作业1: 利用program2-3程序画一矩形的比例变换,对称变换,错切变换,旋转变换,平移变换图形。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号