已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 插补程序源代码目录插补程序源代码目录 1 1 逐点比较法插补逐点比较法插补 c c 语言程序源代码语言程序源代码 02 02 2 2 逐点比较法圆弧插补逐点比较法圆弧插补 VBVB 源程序源程序 07 07 3 3 逐点比较法直线插补逐点比较法直线插补 VBVB 源程序源程序 11 11 4 4 时间分割法直线插补参考时间分割法直线插补参考 VBVB 程序程序 13 13 5 5 时间分割法圆弧插补时间分割法圆弧插补 VBVB 源程序源程序 14 14 2 1 1 逐点比较法插补逐点比较法插补 c c 语言程序源代码语言程序源代码 include conio h include graphics h include process h define Ni circle 0 define Shun circle 1 void init graph void draw Base circle void draw cabu circle void close graph void acrroods static float x0 y0 void line cabu draw line draw line cabu void line cabu 此函数控制直线插步两次 int i init graph sleep 1 for i 0 i 2 i line 0 120 300 120 outtextxy 310 120 Z line 100 10 100 300 outtextxy 110 300 X outtextxy 90 130 O draw line if i 0 draw line cabu 6 else draw line cabu 2 gotoxy 50 5 getch cleardevice setcolor WHITE void draw line 画直线 line 100 120 600 450 textcolor YELLOW directvideo 0 gotoxy 45 5 cprintf Line from X0 Y0 Z0 gotoxy 45 6 cprintf Line to X500 Y0 Z330 gotoxy 45 7 cprintf Units Pixel gotoxy 45 8 cprintf Line now void draw line cabu int step 关键的直线插补函数 3 int Xe 600 Ye 450 float Fm Xm 100 Ym 120 setcolor RED moveto Xm Ym while Xm Xe else Ym Ym step lineto Xm Ym gotoxy 55 8 printf X 3 0f Y0 Z 3 0f Xm 100 Ym 120 delay 1100 圆插补部分的函数区 void init graph 图形系统初始化 int gdrive DETECT gmode initgraph cleardevice void acrroods 屏幕中心坐标 x0 getmaxx 2 y0 getmaxy 2 void draw Base circle 画圆及写参数 line x0 200 y0 x0 200 y0 outtextxy x0 220 y0 Z line x0 y0 180 x0 y0 180 outtextxy x0 10 y0 180 X outtextxy x0 10 y0 10 O circle x0 y0 150 textcolor YELLOW directvideo 0 gotoxy 46 2 cprintf Circle start X0 Y0 Z150 gotoxy 46 3 cprintf Circle end X0 Y0 Z150 gotoxy 46 4 cprintf Units Pixel gotoxy 46 5 cprintf Circle now void close graph 关图形系统 4 closegraph void draw cabu circle int sstep int Directory 关键的圆插补函数 int flag 0 float Fm Xm Ym Xm x0 150 Ym y0 moveto Xm Ym setcolor RED while 1 分象限 顺圆和逆圆讨论 Fm Xm x0 Xm x0 Ym y0 Ym y0 150 150 圆判断公式 if Fm 0 if Directory 逆圆判断 if Xm x0 if 语句判断象限 以下一样 else Xm Xm sstep if Xm x0 Ym Ym sstep if Xm y0 Xm Xm sstep if Xm x0 else it is Directory s else if Xm x0 if Xm x0 if Xmy0 flag 1 Ym Ym sstep if Xm x0 Xm Xm sstep else it is Fm s else if Directory if Xm x0 else Ym Ym sstep if Xm x0 Xm Xm sstep if Xm y0 Ym Ym sstep if Xm x0 else if Xm x0 if Xm x0 if Xm y0 flag 1 Xm Xm sstep if Xm x0 else Ym Ym sstep lineto Xm Ym gotoxy 58 5 printf X 3 0f Y0 Z 3 0f Ym y0 Xm x0 delay 800 void circle demo int Directory 控制圆插补两次 int i 0 sstep init graph sleep 2 acrroods for i 0 i 0 Then x 动点 x 动点 1 Line Step 0 x 步长 vbRed Else z 动点 z 动点 1 Line Step z 步长 0 vbRed End If 偏差计算 动点象限判别 If 象限标志 1 Then GoTo xx End If 单步连续判断 Loop ElseIf 顺逆标志 逆 Then Do Until x 动点 x 终点 0 And z 动点 z 终点 0 If 偏差 0 Then z 动点 z 动点 1 Line Step z 步长 0 vbRed Else x 动点 x 动点 1 Line Step 0 x 步长 vbRed End If DoEvents 偏差计算 动点象限判别 If 象限标志 1 Then GoTo xx End If Loop End If Case 2 单步连续判断 8 If 顺逆标志 顺 Then 第二象限插补 Do Until x 动点 x 终点 0 And z 动点 z 终点 0 If 偏差 0 Then z 动点 z 动点 1 Line Step z 步长 0 vbRed Else x 动点 x 动点 1 Line Step 0 x 步长 vbRed End If 偏差计算 动点象限判别 If 象限标志 2 Then GoTo xx End If Loop ElseIf 顺逆标志 逆 Then Do Until x 动点 x 终点 0 And z 动点 z 终点 0 If 偏差 0 Then x 动点 x 动点 1 Line Step 0 x 步长 vbRed Else z 动点 z 动点 1 Line Step z 步长 0 vbRed End If 偏差计算 动点象限判别 If 象限标志 2 Then GoTo xx End If Loop End If Case 3 单步连续判断 If 顺逆标志 顺 Then 第三象限插补 Do Until x 动点 x 终点 0 And z 动点 z 终点 0 If 偏差 0 Then x 动点 x 动点 1 Line Step 0 x 步长 vbRed Else z 动点 z 动点 1 Line Step z 步长 0 vbRed End If DoEvents 偏差计算 动点象限判别 9 If 象限标志 3 Then GoTo xx End If Loop ElseIf 顺逆标志 逆 Then Do Until x 动点 x 终点 0 And z 动点 z 终点 0 If 偏差 0 Then z 动点 z 动点 1 Line Step z 步长 0 vbRed Else x 动点 x 动点 1 Line Step 0 x 步长 vbRed End If 偏差计算 动点象限判别 If 象限标志 3 Then GoTo xx End If Loop End If Case 4 单步连续判断 If 顺逆标志 顺 Then 第三象限插补 Do Until x 动点 x 终点 0 And z 动点 z 终点 0 If 偏差 0 Then z 动点 z 动点 1 Line Step z 步长 0 vbRed Else x 动点 x 动点 1 Line Step 0 x 步长 vbRed End If 偏差计算 动点象限判别 If 象限标志 4 Then GoTo xx End If Loop ElseIf 顺逆标志 逆 Then Do Until x 动点 x 终点 0 And z 动点 z 终点 0 If 偏差 0 Then x 动点 x 动点 1 Line Step 0 x 步长 vbRed Else z 动点 z 动点 1 Line Step z 步长 0 vbRed 10 End If 偏差计算 动点象限判别 If 象限标志 4 Then GoTo xx End If Loop End If End Select End Sub 11 3 3 逐点比较法直线插补逐点比较法直线插补 VBVB 源程序源程序 Sub 偏差计算 偏差 Abs x 终点 z 动点 x 动点 Abs z 终点 End Sub Sub 插补 Dim c As Integer Select Case 象限标志 Case 1 第一象限插补 Do Until x 动点 z 动点 总步数 If 偏差 0 Then x 动点 x 动点 1 Line Step 0 x 步长 vbRed Else z 动点 z 动点 1 Line Step z 步长 0 vbRed End If 偏差计算 Loop Case 2 第二象限插补 c x 终点 x 终点 z 终点 z 终点 c c x 步长 x 步长 z 步长 z 步长 c Do Until x 动点 z 动点 总步数 If 偏差 0 Then x 动点 x 动点 1 Line Step x 步长 0 vbRed Else z 动点 z 动点 1 Line Step 0 z 步长 vbRed End If 偏差计算 Loop Case 3 第三象限插补 x 步长 x 步长 z 步长 z 步长 Do Until x 动点 z 动点 总步数 If 偏差 0 Then x 动点 x 动点 1 Line Step 0 x 步长 vbRed Else z 动点 z 动点 1 Line Step z 步长 0 vbRed End If 偏差计算 Loop 12 Case 4 第四象限插补 c x 终点 x 终点 z 终点 z 终点 c c x 步长 x 步长 z 步长 z 步长 c Do Until x 动点 z 动点 总步数 If 偏差 0 Then x 动点 x 动点 1 Line Step x 步长 0 vbRed Else z 动点 z 动点 1 Line Step 0 z 步长 vbRed End If 偏差计算 Loop End Select End Sub 13 4 4 时间分割法直线插补参考时间分割法直线插补参考 VBVB 程序程序 Sub 插补 Dim l K a B f1 t x 动点对起点 0 z 动点对起点 0 f1 f 10 t Ts 60000 l Sqr x 终点对起点 2 z 终点对起点 2 K f1 t l a Sqr x 动点对起点 x 终点对起点 2 z 动点对起点 z 终点对起点 2 x 步长 K x 终点对起点 z 步长 K z 终点对起点 B Sqr z 步长 2 x 步长 2 Do Until a B 2 x 动点对起点 x 动点对起点 x 步长 z 动点对起点 z 动点对起点 z 步长 a Sqr x 动点对起点 x 终点对起点 2 z 动点对起点 z 终点对起点 2 Line Step z 步长 系数 x 步长 系数 vbRed x 动点对原点 x 动点对起点 x 起点对原点 y 动点对原点 y 动点对起点 y 起点对原点 z 动点对原点 z 动点对起点 z 起点对原点 Loop End Sub 14 5 5 时间分割法圆弧插补时间分割法圆弧插补 VBVB 源程序源程序 圆弧 切线法 Sub 插补 Dim 区间符号 As Integer Dim x y z As Double Dim K Dim 径向误差 R 动 As Double 顺逆符号判别 读数据 If R 0 001 Then Else Ts Ts 60000 步长 f Ts K 步长 R x 动点对圆心 x 圆心对起点 系数 z 动点对圆心 z 圆心对起点 系数 End If x x 动点对圆心 x 终点对圆心 2 z 动点对圆心 z 终点对圆心 2 0 5 y 3 步长 系数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 采购经理个人年终总结9篇
- 建筑节能工程施工质量验收规程
- 2025年农产品加工合作协议(初加工�深加工)
- 2025年农产品电商配送合同协议
- 家的味道介绍
- 旅游业新篇章
- 2024年建筑工地安全生产知识竞赛试题(附答案)
- 管理学基础试题及答案
- 学校食堂和外购学生集中用餐食品安全管理规定
- 2025年无损检测资格证考试(特种设备复合材料焊缝无损检测)试卷及答案
- 学校暗访活动方案
- 2025药物警戒培训
- 中国戏曲妆课件
- (项目管理)建设项目后评价报告书
- 导管室设备管理制度
- 社区警务介绍课件
- 2025年高考语文全国一卷试题真题及答案详解(精校打印)
- 香港劳工雇佣合同协议
- JJF 2216-2025电磁流量计在线校准规范
- 诺姆四达人才测评题库
- 飞书合作伙伴管理制度
评论
0/150
提交评论