How to do vector projection?

조회 수: 19 (최근 30일)
Sierra
Sierra 2022년 5월 31일
댓글: Jan 2022년 6월 2일
I have longitude, latitude data(aircraft's trajectory data).
and I want to use a vecotr projection to make a second image.
(for convenience, I only drawed one line. but I wanna do it for every red point.)
Is there a forumla or a fuction in Matlab?
Also, if you know how to do 3d(longitude, latitude, altitude) vector projection, please let me know.
(I asked 2d vector projection first for understanding.)
Thanks
  댓글 수: 12
Sierra
Sierra 2022년 5월 31일
I have coordinates data(longitude, latitude). and the data is 30 x1 dobule like first image
the lines next to the red line are colored black, and they are also trajectory of aircraft.
the line which is projected onto is colored blue.
In short, I want to project trajectories(black line) to blue line.
and To do this, I have to use vector projection(orthogonal projection).
Tell me if you need more information!
Thanks, Matt.
Jan
Jan 2022년 6월 2일
@Sierra: Screenshots are less useful to provide data, because they cannot be used by copy&paste to create an asnwer.

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

채택된 답변

Matt J
Matt J 2022년 5월 31일
편집: Matt J 2022년 5월 31일
In 2D Euclidean space, to project a point P=[x,y] onto a straight line, you need
(1) a point on the line P0=[x0,y0]
(2) a direction vector parallel to the line D=[dx,dy]
The projected point is given by,
projectedPoint=dot(P-P0,D/norm(D))*D+P0
This is for projection in the Euclidean 2D plane. However, because you have lat,lon data, you presumably want to project over the surface of a sphere, which is more complicated. Either way though, you need a point on the blue line and something that defines its direction.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Data Import and Analysis에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by