精品文档
姓名:学号:班级:
用Matlab实现直线插补计算程序
clear;F=0;x=0;y=0;dx=0.5;dy=0.6;xe=-5;ye=-6;K=ye/xe;xx(1)=x;yy(1)=y; index=2;(1)while(F>=0) if(xe>0) if x=x+dx;else
x=x-dx;end y=y; F=abs(xe*y)-abs(ye*x);else
(ye>0)if y=y+dy;else y=y-dy;end
x=x; F=abs(xe*y)-abs(ye*x);end(abs(F)<=0.01)if F=0;end xx(index)=x; yy(index)=y; index=index+1;
((abs(x)+abs(y))>=(abs(xe)+abs(ye))) if;break end end(xe>0)if xxx=0:0.01:xe;else xxx=0:-0.001:xe;end yyy=K*xxx;(xe>0)if);'b'
plot(xx,yy,'g>',xxx,yyy,else
plot(xx,yy,'g-
grid on;
精品文档.
精品文档
-1-2轴-3y----0.-1.---3.--4.---2.5轴x
1
图表
所示。时,结果如图表当dx=0.5;dy=0.6;xe=-5;ye=-6;1精品文档.