x = [50 50 -50 -50];y = [40 -40 -40 -40];dt = 0.04;v=0.5;t=0for i=1:4 plot(x(i),y(i),'.','MakerSize',8);hold onendepsilon = 0.1;d = 20; j = 0;while epsilon<d t=t+dt; for j=1:4 if j==4 d=sqrt((x(1)-x(j))^2+(y(1)-y(j))^2); x(j)=x(j)+v*dt*((x(1)-x(j))/d); y(j)=y(j)+v*dt*((y(1)-y(j))/d); else d=sqrt((x(j+1)-x(j))^2+(y(1)-y(j))^2); x(j)=x(j)+v*dt*((x(j+1)-x(j))/d); y(j)=y(j)+v*dt*((y(j+1)-y(j))/d); end plot(x(j),y(j),'.','MakerSize',8);hold on endend t = 0错误使用 plotLine 类中没有 MakerSize 属性。不知道哪里错了不知道哪里错了
改了之后是这样
你怎么改的....
追问就是把markersize改了
追答这是你写的程序,我运行了没问题,虽然觉得结果不一定对就是了。
x = [50 50 -50 -50];
y = [40 -40 -40 -40];
dt = 0.04;
v=0.5;
t=0;
for i=1:4
plot(x(i),y(i),'.','MarkerSize',8);
hold on
end
epsilon = 0.1;
d = 20;
j = 0;
while epsilon<d
t=t+dt;
for j=1:4
if j==4
d=sqrt((x(1)-x(j))^2+(y(1)-y(j))^2);
x(j)=x(j)+v*dt*((x(1)-x(j))/d);
y(j)=y(j)+v*dt*((y(1)-y(j))/d);
else
d=sqrt((x(j+1)-x(j))^2+(y(1)-y(j))^2);
x(j)=x(j)+v*dt*((x(j+1)-x(j))/d);
y(j)=y(j)+v*dt*((y(j+1)-y(j))/d);
end
plot(x(j),y(j),'.','MarkerSize',8);
hold on
end
end
t = 0;