首先證明余弦定理:
有邊為a,b,c,對應夾角為a_angle,b_angle,c_angle
分別從定點向對應邊作對角線可以發現如下關系成立:
(1)
a=b*cos c_angle + c * cos b_angle
(2)
b=a*cos c_angle + c * cos a_angle
(3)
c=a*cos b_angle + b * cos a_angle
對(1)*a有:
a^2=a*b*cos c_angle + a*c * cos b_angle
同樣有:
b^2=b*a*cos c_angle + b*c * cos a_angle
c^2=c*a*cos b_angle + c*b * cos a_angle
比較上面三個,可以發現有:
a^2+b^2={a*b*cos c_angle + a*c * cos b_angle } + {b*a*cos c_angle + b*c * cos a_angle}
GO
移項有:
a^2+b^2={a*b*cos c_angle + b*a*cos c_angle}+ { a*c * cos b_angle + + b*c * cos a_angle}
GO
a^2+b^2=2*a*b*cos c_angle + c^2
現在繼續往下證明:
假設a,b,c的在三維坐標下
(4)
a^2=a1^2+a2^2+a3^2
同樣有:
(5)
b^2=b1^2+b2^2+b3^2
(6)
c^2=(a1-b1)^2+(a2-b2)^2+(a3-b3)^2
對(6)進行化簡有:
c^2=a1^2+a2^2+a3^2+ b1^2+b2^2+b3^2 - 2*a1*b1-2*a2*b2-2*a3*b3
綜合(4),(5)有:
a^2+b^2-2*a*b*cos c_angle=a^2+b^2 - 2*a1*b1-2*a2*b2-2*a3*b3
Go
2*a*b*cos c_angle=2*a1*b1+2*a2*b2+2*a3*b3
Go
a*b*cos c_angle=a1*b1+a2*b2+a3*b3
而點積的定義形式為:point_a*point_b=a1*b1+a2*b2+a3*b3
從而得到公式point_a*point_b=a*b*cos c_angle.
摘自:chenbingchenbing的專欄