




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数控技术课程设计说明书设计题目线插补与圆弧插补程序设计机械设计以及自动化专业机械工程学院机械102班设计者青岛理工大学2013年6月20日目 录1 .设计题目12 .目录23 .直线插补流程图34 .直线插补程序45 .程序结果86 .圆弧插补流程图9107 .圆弧插补程序8 .程序结果21一.直线插补1.直线插补程序流程图2.直线插补程序设计#include "stdio.h"int i,X,Y,X0,Y0,Xe,Ye,F,N;int a302;void main()int m;int menu();void yi();void er();void san();void
2、si();void te();void shuchu();m=menu();a00=X0;a01=Y0;switch(m)case 1:yi();shuchu();break;case 2:er();shuchu();break;case 3:san();shuchu();break;case 4:si();shuchu();break;case 5:te();shuchu();break;default:printf("无法插补 n");)int menu()(int t;printf("输入起点坐标n");scanf("%d,%cT'
3、;,&X0,&Y0);printf("输入终点坐标n");scanf("%d,%d",&Xe,&Ye);if (Xe>=X0&&Ye>=Y0)t=1;else if (Xe<=X0&&Ye>=Y0)t=2;else if (Xe<=X0&&Ye<=Y0)t=3;else if (Xe>=X0&&Ye<=Y0)t=4;else if (Xe=X0&&(Ye>Y0&&Y0>
4、=0)|(Ye<Y0&&Y<=0)t=5;elset=6;return(t);)void yi()(F=0;N=Xe-X0+Ye-Y0;X=X0;Y=Y0;for(i=1;i<=N;i+) if(F>=0)X+;ai0=X;ai1=Y;F-=Ye-Y0;elseY+;ai0=X;ai1=Y;F+=Xe-X0; void er()(F=0;N=X0-Xe+Ye-Y0;X=X0;Y=Y0;for(i=1;i<=N;i+)if(F>=0) X-;ai0=X;ai1=Y;F-=Ye-Y0;elseY+;ai0=X;ai1=Y;F+=X0-Xe;voi
5、d san()F=0;N=X0-Xe+Y0-Ye;X=X0;Y=Y0;for(i=1;i<=N;i+)if(F>=0)(X-;ai0=X;ai1=Y;F-=Y0-Ye;elseY-;ai0=X;ai1=Y;F+=X0-Xe;void si()F=0;N=Xe-X0+Y0-Ye;X=X0;Y=Y0;for(i=1;i<=N;i+)if(F>=0)X+;ai0=X;ai1=Y;F-=Y0-Ye;else Y-;ai0=X;ai1=Y;F+=Xe-X0;void te()N=Ye-Y0;for(i=1;i<=N;i+)if(Ye>0)Y+;ai0=X;ai1=Y;
6、else if(Ye<0)Y-;ai0=X;ai1=Y;void shuchu()for(i=0;i<=N;i+)printf("%d ",i);printf("%d,%dn",ai0,ai1);3.程序结果例如起点(0,0 )终点(6,4 )步数坐标11,021,12,142,253,264,274,385,396,3106,4二.圆弧插补1.圆弧插补程序流程图2.圆弧插补程序#include "stdio.h"#include "math.h"int X0,Y0,X1,Y1,X2,Y2,X3,Y3,
7、X4,Y4;int i=1,r,f,s;void main()(int m;int menu();void yishun();void yini();void ershun();void erni();void sanshun();void sanni();void sishun();void sini();void shuchu();m=menu();switch(m)(case 1:yishun();break;case 2:yini();break;case 3:ershun();break;case 4:yini();break;case 5:sanshun();break;case
8、6:yini();break;case 7:sishun();break;case 8:yini();break;default:printf("无法插补 n");)int menu()int t;printf("输入原点坐标n");scanf("%d,%d",&X0,&Y0);printf("输入起点坐标n");scanf("%d,%d",&X3,&Y3);printf("输入终点坐标n");scanf("%d,%d",&
9、amp;X4,&Y4);printf("1:顺时针圆弧n");printf("2:逆时针圆弧n");scanf("%d",&s);X1=X3-X0;Y1=Y3-Y0;X2=X4-X0Y2=Y4-Y0;r=X1*X1+Y1*Y1;if (X1>=0&&Y1>0&&s=1)t=1;else if (X1>0&&Y1>=0&&s=2) t=2;else if (X1<0&&Y1>=0&&s=1)
10、 t=3;else if (X1<=0&&Y1<0&&s=2) t=4;else if (X1<=0&&Y1<0&&s=1) t=5;else if (X1<0&&Y1<=0&&s=2) t=6;else if (X1>0&&Y1<=0&&s=1) t=7;else if (X1>=0&&Y1<0&&s=2)t=8;elset=9;return(t);void yishun()
11、(do(f=X1*X1+Y1*Y1-r;if(f>=0)(Y1-;f-=2*Y1+1;i+;printf("%d ",i);printf("%d,%dn”,X1,Y1);else(X1+;f+=2*X1+1;i+;printf("%d ",i);printf("%d,%dn”,X1,Y1);)while(Y1!=0&&(X1!=X2|Y1!=Y2);if(Y1=0)(void sishun();sishun();)void yini()(do(f=X1*X1+Y1*Y1-r;if(f>=0)(X1-;f-=
12、2*X1+1;i+;printf("%d ",i);printf("%d,%dn”,X1,Y1);)else(Y1+;f+=2*Y1+1;i+;printf("%d ",i);printf("%d,%dn",X1,Y1);)while(X1!=0&&(X1!=X2|Y1!=Y2);if(X1=0)(void erni();erni();)void ershun()(do(f=X1*X1+Y1*Y1-r;if(f>=0)(X1+;f+=2*X1+1;i+;printf("%d ",i)
13、;printf("%d,%dn",X1,Y1);)else(Y1+;f+=2*Y1+1;i+;printf("%d ",i);printf("%d,%dn",X1,Y1);)while(X1!=0&&(X1!=X2|Y1!=Y2);if(X1=0)(void yishun();yishun();)void erni()(do(f=X1*X1+Y1*Y1-r;if(f>=0)(Y1-;f-=2*Y1+1;i+;printf("%d ",i);printf("%d,%dn",X
14、1,Y1);)else(X1-;f-=2*X1+1;i+;printf("%d ",i);printf("%d,%dn",X1,Y1);)while(Y1!=0&&(X1!=X2|Y1!=Y2);if(Y1=0)(void sanni();sanni();)void sanshun()(do(f=X1*X1+Y1*Y1-r;if(f>=0)(Y1+;f+=2*Y1+1;i+;printf("%d ",i);printf("%d,%dn”,X1,Y1);else(X1-;f-=2*X1+1;i+;prin
15、tf("%d ",i);printf("%d,%dn",X1,Y1);)while(Y1!=0&&(X1!=X2|Y1!=Y2);if(Y1=0)(void ershun();ershun();)void sanni()(do(f=X1*X1+Y1*Y1-r;if(f>=0)(X1+;f+=2*X1+1;i+;printf("%d ",i);printf("%d,%dn",X1,Y1);)else(Y1-;f+=2*Y1+1;i+;printf("%d ",i);print
16、f("%d,%dn",X1,Y1);)while(X1!=0&&(X1!=X2|Y1!=Y2);if(X1=0)(void sini();sini();)void sishun()(do(f=X1*X1+Y1*Y1-r;if(f>=0)(X1-;f-=2*X1+1;i+;printf("%d ",i);printf("%d,%dn",X1,Y1);)else(Y1-;f-=2*Y1+1;i+;printf("%d ",i);printf("%d,%dn",X1,Y1);)w
17、hile(X1!=0&&(X1!=X2|Y1!=Y2);if(X1=0)(void sanshun();sanshun();)void sini()(do(f=X1*X1+Y1*Y1-r;if(f>=0)(Y1+;f+=2*Y1+1;i+;printf("%d ",i);printf("%d,%dn”,X1,Y1);)else(X1+;f+=2*X1+1;i+;printf("%d ",i);printf("%d,%dn",X1,Y1);)while(Y1!=0&&(X1!=X2|Y1!=Y2);if(Y1=0)(void yini();yin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国家用装饰用木制品项目创业计划书
- 中国辣椒种植项目创业计划书
- 中国口腔护理用品项目创业计划书
- 中国计算机断层成像项目创业计划书
- 2025租房合同协议书样本
- 中国脑机接口项目创业计划书
- 中国肛门袋项目创业计划书
- 政工程建设施工合同书
- 乐清保安考试题及答案
- 德化红旗瓷厂历史风貌区保护提升工程二期可行性研究报告
- 护坡混凝土施工方案
- 订购单模板(订货单模板)
- 施工组织设计施工方案报审表
- 3D扫描与模型重建
- 县政府工作调动文件范本
- 组合数学(第二版)递推关系
- 现代企业管理理论与实务
- 《新求精德语强化教程 中级Ⅱ》(第三版)学习指南【词汇短语+单元语法+课文精解+全文翻译+练习答案】
- 中式婚礼流程及主持词
- 美国超声心动图学会推荐的成人右心功能评价指南的解读
- 慢病健康管理 高血压患者随访评估与分类干预
评论
0/150
提交评论