向量加减法

常用向量:

2D向量 v = < x , y >

3D向量 v = < x , y , z >

4D向量 v = < x , y , z , w > (也称作齐次坐标)


向量加减法,各维度都是类似的。


向量加法:

向量加法的和就是以两个向量的边作为平行四边形长边的对角线表示

公式:u + v = < u.x , u.y  > + < v.x , v.y > = < u.x + v.x , u.y + v.y >

向量减法:

向量减法的差是由减向量指向被减向量得到的新向量

公式:u - v = < u.x , u.y  > - < v.x , v.y > = < u.x - v.x , u.y - v.y >

减法可以用于方向计算,如:世界坐标用有两点 A,B 。从B - A 会的到由A点前往B点的方向向量

减法可以判断量物体之前的距离,同上得到向量后,取向量模即是两点之间的距离


向量加减法运用:

如图,角色在场景坐标中u为位置,玩家点击地面坐标v的位置,或者v处有怪物

为了让玩家能够自动前往v 处,首先我们要确定移动方向,即箭头所示方向

公式 dir = ( u - v ).Normalized

Normalized 单位化后得到的向量只有方向,大小是固定的

然后我们在游戏运行的每一帧执行表达式:u ' = u + dir * time 

角色就会慢慢朝着v处移动


  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在MATLAB中,可以使用quiver函数进行向量的绘制和操作。该函数可以绘制箭头表示的向量,并且支持向量的加法和减法操作。当进行两个向量的加法和减法时,这两个向量的元素必须具有相同的类型和数量。可以通过指定箭头的起始点和长度,来表示向量的大小和方向。 例如,假设我们有两个向量v1和v2,可以使用quiver函数绘制这两个向量,并进行加法和减法操作。假设v1 = [1, 2],v2 = [-3, 4],我们可以使用以下代码进行绘制和操作: ```matlab v1 = [1, 2]; v2 = [-3, 4]; figure; hold on; % 绘制v1向量 quiver(0, 0, v1(1), v1(2), 'r', 'LineWidth', 2); % 绘制v2向量 quiver(0, 0, v2(1), v2(2), 'b', 'LineWidth', 2); % 绘制v1 + v2向量 v_sum = v1 + v2; quiver(0, 0, v_sum(1), v_sum(2), 'g--', 'LineWidth', 2); % 绘制v1 - v2向量 v_diff = v1 - v2; quiver(0, 0, v_diff(1), v_diff(2), 'm--', 'LineWidth', 2); axis equal; legend('v1', 'v2', 'v1 + v2', 'v1 - v2'); ``` 在这个例子中,我们首先绘制了v1和v2两个向量,然后使用加法操作得到了v1 + v2向量,并使用减法操作得到了v1 - v2向量。最后,我们使用axis equal来使坐标轴的比例相等,并使用legend添加图例。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Matlab 绘制 - 点和向量向量加减的方法和源码](https://blog.csdn.net/yellow_hill/article/details/124996309)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [MATLAB向量的运算](https://blog.csdn.net/std86021/article/details/127937682)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值