- 19
- 0
- 约5.24万字
- 约 6页
- 2017-08-19 发布于河南
- 举报
XY工作台四个象限直线插补程序
求助四个象限的直线插补程序
2011-5-16 21:55
最佳答案
#include stdio.h
#include graphics.h /* -- included for putpixel() */
#include stdlib.h /* -- included for abs() */
void cb_line(int x1, int y1, int x2, int y2)
{
int dx, dy, n, k, i, f;
int x, y;
dx = abs(x2-x1);
dy = abs(y2-y1);
n = dx + dy;
if (x2 = x1) {
k = y2 = y1 ? 1: 4;
x = x1;
y = y1;
} else {
k = y2 = y1 ? 2: 3;
x = x2;
y = y2;
}
putpixel(x, y, 1);
for (i = 0, f = 0; i n; i++)
if (f = 0)
switch (k) {
case 1:
putpixel(x++, y, 1);
f -= dy;
break;
case 2:
putpixel(x, y++, 1);
f -= dx;
break;
case 3:
putpixel(x--, y, 1);
f -= dy;
break;
case 4:
putpixel(x, y--, 1);
f -= dx;
break;
}
else
switch (k) {
case 1:
putpixel(x, y++, 1);
f += dx;
break;
case 2:
putpixel(x--, y, 1);
f += dy;
break;
case 3:
putpixel(x, y--, 1);
f += dx;
break;
case 4:
putpixel(x++, y, 1);
f += dy;
break;
}
}
int main()
{
cb_line(0,0,15,20); /* --- you forgot ; here */
return 0; /* better return something */
}
语言直线插补程序,高手请进采纳后追加20分
2010-11-8 22:39
提问者:HYPERLINK /?businessaid=6un=1004459133???#21004459133夜曲 |悬赏分:5|浏览次数:725次
我用c语言写了一个直线插补程序,用来模拟数控机床的直线插补运动,但是在c-free软件中总是无法运行,提示头文件错误,那位高手帮忙解决一下,(在我的基础上修改)请尽量详细说明,指导我把这个问题解决就算被采纳。具体程序如下:
#include stdio.h
#include graphics.h
#include conio.h
void main()
{float x1,y1,x2,y2,n1,n2,xe,ye,f,n;
printf(\n请输入直线的第一个点\n);
scanf(%f,%f,x1,y1
原创力文档

文档评论(0)