以下为《数字积分法插补C语言程序》的无排版文字预览,完整内容请下载
//该函数在VC++6.0下编译测试通过,可实现直线、圆弧、完整圆的数字积分法插补;并可将插补函数计算出的数//据点写入xxx.txt文件中
//若有任何疑问,欢迎邮件联系,dingjiang90@foxmail.com#include
//版权所有,侵权必究。转载时请注明来自大连理工机械***Deanjiang
#include
#include
#include
/********************************************************************/
/* 函数名: InsertPoint */
/* 功 能:控制机床各轴进给并将进给结果写入文件中 */
/* 参 数:double x, double y 插补点 单位:毫米 */
/* 说 明:与机床硬件关联,每产生一个点调用一次 */
/********************************************************************/
void InsertPoint(double xCur,double yCur)
{
extern FILE *fp;
char ch=10;
printf("xCur=%f,yCur=%f\n",xCur,yCur);
fprintf(fp,"%f,%f",xCur,yCur);
fputc(ch,fp);
}
/********************************************************************/
/* 函数名: Judge_Quadrant */
/* 功 能:判断参数坐标的所在象限并返回相应象限值 */
/* 参 数:double x mm */
/* double y mm
*/
/********************************************************************/
unsigned short Judge_Quadrant(double x, double y)
{
unsigned short nDir;
if (x>=0)
{ //象限判断
if (y>=0)
{
nDir=1;
return 1;
}
else
{
nDir=4;
return 4;
}
}
else
{
if (y>=0)
{
nDir=2;
return 2;
}
else
{
nDir=3;
return 3;
}
}
}
/********************************************************************/
/* 函数名: DDA_Line */
/* 功 能:数字积分法直线插补 */
/* 参 数:double XEnd, double YEnd 插补终点 mm */
/* int step 步长 mm 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 le=0;
}
}
}
FILE *fp;
int main()
{
char fn[10];
printf("please input filename:\n");
scanf("%s",fn);
if((fp=fopen(fn,"w"))==NULL)
{
printf("can't open file\n");
exit(0);
}
DDA_Circle(4,1,50,0,40,-30,50,1);//输入要插补的圆弧的参数
// DDA_Line(4,1,50,-20);//输入要插补的圆弧的参数
fclose(fp);
return 0;
}
[文章尾部最后300字内容到此结束,中间部分内容请查看底下的图片预览]
以上为《数字积分法插补C语言程序》的无排版文字预览,完整内容请下载
数字积分法插补C语言程序由用户“hmd520”分享发布,转载请注明出处