MATLAB Answers

# How can I find distances between 100 points such that I have a set of distances of each point from rest of the points.

1 view (last 30 days)
Tamoor Shafique on 2 Jan 2021
Commented: Tamoor Shafique on 3 Jan 2021
Hi Everyone,
I have distributed 100 points randomly in a 100x100x100 m3 3D space. I want to find distance of each point from rest of 99 points such that I have a distance set of 4950 different values. so the distance of 1st node from resy 99 nodes and then distance of 2nd node from rest 98 nodes and so on.
I cannot change the style of the code since I have values saved in these variables.
I have following code:
Close all
Clear all
n=100;
xm=100;
ym=100;
zm=100;
x=0;
y=0;
z=0;
for i=1:1:n
for j=1:1:i
for k=1:1:j
if (i==j && j==k & k==i) % so I dont get 100x100x100 different values and only 100 values with x,y,z coordinates.
S(i).xd=(1,1)*xm; %I cannot change this
XR(i)=S(i).xd;
S(j).yd=rand(1,1)*ym;
YR(j)=S(j).yd;
S(k).zd=rand(1,1)*zm;
ZR(k)=S(k).zd;
Points=[XR;YR;ZR]
end
end
end
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Answers (1)

Ameer Hamza on 2 Jan 2021
Just use pdist() function
X = [..]; % create 100x3 matrix
dists = pdist(X)
##### 3 CommentsShowHide 2 older comments
Tamoor Shafique on 3 Jan 2021
Please see attached. I am not good with Matlab if there are esier ways I don't mind adapting as long as it gives me distribution of nodes in full 100x100x100 network and then splits it into 27 sub cubes so i can get local info about each subnode like data in 27 sets.

Sign in to comment.

R2020a

### Community Treasure Hunt

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

Start Hunting!