找回密码
 点一下
查看: 1202|回复: 6

角度计算问题凌乱了,谁能指点一下……

[复制链接]
发表于 2015-9-20 16:39:45 | 显示全部楼层 |阅读模式
判断单位是否背对自己:单位角度减去自身角度的绝对值
反过来
判断自身是否背对目标:自身角度减去目标角度的绝对值

但如果要判断自己是否正面面对目标呢?研究了一下午都被数据搞困了……
发表于 2015-9-21 22:39:32 | 显示全部楼层
你这个背对和面对是有兼容范围的呢还是精确值?精确值只要判断面向方向跟两个单位间的角度就行了,不过注意前者360°制后者180°制,要转换下

如果有兼容范围,也是类似,比如自己正面面对目标,那么就是自己的面向方向在(自己到目标的角度±偏差值)范围内,个人推荐用360°制,因为只需要考虑0°上下的情况就行了,不然180°制的除了0°还要多判断一个180°的情况
回复

使用道具 举报

发表于 2015-9-22 10:15:03 | 显示全部楼层
((甲单位位于乙单位的方位角度)-乙单位的面朝角度)的绝对值,小于180度的时候,小于90度甲在乙的正面,大于90度在背面,(也可以根据需要,例如,小于60度,判定为正面,就是说甲单位在乙单位面前120度的扇形内的时候判定其为正面,同理大于120度为甲在乙背后120度的扇形范围内),如果大于180度,就是大于270度为甲在乙的正面,小于270度为背面(当然也可以是大于300度,类似前面,判定甲单位在乙单位面前120度的扇形范围,小于240度为甲在乙背后120度的扇形范围)

点评

A到B的角度 - B面向角度 的绝对值 = X X小于90度 A就面向B X大于90度 A则背对B 是这样?  详情 回复 发表于 2015-9-22 18:48
回复

使用道具 举报

 楼主| 发表于 2015-9-22 18:48:13 | 显示全部楼层
tandingzhi 发表于 2015-9-22 10:15
((甲单位位于乙单位的方位角度)-乙单位的面朝角度)的绝对值,小于180度的时候,小于90度甲在乙的正面, ...

A到B的角度 - B面向角度 的绝对值 = X

X小于90度 A就面向B
X大于90度 A则背对B

是这样?

点评

要先看相减的差的绝对值是否大于180度。比如说A在B的10度方位,B面向350度,那实际上A位于B的角度与B的面向角度只相差20度,但是直接相减的角度差是340度。所以大于180度的时候的实际相差角度实际是用360度去减这个  详情 回复 发表于 2015-9-22 21:37
回复

使用道具 举报

发表于 2015-9-22 21:37:39 | 显示全部楼层
allennai 发表于 2015-9-22 18:48
A到B的角度 - B面向角度 的绝对值 = X

X小于90度 A就面向B

要先看相减的差的绝对值是否大于180度。比如说A在B的10度方位,B面向350度,那实际上A位于B的角度与B的面向角度只相差20度,但是直接相减的角度差是340度。所以大于180度的时候的实际相差角度实际是用360度去减这个差值。

点评

A角度 - B角度 = X X小于180 X小于90 A面对B X大于90 A背对B 这样?  详情 回复 发表于 2015-9-23 00:32
回复

使用道具 举报

 楼主| 发表于 2015-9-23 00:32:09 | 显示全部楼层
tandingzhi 发表于 2015-9-22 21:37
要先看相减的差的绝对值是否大于180度。比如说A在B的10度方位,B面向350度,那实际上A位于B的角度与B的面 ...

A角度 - B角度 的绝对值 = X

X小于180
  X小于90 A面对B
  X大于90 A背对B

这样?

点评

差不多吧。不过要注意,判断B是位于A的正面还是背面,上面的B的角度是指B位于A的方位角度,而A的角度是指A面向的方位的角度。然后这两个角度相减的绝对值。如果是判断A位于B的正面还是背面,就反过来。  详情 回复 发表于 2015-9-23 09:46
回复

使用道具 举报

发表于 2015-9-23 09:46:41 | 显示全部楼层
allennai 发表于 2015-9-23 00:32
A角度 - B角度 的绝对值 = X

X小于180

差不多吧。不过要注意,判断B是位于A的正面还是背面,上面的B的角度是指B位于A的方位角度,而A的角度是指A面向的方位的角度。然后这两个角度相减的绝对值。如果是判断A位于B的正面还是背面,就反过来。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-12-22 17:23 , Processed in 0.194517 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表