CADCAM实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
实验课程:CAD/CAM原理及应用
学生姓名:
学号:
专业班级:
年月日
目录
一、实验一二维图形复合变换编程
二、实验二三次B样条曲线生成
三、实验三CAD/CAM集成
南昌大学实验报告
学生姓名: 徐馨 学 号: 5901115192 专业班级: 机制157班 实验类型:□ 验证 □ 综合 □ 设计 □ 创新 实验日期: 实验成绩:
实验一 二维图形复合变换编程
一、实验目的:
1.掌握CAD 图形处理的原理和方法。 2.理解CAD 对图形进行复合变换的过程。 二、实验要求
在二维模式下,将三角形绕任意点旋转θ角。三角形三点的坐标、旋转点坐标和旋转角度可由用户任意输入。原图形和变换后的图形必须同时显示在显示器上。
三、实验设备 1.计算机系统
2.安装Turbo C 或其他C 语言集成开发工具 四、实验原理 1、变换原理
基本旋转矩阵是相对坐标原点的,为了满足这一要求,必须先将旋转点和需要处理的图形向原点平移,使旋转点与原点重合,然后对图形进行旋转变换。旋转变换后,再将旋转点和旋转后的图形平移到旋转点。基本变换矩阵如下:
1 0 0 0 1 0 l m 1
平移T=
cos θ sin θ 0 -sin θ cos θ 0 0 0 1
旋转T=
根据上述图形变换原理,对二维图形绕任意点(旋转点)旋转的复合变换矩阵M 为
2、编程基本要领
1)、将显卡设置为图形模式函数为 #include(graphics.h) #include(conio.h) main( )
{ int driver,mode;
driver=VGA; mode=VGAMED; initgraph(&driver,& mode,””); }
2) 画直线函数为 line(x 1,y 1, x 2,y 2) 3) 4*4界矩阵相乘函数
float py[4][4],xz[4][4];m[4][4] float xc(a,b) float a[4][4],b[4][4]; { int i , j,k;
for(i=0;i<=3;i++) for (j=0;j<=3;j++) for(k=0;k<=3;k++)
1 0 0 0 1 0
-x -y 1
M= cos θ sin θ 0 -sin θ cos θ 0 0 0 1
1 0 0 0 1 0 x y 1
m[i][j]= m[i][j]+ a[i][k]* b[k][j];
}
五、实验步骤
1、在C语言集成开发工具的编辑器中输入源程序
2、利用编译器编译源程序
3、连接生成执行文件
4、运行程序
六、实验数据及处理结果
clear
clc
a=input('');
b=input('');
c=input('');
d=input('');
e=input('');
f=input('');
g=input('');
h=input('');
p=input('');
x=[a c e a];
y=[b d f b];
q=(p/180)*3.14
plot(x,y);
hold on
axis equal
axis([-5 8 -5 8])
plot(g,h,'p')
M=[1 0 0;
0 1 0;
-g -h 1;];
R(:,1)=x;
R(:,2)=y;
R(:,3)=1%将二维坐标表示成(x,y,1)的形式
%R1=M*R
M1=[cos(q) sin(q) 0;
-sin(q) cos(q) 0;
0 0 1];
R1=M*M1;
%R1=M\R2%M的逆矩阵inv(M)*R2 M2=[1 0 0 ;
0 1 0;
g h 1;];
R2=R1*M2
R3=R*R2
m=[a g R3(1,1) ];
n=[b h R3(1,2)];
plot(m,n,'')
plot(R3(:,1),R3(:,2),'k')
南昌大学实验报告
学生姓名:徐馨学号:5901115192 专业班级:机制157班
实验类型:□验证□综合□设计□创新实验日期:实验成绩:
实验二B样条曲线的生成
一、实验目的:
1、掌握参数化曲线曲面的原理和方法。
2、理解参数化曲线曲面的基本性质,特别是B样条曲线的基本性质。
3、掌握型值点和控制顶点以及控制多边形的概念,理解控制点对曲线的控制作用。
二、实验要求
在二维模式下,用自编程序生成三次B样条曲线。四个控制顶点的坐标可由用户任意输入。三次B样条曲线和控制多边形必须同时显示在显示器上。用户改变控制点后,曲线应同时得到调整。
三、实验设备
1、计算机系统
2、安装Turbo C或其他C语言集成开发工具
四、实验原理
1、B样条曲线原理
B样条曲线是一种基函数为B样条基函数的参数曲线,三次B样条参数方程如下:
P(t)=()(3,0t J )(3,1t J )(3,2t J )(3,3t J )⎪⎪⎪⎪⎪⎭⎫ ⎝⎛3210p p p p =(t 3 t 2
t 1)⎪⎪⎪⎪⎪⎭⎫
⎝⎛----000100
3303631331⎪⎪⎪⎪⎪⎭
⎫ ⎝⎛3210p p p p 其中参数t ∈[0,1]
P 0、P 1、P 2、P 3为四个控制顶点。B 样条曲线是一种逼近曲线,曲线并不过任一个控制顶点。 2、编程基本要领
1)、将显卡设置为图形模式函数为 #include(graphics.h) #include(conio.h) main( )
{ int driver,mode;
driver=VGA; mode=VGAMED; initgraph(&driver,& mode,””); }
2) 画直线函数为 line(x 1,y 1, x 2,y 2) 3) 1*4界矩阵相乘函数 float py [4],xz[4][4];m [4] float xc(a,b) float a [4],b[4][4]; { int i , j,k;
for(i=0;i<=3;i++) for (j=0;j<=3;j++)