Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
1

Can someone explain the Vector3:Dot(Vector3) function to me?

Asked by
Psudar 882 Moderation Voter
4 years ago
Edited 4 years ago

I'm trying to learn a bit of math here so bare with me, but let's say we have this program:

local vector = Vector3.new(2, 2, 2)
local vector2 = Vector3.new(2, 2, 2)

print(vector:Dot(vector2))

--//Dot equation: P * Q  =  Px * Qx + Py * Qy + Pz * Qz

local Px, Py, Pz = 2, 2, 2
local Qx, Qy, Qz = 2, 2, 2

print((Px * Qx)+(Py * Qy)+(Pz * Qz))


Output: 12 ; Output: 12

I'm tying to figure out what the Dot function actually returns, but I dont really understand what the number means. I understand the equation just fine, I just dont know where to use this.

If someone could give me a use case and a bit more in-depth explanation, that'd be awesome.

1 answer

Log in to vote
1
Answered by 4 years ago

Dot product is a scalar unit, not a vector unit, meaning it has no direction.

Dot product of two vectors are calculated by multiplying both vectors length/magnitude and then multiplying with cosine of the angle between the vectors:

One application is detecting orthogonality/perpendicularity of vectors if the dot product is zero. If vectors are perpendicular(angle between them is 90 or 180) then dot product is zero, so you know that they are perpendicular.

If you divide the dot product by the lengths of the vectors, you're left with the cosine of the angle between the vectors, so the arc cosine of this will be the angle.

0
How do you find the angle's cosine between the vectors? Psudar 882 — 4y
0
Based on formula of Dot product Cosine becomes result of the Dot Product divided by product of both vector lengths multiplication. In formula Cos(?) = (aVector · bVector)/ (aVectorLength * bVectorLength) GooierApollo664 183 — 4y
Ad

Answer this question