driveball.cpp.svn-base
来自「一个巴西大学编写的2D仿真组足球机器人程序」· SVN-BASE 代码 · 共 76 行
SVN-BASE
76 行
#include "DriveBall.h"DriveBall::DriveBall():Behavior(){ mObject = OBJECT_OPPONENT_1;}SoccerCommand DriveBall::primaryAction(){ //primarySoc = dribble( 0.0, dribbleType ); return primarySoc;}SoccerCommand DriveBall::cuncurrentAction(){ if( nObj == 1 ) { if ( (WM->getCurrentCycle()%2) == 1 ) cuncurrentSoc = turnNeckToObject( OBJECT_BALL, primarySoc ); else cuncurrentSoc = turnNeckToObject( mObject , primarySoc ); } else { if ( (WM->getCurrentCycle()%3 == 0) ) cuncurrentSoc = turnNeckToObject( OBJECT_BALL, primarySoc ); else if( ((WM->getCurrentCycle()+1)%3 == 0) ) cuncurrentSoc = turnNeckToObject( mObject2, primarySoc ); else cuncurrentSoc = turnNeckToObject( mObject1, primarySoc ); } return cuncurrentSoc;}void DriveBall::driveBall(){ primarySoc = dribble( 0.0, dribbleType );}void DriveBall::setLookAt(ObjectT o){ nObj = 1; mObject = o;}void DriveBall::setLookAt2(ObjectT obj1 , ObjectT obj2){ nObj = 2; mObject1 = obj1; mObject2 = obj2;}void DriveBall::setDribbleType( DribbleT d){ dribbleType = d;}void DriveBall::dribbleRight(){ primarySoc = dribble( 45.0, dribbleType );}void DriveBall::dribbleLeft(){ primarySoc = dribble( -45.0, dribbleType );}/* soc = driveBallFoward(); ACT->putCommandInQueue( soc ); if ((WM->getCurrentCycle()%2) == 1) ACT->putCommandInQueue( turnNeckToObject( OBJECT_BALL, soc ) ); else ACT->putCommandInQueue( turnNeckToObject( OBJECT_TEAMMATE_9, soc ) ); */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?