Hi,
I arranged the x-y space in hexagonal format as a layer. How can I add another similar layer on top with a distance in the z-direction?
I appreciate your help.
Thanks a lot,

 Accepted Answer

Matt J
Matt J on 17 Oct 2023
Edited: Matt J on 17 Oct 2023
V=nsidedpoly(6).Vertices;
[X,Z]=ndgrid(V(:,1),0:3);
[Y,~]=ndgrid(V(:,2),0:3);
scatter3(X(:),Y(:),Z(:)); view(-60,70)
xlabel X; ylabel Y; zlabel Z

7 Comments

S. Hannan
S. Hannan on 18 Oct 2023
Edited: S. Hannan on 18 Oct 2023
I arranged the x-y system with the code bellow:
m = 6;
n = 7;
[x,y] = meshgrid(0:m, 0:n);
X = (3*x - mod(x+y,2)) / 2;
X=X+0.5;
X=X(4:8,1:4);
Y = (sqrt(3)/2)*y;
Y=Y(4:8,1:4);
Y=Y-Y(1,1);
plot(X,Y,'or');
As you can see, it is shown in a 2D space. Now, I want to show it in a 3D space with various z values (z is constant for each layer) using this code:
m = 6;
n = 7;
[x,y,z] = meshgrid(0:m, 0:n, 0:1);
x = (3*x - mod(x+y,2)) / 2;
x = x+0.5;
x = x(4:8,1:4,:);
y = (sqrt(3)/2)*y;
y=y(4:8,1:4,:);
y=y-y(1,1);
z=z(4:8,1:4,:);
What is the expected output?
Showing a multilayer system.
It would help to have a visual example of the expected output.
From what I understood of the provided description -
m = 6;
n = 7;
[x,y] = meshgrid(0:m, 0:n);
X = (3*x - mod(x+y,2)) / 2;
X=X+0.5;
X=X(4:8,1:4);
Y = (sqrt(3)/2)*y;
Y=Y(4:8,1:4);
Y=Y-Y(1,1);
X = X(:);
Y = Y(:);
z_values = [0 0.5 1];
figure
for k=z_values
plot3(X,Y,k*ones(size(X)),'o','Color', rand(1,3))
hold on
end
%end
hold off
Do you want to join the dots in each 2D layer?
Thanks a lot.
No, I don't need to connect them.
Now, I want to show it in a 3D space with various z values (z is constant for each layer) using this code:
I don't know what you think this changes about my answer. Isn't this what you want?
m = 6;
n = 7;
[x,y] = meshgrid(0:m, 0:n);
X = (3*x - mod(x+y,2)) / 2;
X=X+0.5;
X=X(4:8,1:4);
Y = (sqrt(3)/2)*y;
Y=Y(4:8,1:4);
Y=Y-Y(1,1);
V=[X(:),Y(:)];
[X,Z]=ndgrid(V(:,1),0:3);
[Y,~]=ndgrid(V(:,2),0:3);
scatter3(X(:),Y(:),Z(:)); view(-70,83)
xlabel X; ylabel Y; zlabel Z
Thanks a lot.
Yes. this is the desired structure.

Sign in to comment.

More Answers (0)

Asked:

on 17 Oct 2023

Commented:

on 19 Oct 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!