向量的水平投影和垂直投影在Flash中如何计算
向量投影指的是一个向量在另一个向量上的投影,可以分为水平投影和垂直投影,如何在Flash中计算它们的值呢?笔者与大家分享一下自己的。
操作方法
- 01
(一)水平投影的计算 绘制任意两个向量a和b,从向量a的终点做向量b做垂线,从向量起点O沿向量b方向到垂足的向量,就是向量a在向量b上的水平投影。
- 02
计算向量的水平投影可以通过点积来计算,我们都知道向量的点积,其实就是两个向量长度与向量夹角的余弦的乘积,如果除以向量b的长度的平方,就可以计算出水平投影与向量b的比率,再根据向量b就可以计算出向量a在向量b上的水平投影。
- 03
计算向量水平投影的代码如何书写呢? 首先,定义一个求水平投影向量的函数par,其中Vector为已定义好的向量类。
- 04
接着,定义一个实型变量l,它的值为向量b的长度。
- 05
定义实型变量n,其值为向量a与向量b的点积。
- 06
最后,用步骤2的原理,计算出水平投影的向量。
- 07
(二)垂直投影的计算 从向量a终点做向量b的垂线,从垂足到向量a终点的向量,就是向量a在向量b上的垂直投影。
- 08
计算出向量a的水平投影后,只需用向量a减去水平投影向量,就可以得到向量a在向量b上的垂直投影了。
- 09
首先,定义函数per求向量a在向量b上的垂直投影,类型为向量Vector。
- 10
在函数中定义向量p,其值为向量a在向量b上的水平投影。
- 11
最后,求出向量a减去向量p的值,即求出垂直投影向量的值。
赞 (0)