How to find minimal distance during locomotion

2 次查看(过去 30 天)
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 个评论
Jan
Jan 2018-3-10
What is your question?
Your t is a scalar, so there is no effect in transposing it.

请先登录,再进行评论。

采纳的回答

Jan
Jan 2018-3-10
编辑:Jan 2018-3-10
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 个评论
Jan
Jan 2018-3-18
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).

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Assembly 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by