How can I convert 100 X Y and Z coordinates generated randomly in the form of a 100x100x100 matrix

close all
clear all
n = 100;
xm = 100;
ym = 100;
zm = 100;
x = 0;
y = 0;
z = 0;
for i=1:1:n
S(i).xd=rand(1,1)*xm;
XR(i)=S(i).xd;
S(i).yd=rand(1,1)*ym;
YR(i)=S(i).yd;
S(i).zd=rand(1,1)*zm;
ZR(i)=S(i).zd;
end
this gives me 100 random x, y and z-axis. I can plot the points but how can i group them as a 3D matrix of 100x100x100 such that matrix entries are (XR(i), YR(i), ZR(i))

4 件のコメント

I should say all the rest entries in 100x100x100 matrix should result (0,0,0) but only the 100 points should say(XR(i), YR(i), ZR(i)) so the actual coordinate values
Each index of 100x100x100 matrix can only contain a scalar value? What do you expect the output at index (XR(i), YR(i), ZR(i))? Do you want these points to be one and the rest of the points to be zero?
  1. XR(i), YR(i), and ZR(i) are 100 random coordinates each. for 100 iterations of i. so each iteration gives a 3d point.
  2. yes the 100 points should on the 100 should be 1 that would do.
Matt J
Matt J 2020 年 10 月 30 日
yes the 100 points should on the 100 should be 1 that would do.
But that is what I gave you below.

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

 採用された回答

If you mean you want a 100x100x100 binary array A with one hundred randomly located entries where A(i,jk)=1, then
A=false(100,100,100);
A( randperm(numel(A),100) )=1;
whos A
Name Size Bytes Class Attributes A 100x100x100 1000000 logical
nnz(A)
ans = 100

2 件のコメント

I need 100x100x100 array of actual coordinates please for example (24,58,19) if thats possible. I know this might feel strange but this is the case
so instead of ones at the corresponding location i wish to display the actual value of point

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCreating and Concatenating Matrices についてさらに検索

製品

リリース

R2020b

質問済み:

2020 年 10 月 30 日

コメント済み:

2020 年 10 月 30 日

Community Treasure Hunt

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

Start Hunting!

Translated by