Избегайте наложения форм - PullRequest
0 голосов
/ 13 июля 2020

Я новичок в MATLAB, я работаю над программированием, четыре фигуры на одних и тех же плоскостях и перемещаются случайным образом, но они не могут касаться друг друга. Я не мог понять, как заставить фигуры перемещаться случайным образом, не касаясь друг друга, я публикую свои коды и ищу предложение.

%ploting a Rectangle
xrec=[-2 3 3 -2 -2] ;
yrex=[-4 -4 0 0 -4];
figure
plot(xrex,yrex).  
%ploting a triangle
close all
xtri=[0 2 0 0 0];
ytri=[1 1 5 1 5];
figure
plot(xtri, ytri)
%ploting a square
close all
xsq=[-2 2 2 -2 -2];
ysq=[-2 -2 2 2 -2];
Figure
plot(xsq,ysq)
%plotting a circle
close all
theta=linspace(0,2*pi);
r=1
xcir=r*cos(theta);
ycir=r*sin(theta);
plot(xcir,ycir)
%put four shapes in top right, top left, bottom right, bottom left.
close all
d=5;
Figure
plot(xcir+d,ycir+d)
hold on
plot(xsq-d, ysq+d)
Plot(xrec-d, yrec-d)
Plot(xtri+d, ytri-d)
% animation
close all
for i= 25
plot(xRec-d+(-1+2*rand(1))/(d),yRec+d+(-1+2*rand(1))/d,'r','LineWidth',2);
hold on
plot(xTri+d+(-1+2*rand(1))/(d),yTri+d+(-1+2*rand(1))/d,'r','LineWidth',2);
plot(xSq-d+(-1+2*rand(1))/(d),ySq-d+(-1+2*rand(1))/d,'r','LineWidth',2);
plot(xCir+d+(-1+2*rand(1))/(d),yCir-d+(-1+2*rand(1))/d,'r','LineWidth',2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...