How can I plot different quadrilateral with different range of coordinates per node?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hamed Bolandi
le 10 Juil 2019
Commenté : Hamed Bolandi
le 19 Juil 2019
I have a square with dimension of 50x50 with four nodes, each node will vary in range of (-10,10) which means each corner of the square has 3 nodes along x axis (Fig below)
I want to connect each node per corner to nodes in other corners in order to make different quadrilateral with different shape. For this special case It would be 3^4=81 different shapes and I need to plot them as subplot (8,8,n), I have written intial part of the code but I dont know how to connect all coressponding nodes to each other to make 64 different quadrilateral. Could you please tell me how to do this? Thanks
clc;
clear;
close all;
x = [-25; 25; 25; -25];
y = [-25; -25; 25; 25];
for i=1:4
for j=-10:10:10
x(i,:)=x(i,:)+j;
Y(:,:)=y;
subplot(2,2,i);
plot(x,y,'.');
xlim([-50 50])
ylim([-50 50])
k = boundary(x,y);
hold on;
plot(x(k),y(k));
end
end
0 commentaires
Réponse acceptée
darova
le 18 Juil 2019
Look at my soultion
clc,clear
x = [-1 1 1 -1]*25;
y = [-1 -1 1 1]*25;
plot(x,y,'or'); % plot original nodes
axis([-1 1 -1 1]*40) % axes boundaries
hold on
k = 0;
for i = 1:4
for j = -10:10:10
x1 = x; % create a copy of "x"
x1(i) = x1(i) + j; % modify current node
% k = k + 1;
% subplot(4,3,k)
h = plot([x1 x1(1)],[y y(1)],'.-b');
pause(1)
delete(h);
end
end
hold off
Do you like it?
4 commentaires
darova
le 19 Juil 2019
You can use for loop to create c vector
c(1).x=M(1,1);
c(1).y=M(1,2);
Plus de réponses (1)
Voir également
Catégories
En savoir plus sur Axis Labels dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!