Robocode基本原理之方向解析[Java编程]
本文“Robocode基本原理之方向解析[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
很多研究Robocode的 玩家都被此中的方向及坐标弄胡涂了.下面就随着 Skyala.Li一同来揭开此中的奥妙.
前言:
很多研究Robocode的 玩家都被此中的方向及坐标弄胡涂了.下面就随着 Skyala.Li一同来揭开此中的奥妙.
首先我们来看看一段英文的翻译及阐明:
heading - absolute angle in degrees with 0 facing up the screen, positive clockwise. 0 <= heading < 360.
bearing - relative angle to some object from your robot's heading, positive clockwise. -180 < bearing <= 180
heading:是机械人方向与屏幕正上方的角度差,方向在0到360之间.
bearing:是机械人的某个部件如雷达发现的目标与方向的角度差,顺时针为 正角度在-180到180之间
看了这段文字大家大概还是不太懂得,整个屏幕哪个是0度角,整个是坐标原 点呢? 顺时针与逆时针的方向若何辨别?
概念与平面图:
在开始阐明之前大家先得清楚几个在Robocode中很重要的概念:
坐标系:Robocode整个坐标系都是战场屏幕以左下角为原点
绝对方向系:Robocode中不管机械人在哪个方向都是以静态战场屏幕为参照 的绝对角度(也即大家说的Heading),正上方为0度角.也即不管是 Robot,Gun,Radar向北为0,向东为90,向南为180,向西为270.
相对方向系:相对方向是Robot,Gun,Radar以机械人的动态heading角度为参 照的角度差不再以整个静态屏幕为参照了,叫它相对因为机械人的heading是随 着机械人移动而不断的在改变,heaing只是个相对物体.
下图很清楚的阐明了坐标系统及绝对方向
以上是“Robocode基本原理之方向解析[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |