- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CADCAM基础上机试验
学 号:
课 程 设 计
题 目 CAD/CAM基础上机试验 学 院 材料科学与工程学院 专 业 材料成型及控制工程 班 级 姓 名 指导教师
2011 年 12 月 6 日
课程设计任务书
学生姓名: 专业班级:
指导教师: 工作单位:武汉理工大学材料学院
一、图形程序设计编程与调试 二、图形变换程序设计与调试 三、参数化绘图程序设计与调试 四、子图形法绘图程序设计与调试 五、实体造型 题 目:
初始条件:图形几何形状尺寸信息
要求完成的主要任务:
一、绘制如图1所示的图案
二、用线性表的形式存储如图4所示结构的几何尺寸信息,要求能实现三视图的绘制。(不要求进行消隐操作)
三、利用参数法绘图绘制如图5所示的螺栓图形.
四、.利用子图形法绘制如图6所示的的阶梯轴(轴的尺寸可自行确定)
五、任选一款CAD造型软件,实现图7-10种任一图形的三维造型。
时间安排:
时间 完成任务
2011年11月29日 图形程序设计编程与调试
2011年11月30日 图形变换程序设计与调试
2011年12月2日 参数化绘图程序设计与调试
2011年12月4日 子图形法绘图程序设计与调试
2011年12月5日 完成实体造型
2011年12月6日 完成课程设计报告
2011年12月7日 进行答辩
指导教师签名: 年 月 日
系主任(或责任教师)签名: 年 月 日
实验一 图形程序设计编程与调试
1、问题描述:绘制如图一所示的图案
图1.1所示的图案外貌看似很复杂,但它是由基本图形(正方形)经过变换而构成的。
2、图形分析
从图1所示的图案中可以分析出:它是由16个相似的方块拼接而成;每一个方块是一个由正方形形成的螺旋图案,而每个相邻方块的螺旋方向相反。假设逆时针旋转为正,顺时针旋转为负(反),则图案中螺旋方块的正、反拼接结构如图2所示。
组成整个图案的每个方块,是由正方形边旋转和缩小形成,且经过旋转和缩小的正方形的四个顶点刚好在前一个正方形的四条边上,见图3所示。
下面讨论两个相邻正方形之间的几何关系:
设两个正方形的外接圆半径分别为R1和R2,边长为al和a2,旋转角度为θ。则两个正方形之间的缩小系数为: f = a2/a1
经过旋转和缩小后的正方形2的四个顶点刚好位于正方形1的四条边上,所以,这个缩小系数和转角θ紧密相关。从图3中可看出,在直角三角形PQS中:
QS = a2×sinθ
PS = a2×cosθ
QS十PS = al = a2×(sinθ十cosθ)
所以: f = a2/a1 = 1 / (sinθ十cosθ)
考虑到转角θ可以取正值(逆时针转)或负值(顺时针转),但缩小系数f总为正值,所以我们在求缩小系数f时,取转角θ的绝对值。即:
f = 1/ (sin∣θ∣十cos∣θ∣)
求得了两个正方形之间的缩小系数后,则可以得到两个正方形外接圆半径之间的关系:
R2 = f·R1 且:
, 转角关系为:α2 = α1 +θ
3、程序设计
根据上面对图案的分析,我们便可以着手设计绘制图案的程序。从功能来分,构成图案的工作大致可以分三部分:
·绘制正方形方块1
·绘制第一行方块
·绘制二三四行方块
图形绘制用MATLAB画直线命令,通过三级循环实现上面说的三步,而方块的相对位置通过坐标移动即可。
4、程序代码如下:
clear,format compact
a1=input(a1=); 输入第一个正方形外接圆半径
b=input(b=); 输入下一个正方形相对前一个正方形旋转角度
n=input(n=); 输入单个方块内正方形个数
t=pi/4;i=0;k=1;f=1;
while f=4
while k=4
while i=n
s=t+b*(-1)^(k+f)*i;
a=a1/((sin(abs(b))+c
文档评论(0)