C语言:实现两个分量个数相同的向量分量相加,分量值不超过1000

点击文档标签更多精品内容等伱发现~


VIP专享文档是百度文库认证用户/机构上传的专业性文档,文库VIP用户或购买VIP专享文档下载特权礼包的其他会员用户可用VIP专享文档下载特權免费下载VIP专享文档只要带有以下“VIP专享文档”标识的文档便是该类文档。

VIP免费文档是特定的一类共享文档会员用户可以免费随意获取,非会员用户需要消耗下载券/积分获取只要带有以下“VIP免费文档”标识的文档便是该类文档。

VIP专享8折文档是特定的一类付费文档会員用户可以通过设定价的8折获取,非会员用户需要原价获取只要带有以下“VIP专享8折优惠”标识的文档便是该类文档。

付费文档是百度文庫认证用户/机构上传的专业性文档需要文库用户支付人民币获取,具体价格由上传人自由设定只要带有以下“付费文档”标识的文档便是该类文档。

共享文档是百度文库用户免费上传的可与其他用户免费共享的文档具体共享方式由上传人自由设定。只要带有以下“共享文档”标识的文档便是该类文档

还剩66页未读, 继续阅读

既有大小又有方向的量称之为向量分量与之相对应的是标量,标量是只有大小没有方向的量

一个向量分量的一般在头上添加一个箭头表示,比如向量分量V可以表示為

游戏中一般以二维向量分量跟三维向量分量居多,例如一个由A点指向B点的向量分量可以表示为 ,由于向量分量是有方向的因此向量汾量

需要特别注意的是两个特殊的向量分量:零向量分量跟单位向量分量

我们都知道,位置是相对的因此坐标轴就很重要,在游戏中姠量分量结合坐标轴来确定位置。

就以Unity来说如果假设Unity的坐标轴的原点表示为O(0,0),那么一个物体的坐标点为A(33),实际上可以看作一条从原点O指向点A的向量分量可以表示为

向量分量的数乘表示向量分量跟一个实数相乘的乘积,结果还是一个向量分量 比如实数a跟一个向量分量

茬Unity的坐标轴中,如果一个物体的位置为A(3, 33),如果我们将其位置乘以2再赋值给这个物体那么A的位置就会变成A’(6,6,6)。也就是说我们将这个物體的位置从A点移动到了A’点。

两个向量分量相加以后的结果还是一个向量分量新向量分量的各个分量的值等于两个向量分量的对应分量嘚加值。计算公式为

向量分量的加法可以用平行四边形法则或者三角形法则描述:

1. 平行四边形法则:

两个向量分量相加,可以考虑为两個同起点的向量分量分别作为边长绘制出来的一个平行四边形,这个平行四边形的以旧向量分量同起点的对角线就是两个向量分量之和所得的一条新向量分量

两个向量分量相加可以考虑为这两条向量分量首尾相连后,分别作为三角形的两条边长然后以第一条的起始位置,第二条的尾巴位置进行补全的一条向量分量就是这两条向量分量的加值向量分量。如下图:

两个向量分量相减所得还是一个向量分量这个向量分量的各个分量的值为旧向量分量的各个分量的差值。公式为:

向量分量的减法同样支持三角形法则与加法所不同的是,減法的所得的最终向量分量其方向是由减数向量分量的终点指向被减数向量分量的终点。

向量分量的模就是向量分量的长度(大小)昰一个标量,用 V表示如果一个向量分量 ?,即向量分量的模等于向量分量的各个分量的平方之和的开平方

  • 零向量分量的模为零,單位向量分量的模为1

  • 向量分量的单位化:任意非零的向量分量可以通过将每个分量数乘以 V1?,得到的新向量分量就是这个向量分量嘚单位化向量分量

  • 0 V0 零向量分量等于0其他向量分量的模都大于0

  • α为两个向量分量之间的夹角

  • 几何意义:点积表示了两个向量分量的接近程度,即夹角越小两个向量分量越靠近,在等于0的时候平行等于1的时候垂直。因此向量分量的点积在游戏中经常用来判断两个向量分量的接近程度比如两个移动的物体是否会撞上,需要不需要避开之类的AI计算同时,已知两个向量分量可以计算两个向量分量的夾角。从而进行旋转操作等

  • 一个实数不影响两个向量分量的点乘

是两个向量分量的夹角 模的几何意义:两个三维向量分量的叉积的模表示鉯这两个向量分量为边长的平行四边形的面积 根据上面的公式可知,叉积的模是两个向量分量的模的乘积乘以他们的 sin\alpha sin\alpha $所代表的就是求三角形高的公式。

我要回帖

更多关于 向量分量 的文章

 

随机推荐