Calculating distance between two points from a matrix in 2d and 3d

조회 수: 6 (최근 30일)
lisa Liang
lisa Liang 2020년 7월 21일
댓글: paul harder 2021년 4월 8일
Hi everyone!
I am new to MatLab and coding. I have a set of points in x and y coordinates, and they are sorted in a 701*14 matrix called 'rawdata'. The first two column are x and y coordinate for point#1 and the next two are the x and y coordinates for point#2 (as shown in screenshot). I want to calculate the distance between point#1 and point#2 for each row and have the resulted distance in matrix. I think I'd calculate distance by sqrt((x2 - x1) ^ 2 + (y2 - y1) ^ 2) in 2d or sqrt((x2 - x1) ^ 2 + (y2 - y1) ^ 2 + (z2 - z1) ^ 2)in 3d? But how do I write in a formatt that matlab can read and calculate?
Sorry I am a coding newb. And thank you very much for your help in advance!

채택된 답변

waqas
waqas 2020년 7월 21일
This would be the implementation of your formula. But, NaN would be a problem for you since 3rd and 4th columns are NaN and would make the output distance NaN too.
dist = sqrt(((A(:,3)-A(:,1)).^2 + (A(:,4)-A(:,1)).^2))
  댓글 수: 2
paul harder
paul harder 2021년 4월 8일
just to clarify a minor typo, the last 1 should be a 2
dist = sqrt(((A(:,3)-A(:,1)).^2 + (A(:,4)-A(:,2)).^2))

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by