How to find minimal distance during locomotion
    4 views (last 30 days)
  
       Show older comments
    
Hello,
I would like to find the distance between two points. I have a dataset with 4 columns , the first and second column are the x,y coordinates for the participants locomotion, the third and fourth columns are the X,Y coordinates for the targets (total targets =9, ). I would like to know if the participant reached a target or several targets during de locomotion using the distance. I wrote this function :
function d= distini(x,X,y,Y)
    for i=1:length(x)
        for ii=1:9
           t= sqrt(((X(ii) - x(i)).^2) + ((Y(ii)- y(i)).^2));
           d=t'
        end
    end 
end 
thanks in advance
1 Comment
  Jan
      
      
 on 10 Mar 2018
				What is your question?
Your t is a scalar, so there is no effect in transposing it.
Accepted Answer
  Jan
      
      
 on 10 Mar 2018
        
      Edited: Jan
      
      
 on 10 Mar 2018
  
      I'm not sure, what you are asking for. So just a guess:
function d = distini(x,X,y,Y)
d = zeros(numel(X), numel(x));
X = X(:);  % If X and Y are not column vectors
Y = Y(:);
for k = 1:numel(x)
    d(:, k) = sqrt((X - x(k)) .^ 2 + (Y - y(k)) .^ 2);
end 
end
Does this help?
5 Comments
  Jan
      
      
 on 18 Mar 2018
				A = rand(2099, 2);
B = rand(9, 2);
D = zeros(9, 1);
for k = 1:9
   dist = (A(:, 1) - B(k, 1))^2 + (A(:, 2) - B(k, 2))^2;
   D(k) = sqrt(min(dist));
end
Now D(k) contains the minimal distance of the trajectory in A to B(k).
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

