How to find the projection of vectors from corrdinates?

2 次查看(过去 30 天)
Hi,
If I have the corrdinates of two vectors (not the elements of the vectors) in 2D plane
v1: from (1, 2) to (9, 10)
v2: from (9, 10) to (6, 14)
is there a way to get the projection of v1 on v2?
Thanks a lot for your help!
  2 个评论
Dyuman Joshi
Dyuman Joshi 2022-9-14
This is a simple mathematics question. Yes, there is a way to get what you want.
But how does this relate to MATLAB?
Is this a homework/assignment problem? If so, what have you tried yet?
Karl Bridggie
Karl Bridggie 2022-9-14
Thanks Dyuman! I know how to do it in maths, and I think I should use the dot function in MATLAB. If the vectors are u and v, then I need to do something like this:
dot(u,v) / dot(v,v) * v;
My problem is I don't know how to convert the vectors in corrdinate format (as v1 and v2 in the question) to the format that is suitable for the dot function.

请先登录,再进行评论。

采纳的回答

Dyuman Joshi
Dyuman Joshi 2022-9-14
Proceed the same way as you would on pen and paper. You can use points to define the vector -
%[x-coordinate y-coordinate]
p1=[1 2];
p2=[9 10];
p3=[9 10];
p4=[6 14];
%defining vectors
v1=p2-p1;
v2=p4-p3;
%Therefore, projection of v1 on v2 is
projv1_v2=dot(v1,v2)/dot(v2,v2)*v2
projv1_v2 = 1×2
-0.9600 1.2800

更多回答(0 个)

类别

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

标签

Community Treasure Hunt

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

Start Hunting!

Translated by