calculate the distance between two successive dots

1 visualizzazione (ultimi 30 giorni)
Hello friends..
  • my table contains 79 points
*here is my code
=======================
  • T = zeros;
*x=0;z=0;
  • a=length(points);%79points
*for i = 1:a
*for j = i+1:a
  • x = x + 1;
  • d1 = norm(points(j)-points(i));
  • T(x,:) = d1;
end
end
end
xlswrite('d:\result.xlsx',T);
========================================
*I want to calculate the distance between two successive dots ie: (point1,point2),(point3,point4),point5,point6)
*I normally get 39 distance but I got 3081 distance(because the loop it calculated the distance between all points)

Risposta accettata

Joseph Cheng
Joseph Cheng il 25 Mar 2014
you'll have to do something like this
T = zeros;
x=0;z=0;
a=length(points);%79points
for i = 1:2:a
x = x + 1;
d1 = norm(points(i+1)-points(i));
T(x,:) = d1;
end
xlswrite('d:\result.xlsx',T);
Since you want just points 1 and 2 , then 3 and 4, etc. we can use the i=1:2:a to increment i by 2, and compare i to i+1. This way i will be 1, 3, 5 and the compared point will be 1+1, 3+1 , 5+1 (or 2,4,6).

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by