Efficiently calculate distance between moving point and fixed points
Show older comments
Hello,
I have a grid of point coordinates
xval=0:1:5000;
yval=0:1:2000;
zval=1;
[X,Y,Z]=meshgrid(xval,yval,zval);
to those points defined by X,Y,Z and to another point I want to calculate the distances.
mypoint=[500 700 5];
dist=sqrt( (mypoint(1)-X).^2 + (mypoint(2)-Y).^2 + (mypoint(3)-Z).^2 );
This gives me my distances of mypoint to my grid of points. However, mypoint is changing over time. And for each time step I need all distances. I can do this with a simple for loop, but I was wondering if there is a more efficient way if mypoint is changing over time. Thanks
Answers (1)
Niraj Gadakari
on 28 Sep 2017
0 votes
You can calculate the distance between the points by vectorization.
Categories
Find more on Function Creation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!