三维空间中,向量在另外一个向量或者面上的投影

1. 向量在另外一个向量上的投影

-求向量u在向量v上的投影,定义为u’ ,θ 为两向量的夹角。
在这里插入图片描述

  • 一个向量有两个属性,大小和方向
  • 首先明确向量点乘的含义 u ⃗ ∗ v ⃗ = ∣ u ∣ ∣ v ∣ c o s θ \vec{u}*\vec{v} = |u||v|cosθ u v =uvcosθ
  • 所以我们可以得到投影向量u’ 的大小(向量的模): d = ∣ u ⃗ ∣ c o s θ d = |\vec{u}|cosθ d=u cosθ:
  • d = ∣ u ⃗ ∣ c o s θ = u ⃗ ∗ v ⃗ ∣ v ∣ d = |\vec{u}|cosθ = \frac{ \vec{u}*\vec{v}}{|v|} d=u cosθ=vu v
  • 接下来再来一步得到投影向量u’ 的方向:投影向量的方向和b的方向相同
  • 综上所叙
  • 向量a在向量b上的投影的计算公式为: u ′ = d ∗ v ∣ v ∣ = u ⃗ ∗ v ⃗ ∣ v ∣ ∗ v ⃗ ∣ v ∣ = u ⃗ ∗ v ⃗ ∗ v ⃗ ∣ v ∣ 2 u' =d*\frac{v}{|v|} = \frac{ \vec{u}*\vec{v}}{|v|}* \frac{\vec{v}}{|v|} = \frac{ \vec{u}*\vec{v}*\vec{v}}{|v|^2} u=dvv=vu v vv =v2u v v
#vectorA,vectorB为单位向量
#程序中因为是单位向量,所以就直接*vectorB了
np.dot(vectorA, vectorB) * vectorB

2. 直线方向在另外一个面上的投影

  • 已知面的法向量vectorN,直线的方向向量vectorT
  • 参考1的原理
  • 向量相加和相减的演示
  • 在这里插入图片描述
#vectorA为直线的方向向量,vectorB为平面的法向量,则求投影方向vectorT
vectorT=vectorB-np.dot(vectorA, vectorB) * vectorB
  • 10
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值