我可以计算斜线和我的球之间的距离(用法线向量),但是如何计算新的速度呢?
答案 0 :(得分:1)
如果向量v =(vx,vy)是初始速度且平面具有正常n =(nx,ny)则新的反射速度向量r将
r=v−2(v⋅n)*n
产品(v⋅n)是v和n的点积,定义为vx nx + vy ny。请注意,平面法线必须标准化(长度为1.0)。一个相同的问题,答案相同https://math.stackexchange.com/questions/13261/how-to-get-a-reflection-vector
答案 1 :(得分:1)
这将允许我们推导出您需要的等式。现在,两个向量 a 和 b , ab 的标量积给出 a 的幅度乘以投影 b 到 a 。基本上,如果我们将 n 作为单位向量(每个组件方向的幅度1),那么 a 给出 a 的组件的大小朝着 n 的方向行事。
因此,将速度分量分成平行且垂直于平原的那些;要获得速度 V ,我们首先将 U 拆分为组件。
垂直于 n 方向的平面,我们有一个矢量速度 w =( Un ) n 。这意味着事实上我们可以写 U =( Un ) n + [ U - (联合国) n ]。这就是说 U 由其自身的垂直分量+自身的平行分量组成。现在, - V 与 U 非常相似,但并行组件反向运行,因此我们可以写 - V =(联合国) n - [ U - (联合) n ]。
结合以上结果给出了Anders所说的结果,即 V = U -2 [( Un ) n ]。点/标量乘积被定义为 ab = | a || b | cos(A)其中A是从尾部到尾部放置的矢量之间的角度,这应该可以让您解决问题
我希望这会有所帮助