江苏大学计算机图形学第三次实验报告二维图形变换汇编Word文件下载.docx
- 文档编号:15843319
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:12
- 大小:165.48KB
江苏大学计算机图形学第三次实验报告二维图形变换汇编Word文件下载.docx
《江苏大学计算机图形学第三次实验报告二维图形变换汇编Word文件下载.docx》由会员分享,可在线阅读,更多相关《江苏大学计算机图形学第三次实验报告二维图形变换汇编Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。
20%
算法设计
算法描述的正确性与可读性
编码实现
源代码正确性与可读性
30%
程序书写规范
标识符定义规范,程序书写风格规范
报告质量
报告清晰,提交准时
10%
总分
指导教师签名
二维图形变换
1.实验内容
完成对北极星图案的缩放、平移、旋转、对称等二维变换。
首先要建好图示的北极星图案的数据模型(顶点表、边表)。
另外,可重复调用“清屏”和“暂停”等函数,使整个变换过程具有动态效果。
2.实验环境
操作系统:
WindowsXP
开发工具:
visualstudio2008
3.问题分析
为了建立北极星图形,首先在二维空间中根据坐标绘制出北极星图形。
并且在此坐标系中确定好走笔顺序以便于进行连线操作。
同时需要好好的使用清屏函数以使得显示正常。
1.放大缩小变换
放大缩小变换公式为:
x’=x.a,y’=y.d;
其中a,d分别为x,y方向的放缩比例系数。
可通过不同的比例系数来显示程序运行结果。
当a=d时为等比例放缩操作。
可令变换矩阵为T。
2.对称变换
包括以x轴对称、y轴对称和原点O对称三种。
由于屏幕坐标只有第一象限,我们可以将原点平移到(500,240)处。
在第一象限画出一个三角形,然后分别求出三个对称图形。
3.旋转变换
将图形上的点(x,y)旋转θ角度,得到新的坐标(x’,y’)为:
x’=xcosθ-ysinθ,y’=xsinθ+ycosθ;
旋转矩阵T为
4.平移变换
4.算法设计
5.源代码
//北极星
voidhzbjx(CDC*pDC,longx[18],longy[18])
{
CPennewPen1,*oldPen;
newPen1.CreatePen(PS_SOLID,2,RGB(255,0,0));
oldPen=pDC->
SelectObject(&
newPen1);
POINTvertex1[11]={{x[1],y[1]},{x[2],y[2]},{x[3],y[3]},{x[4],y[4]},{x[5],y[5]},{x[3],y[3]},{x[1],y[1]},{x[6],y[6]},{x[3],y[3]},{x[7],y[7]},{x[5],y[5]}};
pDC->
Polyline(vertex1,11);
newPen1.DeleteObject();
newPen1.CreatePen(PS_SOLID,2,RGB(0,255,0));
POINTvertex2[5]={{x[6],y[6]},{x[8],y[8]},{x[9],y[9]},{x[3],y[3]},{x[8],y[8]}};
Polyline(vertex2,5);
POINTvertex3[5]={{x[4],y[4]},{x[10],y[10]},{x[11],y[11]},{x[3],y[3]},{x[10],y[10]}};
Polyline(vertex3,5);
newPen1.CreatePen(PS_SOLID,2,RGB(255,0,90));
POINTvertex4[11]={{x[12],y[12]},{x[13],y[13]},{x[3],y[3]},{x[9],y[9]},{x[14],y[14]},{x[15],y[15]},{x[3],y[3]},{x[11],y[11]},{x[12],y[12]},{x[3],y[3]},{x[14],y[14]}};
Polyline(vertex4,11);
newPen1.CreatePen(PS_SOLID,2,RGB(0,100,255));
POINTvertex5[5]={{x[15],y[15]},{x[16],y[16]},{x[3],y[3]},{x[16],y[16]},{x[7],y[7]}};
Polyline(vertex5,5);
POINTvertex6[5]={{x[2],y[2]},{x[17],y[17]},{x[3],y[3]},{x[17],y[17]},{x[13],y[13]}};
Polyline(vertex6,5);
SelectObject(oldPen);
Sleep(10);
}
voidCDiamondView:
:
Polaris()
{
InvalidateRgn(NULL);
UpdateWindow();
CDC*pDC=GetDC();
longx[18],y[18];
x[1]=553,y[1]=100;
x[2]=515,y[2]=251;
x[3]=553,y[3]=338;
x[4]=516,y[4]=426;
x[5]=553,y[5]=551;
x[6]=589,y[6]=253;
x[7]=591,y[7]=426;
x[8]=678,y[8]=212;
x[9]=641,y[9]=311;
x[10]=454,y[10]=438;
x[11]=478,y[11]=364;
x[12]=415,y[12]=338;
x[13]=466,y[13]=301;
x[14]=703,y[14]=338;
x[15]=640,y[15]=375;
x[16]=665,y[16]=450;
x[17]=440,y[17]=226;
hzbjx(pDC,x,y);
Sleep(500);
InvalidateRect(NULL);
longx1[18],y1[18];
//缩小
for(doublen=1;
n>
=0.5;
n-=0.01)
{
for(inti=1;
i<
18;
i++)
{
x1[i]=Round(x[i]*n);
y1[i]=Round(y[i]*n);
}
hzbjx(pDC,x1,y1);
Sleep(10);
InvalidateRect(NULL);
}
longx2[18],y2[18];
//放大
n<
=1.5;
n+=0.01)
x2[i]=Round(x1[i]*n);
y2[i]=Round(y1[i]*n);
hzbjx(pDC,x2,y2);
longx3[18],y3[18];
//沿X轴平移
for(intn=0;
=300;
n+=2)
for(intj=1;
j<
j++)
{
x3[j]=x[j]+n;
y3[j]=y[j];
}
hzbjx(pDC,x3,y3);
Sleep
(1);
longx4[18],y4[18];
//沿Y轴平移
x4[j]=x3[j];
y4[j]=y3[j]+n;
hzbjx(pDC,x4,y4);
longx5[18],y5[18];
//顺时针旋转
for(doublet=0;
t<
=PI;
t+=0.01)
for(intk=1;
k<
k++)
x5[k]=Round(x[k]*cos(t)-y[k]*sin(t)-x[3]*cos(t)+y[3]*sin(t)+x[3]);
y5[k]=Round(x[k]*sin(t)+y[k]*cos(t)-x[3]*sin(t)-y[3]*cos(t)+y[3]);
hzbjx(pDC,x5,y5);
UpdateWindow();
longx6[18],y6[18];
//逆时针旋转
可见“体验化消费”广受大学生的欢迎、喜欢,这是我们创业项目是否成功的关键,必须引起足够的注意。
for(doublet=PI;
t>
=0;
t-=0.01)
上述所示的上海经济发展的数据说明:
人们收入水平的增加,生活水平的提高,给上海的饰品业带来前所未有的发展空间,为造就了一个消费额巨大的饰品时尚市场提供了经济基础。
使大学生对DIY手工艺品的时尚性消费,新潮性消费,体验性消费成为可能。
经常光顾□偶尔会去□不会去□for(intk=1;
4、“体验化”消费x6[k]=Round(x[k]*cos(t)-y[k]*sin(t)-x[3]*cos(t)+y[3]*sin(t)+x[3]);
调研提纲:
y6[k]=Round(x[k]*sin(t)+y[k]*cos(t)-x[3]*sin(t)-y[3]*cos(t)+y[3]);
hzbjx(pDC,x6,y6);
“碧芝”隶属于加拿大的beadworks公司。
这家公司原先从事首饰加工业,自助首饰的风行也自西方,随着人工饰品的欣欣向荣,自制饰品越来越受到了人们的认同。
1996年'
碧芝自制饰品店'
在迪美购物中心开张,这里地理位置十分优越,交通四八达,由于是市中心,汇集了来自各地的游客和时尚人群,不用担心客流量问题。
迪美有300多家商铺,不包括柜台,现在这个商铺的位置还是比较合适的,位于中心地带,左边出口的自动扶梯直接通向地面,从正对着的旋转式楼拾阶而上就是人民广场中央,周边4、5条地下通道都交汇于此,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 江苏 大学计算机 图形学 第三次 实验 报告 二维 图形 变换 汇编