How to do vector projection?

17 views (last 30 days)
Sierra
Sierra on 31 May 2022
Commented: Jan on 2 Jun 2022
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 Comments
Jan
Jan on 2 Jun 2022
@Sierra: Screenshots are less useful to provide data, because they cannot be used by copy&paste to create an asnwer.

Sign in to comment.

Accepted Answer

Matt J
Matt J on 31 May 2022
Edited: Matt J on 31 May 2022
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.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!

Translated by