RoboCup2d学习——WorldModel

RoboCup2d学习——WorldModel

WorldModel 世界模型 自我学习文档

BallObject Ball; 球类
AgentObject agentObject; agent类
PlayerObject Teammates[MAX_TEAMMATES]; 球员类,三个数组存放不同的球员
PlayerObject Opponents[MAX_OPPONENTS];
PlayerObject UnknownPlayers[MAX_TEAMMATES+MAX_OPPONENTS];
Time 时间类(int类型属性:周期数,循环次数)
Circle 圆类(圆心,半径)
Line 直线类(包含三个double属性,分别是直线ay + bx + c = 0的三个系数)
VecPosition 坐标信息类(包含两个double属性,分别对应x轴和y轴的坐标值)
ObjectT 枚举类,包括场上可能出现的对象,例如OBJECT_BALL,OBJECT_GOAL_L,球,左侧球门等等

函数

可通过WM-> 调用函数
(1)球的坐标位置
getGlobalPosition( ObjectT o ) 获取o的坐标(返回类型VecPosition)
getBallPos() 获取球的坐标(通过调用getGlobalPosition间接完成)
getBallPos().getX() 获取球的x轴坐标
getBallPos().getY() 获取球的y轴坐标(均为double类型)
getPosOwnGoal( ) 获取自己的球门位置(返回VecPosition)
getPosOpponentGoal( ) 获取对手球门的位置(返回VecPosition)

(2)球的速度,方向
getGlobalVelocity( ObjectT o ) 获取o的速度(返回类型VecPosition)
getBallSpeed() 获取球的速度(返回值为double类型,通过调用
getGlobalVelocity间接完成)
getBallDirection()获取球的运动方向(返回AngDeg(弧度角),也就是double)

(3)球员,场上的状态
getPlayerNumber( ) const 获取球员的号码(返回int)
getPlayMode() 获取状态
PlayModeT 枚举类,包含不同的状态,例如PM_BEFORE_KICK_OFF,PM_KICK_OFF_LEFT

getClosestInSetTo这是一个重载函数,根据参数的不同功能的实现也不同

(4)距离,角度
getPosClosestOpponentTo( double *dDist, ObjectT o ) (返回VecPosition)
getRelAngleOpponentGoal() 获取自己与对方球门之间的相对角(返回double)
getRelativeDistance( ObjectT o )获取自己与o之间的相对距离(返回double)
getRelDistanceOpponentGoal() 获取自己与对方球门之间的相对距离(返回double)

(5)判断
isBeforeKickOff( PlayModeT pm ) 判断是否在开球之前(返回bool)
isKickOffUs( PlayModeT pm ) 判断当前的play模式下是否由我方开球
isOffsideUs( PlayModeT pm ) 判断当前的play模式下我方是否越位(返回bool)

isBallKickable() 判断球是否可踢(返回bool)
isBallCatchable() 判断球是否可抓(返回bool,该方法只适用于守门员)
isBallHeadingToGoal( )判断当前球是否朝向我方球门(返回bool)
isBallInOurPossesion( ) 判断球是否在我方手中(返回bool)
isBeforeGoal( VecPosition pos )判断位置参数pos是否在对方球门前(返回bool)

(6)周期
getCurrentTime() 获取当前的时间(返回Time对象)
getCurrentCycle() 获取当前的周期(返回int)

·1.【原创资源】内容简介: --------------------------------------------------------------- 这是一个压缩包,里面是国际赛数模训练时,做无线电信道分配所用的资料 --------------------------------------------------------------- ·2.资源使用方法 microsoft word Adobe pdf 浏览 --------------------------------------------------------------- ·3.文件组成形式 格式:doc pdf文件 /**********************************************/ 文件名如下: (Toolkit的具体使用方法)SEU-3D-TOOLKIT使用手册.pdf (三位老队员的毕业设计,可供参考).zip (各个队伍可以此源码作为基础,阅读代码后进行修改使这个基础队伍变强从而参加比赛)seu-base.tar.gz (基础源码的简要介绍)presentation.pdf (更新版本维护了调试工具toolkit,各个队伍可以使用调试工具,更快更专业地调试你们的代码)seu-base-toolkit-update.tar.bz2 (测试队伍可以用来和自己的队伍进行比赛,测试自己开发的队伍的能力到了什么程度。 )teams_for_test.zip (老队员王巍的代码阅读笔记,可供参考。)SEU-3Architecture.doc (这个是server的安装包,参考新手上路进行安装 rcss3d-suse-install-11.X.tar.gz (这个是server的配置文件,如何使用请参阅新手上路)rcssserver3D.rb (这个是开始比赛之前的配置,同样请参考新手上路进行配置agentdb.list 23D introduction by xuyuan v0.4.pdf 3d_rules.pdf FAQ FAQ~ Linux菜鸟教程 国际足球比赛规则.pdf 文件说明.pdf 新手上路.pdf 通知.doc /**********************************************/ --------------------------------------------------------------- ·4. wogeguaiguai的附言: 1.我的其他数学建模资源也欢迎您下载,都是非常好的准备比赛要用的资料。俺一年的搜索资源,同学们一朝即可获得! 2.下载本文件后,您可以获得所有信息,不必再零散下载,给您带来很大的方便。 3.10个资源分,绝对物超所值。评论后,您就可以获得11个资源分,欢迎您评论! --------------------------------------------------------------- ·5.如有问题,请在此留言,谢谢。 --------------------------------------------------------------- ·6.上传时间 2010-2-24-afternoon
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值