Vector projection
This article's lead section may be too long. (September 2024) |
The vector projection (also known as the vector component or vector resolution) of a vector a on (or onto) a nonzero vector b is the orthogonal projection of a onto a straight line parallel to b. The projection of a onto b is often written as or aβ₯b.
The vector component or vector resolute of a perpendicular to b, sometimes also called the vector rejection of a from b (denoted or aβ₯b),[1] is the orthogonal projection of a onto the plane (or, in general, hyperplane) that is orthogonal to b. Since both and are vectors, and their sum is equal to a, the rejection of a from b is given by:
To simplify notation, this article defines and Thus, the vector is parallel to the vector is orthogonal to and
The projection of a onto b can be decomposed into a direction and a scalar magnitude by writing it as where is a scalar, called the scalar projection of a onto b, and bΜ is the unit vector in the direction of b. The scalar projection is defined as[2] where the operator ⋅ denotes a dot product, βaβ is the length of a, and ΞΈ is the angle between a and b. The scalar projection is equal in absolute value to the length of the vector projection, with a minus sign if the direction of the projection is opposite to the direction of b, that is, if the angle between the vectors is more than 90 degrees.
The vector projection can be calculated using the dot product of and as:
Notation
[edit | edit source]This article uses the convention that vectors are denoted in a bold font (e.g. a1), and scalars are written in normal font (e.g. a1).
The dot product of vectors a and b is written as , the norm of a is written βaβ, the angle between a and b is denoted ΞΈ.
Definitions based on angle alpha
[edit | edit source]Scalar projection
[edit | edit source]The scalar projection of a on b is a scalar equal to where ΞΈ is the angle between a and b.
A scalar projection can be used as a scale factor to compute the corresponding vector projection.
Vector projection
[edit | edit source]The vector projection of a on b is a vector whose magnitude is the scalar projection of a on b with the same direction as b. Namely, it is defined as where is the corresponding scalar projection, as defined above, and is the unit vector with the same direction as b:
Vector rejection
[edit | edit source]By definition, the vector rejection of a on b is:
Hence,
Definitions in terms of a and b
[edit | edit source]When ΞΈ is not known, the cosine of ΞΈ can be computed in terms of a and b, by the following property of the dot product a ⋅ b
Scalar projection
[edit | edit source]By the above-mentioned property of the dot product, the definition of the scalar projection becomes:[2]
In two dimensions, this becomes
Vector projection
[edit | edit source]Similarly, the definition of the vector projection of a onto b becomes:[2] which is equivalent to either or[3]
Scalar rejection
[edit | edit source]In two dimensions, the scalar rejection is equivalent to the projection of a onto , which is rotated 90Β° to the left. Hence,
Such a dot product is called the "perp dot product."
Vector rejection
[edit | edit source]By definition,
Hence,
By using the Scalar rejection using the perp dot product this gives
Properties
[edit | edit source]Scalar projection
[edit | edit source]The scalar projection a on b is a scalar which has a negative sign if 90 degrees < ΞΈ β€ 180 degrees. It coincides with the length βcβ of the vector projection if the angle is smaller than 90Β°. More exactly:
- a1 = βa1β if 0Β° β€ ΞΈ β€ 90Β°,
- a1 = ββa1β if 90Β° < ΞΈ β€ 180Β°.
Vector projection
[edit | edit source]The vector projection of a on b is a vector a1 which is either null or parallel to b. More exactly:
- a1 = 0 if ΞΈ = 90Β°,
- a1 and b have the same direction if 0Β° β€ ΞΈ < 90Β°,
- a1 and b have opposite directions if 90Β° < ΞΈ β€ 180Β°.
Vector rejection
[edit | edit source]The vector rejection of a on b is a vector a2 which is either null or orthogonal to b. More exactly:
- a2 = 0 if ΞΈ = 0Β° or ΞΈ = 180Β°,
- a2 is orthogonal to b if 0 < ΞΈ < 180Β°,
Matrix representation
[edit | edit source]The orthogonal projection can be represented by a projection matrix. To project a vector onto the unit vector a = (ax, ay, az), it would need to be multiplied with this projection matrix:
Uses
[edit | edit source]The vector projection is an important operation in the GramβSchmidt orthonormalization of vector space bases. It is also used in the separating axis theorem to detect whether two convex shapes intersect.
Generalizations
[edit | edit source]Since the notions of vector length and angle between vectors can be generalized to any n-dimensional inner product space, this is also true for the notions of orthogonal projection of a vector, projection of a vector onto another, and rejection of a vector from another.
Vector projection on a plane
[edit | edit source]In some cases, the inner product coincides with the dot product. Whenever they don't coincide, the inner product is used instead of the dot product in the formal definitions of projection and rejection. For a three-dimensional inner product space, the notions of projection of a vector onto another and rejection of a vector from another can be generalized to the notions of projection of a vector onto a plane, and rejection of a vector from a plane.[4] The projection of a vector on a plane is its orthogonal projection on that plane. The rejection of a vector from a plane is its orthogonal projection on a straight line which is orthogonal to that plane. Both are vectors. The first is parallel to the plane, the second is orthogonal.
For a given vector and plane, the sum of projection and rejection is equal to the original vector. Similarly, for inner product spaces with more than three dimensions, the notions of projection onto a vector and rejection from a vector can be generalized to the notions of projection onto a hyperplane, and rejection from a hyperplane. In geometric algebra, they can be further generalized to the notions of projection and rejection of a general multivector onto/from any invertible k-blade.
See also
[edit | edit source]References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ M.J. Baker, 2012. Projection of a vector onto a plane. Published on www.euclideanspace.com.