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 Comments

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.
yes the 100 points should on the 100 should be 1 that would do.
But that is what I gave you below.

Sign in to comment.

 Accepted Answer

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 Comments

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

Sign in to comment.

More Answers (0)

Categories

Find more on Interpolating Gridded Data in Help Center and File Exchange

Products

Release

R2020b

Asked:

on 30 Oct 2020

Commented:

on 30 Oct 2020

Community Treasure Hunt

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

Start Hunting!