How to extend this code to 3 dimension to get a sphere and how to visualize it?

3 ビュー (過去 30 日間)
Trim Dim
Trim Dim 2023 年 5 月 15 日
コメント済み: Shaik 2023 年 5 月 15 日
I have a code with 2 dimension: Nx and Ny. With the following condition i can get the circle of radius 5. Now i want to extend it into 3 dimension Nx, Ny and Nz. The purpose is to get the sphere. How to extend it and which commands should i used to see the output?
Note: I am not looking into any inbuilt function to generate the sphere. Just looking for the extension of this code segment
The code is:
Nx = 64;
Ny = 64;
p = zeros(Nx,Ny);
for i=1:Nx
for j=1:Ny
if ((i-Nx/2)*(i-Nx/2)+(j-Ny/2)*(j-Ny/2) < 10)
p(i,j) = 1.0;
end
end
end

回答 (2 件)

Shaik
Shaik 2023 年 5 月 15 日
To extend the code to generate a sphere in 3D, you can introduce an additional dimension Nz and modify the condition inside the nested loops. Here's an extended version of the code:
Nx = 64;
Ny = 64;
Nz = 64;
p = zeros(Nx, Ny, Nz);
for i = 1:Nx
for j = 1:Ny
for k = 1:Nz
if ((i-Nx/2)*(i-Nx/2) + (j-Ny/2)*(j-Ny/2) + (k-Nz/2)*(k-Nz/2) < 10^2)
p(i, j, k) = 1.0;
end
end
end
end
slice(p, [], [], 1:Nz);
axis equal;
  4 件のコメント
Trim Dim
Trim Dim 2023 年 5 月 15 日
can't i get something like that to see the sphere ?
Shaik
Shaik 2023 年 5 月 15 日
It's hard to say by seeing the figure actually

サインインしてコメントする。


Trim Dim
Trim Dim 2023 年 5 月 15 日
can't i get something like that to see the sphere ?

カテゴリ

Help Center および File ExchangeSurface and Mesh Plots についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by