数字积分法插补C语言程序_第1页
数字积分法插补C语言程序_第2页
数字积分法插补C语言程序_第3页
数字积分法插补C语言程序_第4页
数字积分法插补C语言程序_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、/此函数通过VC 6.0的编译测试,可以将通过能实现直线、圆弧、完全圆的数字积分法插值的插值函数计算出的数/据点写入xxx.txt文件/如果有什么问题的话,请用邮件联系我,ding江90 # include/必须追究着作权所有、侵权。 转载时,请注明来自大连理工机械工程学院丹江的东西#include#include#include不要,不要,不要,不要,不要。/*函数名称: InsertPoint */*功能:控制机床各轴的进给,将进给结果写入文件*/*参数:双x,双y插值点单位:mm*/*说明:关于机床的硬件,在生成的每个点被调用*/不要,不要,不要,不要,不要。vo

2、id插入点(双xcur,双ycur )举止外部文件* FP;char ch=10;printf(xCur=%f,yCur=%fn ,xCur,ycur );fprintf(fp, %f,%f,%f ,xCur,yCur );fputc(ch,fp )以下不要,不要,不要,不要,不要。/*函数名称: Judge_Quadrant */*功能:确定具有参数坐标的象限,返回相应象限的值*/*参数:双xmm * /*double ymm*/不要,不要,不要,不要,不要。unsignedshorjudge _ quadrant (双精度,双精度y )举止unsigned short nDir;if (x

3、=0) /象限判定if (y=0)举止nDir=1;返回1;以下else举止nDir=4;返回4;以下以下else举止if (y=0)举止nDir=2;返回2;以下else举止nDir=3;返回3;以下以下以下我要去找你,我要去找你,我要去找你。/*函数名称: DDA_Line */*功能:数字积分法直线插值*/*参数:双xend,双yend插值终点mm*/*int step步骤mm*/* unsigned short n寄存器位数*/我要去找你,我要去找你,我要去找你。void DDA _ line (无符号短,输入步骤,双结束,双结束)举止长YRes,YRes; /寄存器溢出后馀数隆盛、是

4、; /插值终点值长YCur=0,YCur=0; /当前位置int IP计数=0; /累计值int nQuadrant; /象限PK; /累加器容量int bInterpXEnable、bInterpYEnable;XRes=YRes=0;binterpxenable=binterpyenable=0;xEnd=labs(XEnd) yEnd=labs(YEnd )。q=(结束)结束(结束) /步骤;计算nQuadrant=Judge_Quadrant(XEnd,YEnd) /内插象限交换机(nquadrant )举止case 1:while (IP计数=q )举止XRes=XRes%Q;XCu

5、r=step;bInterpXEnable=1;以下PS (PS=q )举止YRes=YRes%Q;YCur=step;bInterpYEnable=1;以下if (binterpxenable=1|binterpyenable=1)举止插入点(YCur,YCur )binterpxenable=binterpyenable=0;以下IP计数;以下break;case 2:while (IP计数=q )举止XRes=XRes%Q;XCur-=step;bInterpXEnable=1;以下PS (PS=q )举止YRes=YRes%Q;YCur=step;bInterpYEnable=1;以下

6、if (binterpxenable=1|binterpyenable=1)举止插入点(YCur,YCur )binterpxenable=binterpyenable=0;以下IP计数;以下break;case 3:while (IP计数=q )举止XRes=XRes%Q;XCur-=step;bInterpXEnable=1;以下if (YRes=Q )举止YRes=YRes%Q;YCur-=step;bInterpYEnable=1;以下if (binterpxenable=1|binterpyenable=1)举止插入点(YCur,YCur )binterpxenable=binter

7、pyenable=0;以下IP计数;以下break;case 4:while (IP计数=q )举止XRes=XRes%Q;XCur=step;bInterpXEnable=1;以下if (YRes=Q )举止YRes=YRes%Q;YCur-=step;bInterpYEnable=1;以下if (binterpxenable=1|binterpyenable=1)举止插入点(YCur,YCur )binterpxenable=binterpyenable=0;以下IP计数;以下break;以下以下你是谁?你是谁?你是谁?你是谁?/*函数名称: DDA_Line */*功能:数字积分法直线插

8、值*/*参数:双xend,双yend插值终点mm*/*int step步骤mm*/* unsigned short n寄存器位数*/不要,不要,不要,不要,不要。void DDA _ circle (无短路,入站,双启动,双启动,双结束,双结束,双轨道,入站biscw )举止双yCur=YStart,yCur=YStart;长yRes=0,yRes=0;int ndir、q;int judge=1;int full_circle=0;int x启用,y启用;xable=yable=0;Q=radius; /溢出基础值,也可以是pow(2,n )插入点(yCur,yCur )if(XStart=XEndYStart=YEnd )full_circle=1; /判断是否画圆检测while (judge=1|full _ circle=1)/终点举止xRes=fabs(xCur )yRes=fabs(yCur )if(xRes=Qfabs(yCur)=radius )举止xRes=xRes%Q;yEnable=1;以下if(yRes=Qfabs(xCur)=radius )举

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论