⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 worldmodel.h

📁 底层robocup3d源码。 suse10.0 kdevelop 开发.
💻 H
字号:
#ifndef WORLDMODEL_H#define WORLDMODEL_H#include "geometry.h"#include "myQueue.h"#include "param.h"#include "file.h"#include "command.h"#define  VMAX  1.616#define DASH_K  2.51038 #define BALL_K_GROUND  0.2113037527#define BALL_K_AIR  0.3#define G    9.81#define STEP   2#define DELAY  0/**build  the worldmodel@author root*/namespace MSpace {struct MoveState{	Vec PositionV;	Vec speed;};struct Vision{   long cycle;   Pol  posP;   Vec  posV;};class Worldmodel{public:    Worldmodel();    double GetHalfLength();    double GetHalfWidth();    double GetHalfGoalWidth();    int   GetMyNumber();    double GeGoalDepth();    double GetBallMass();    double GetAgentMass();    double GetNowCycle();    Vec GetOpponentGoal();    Vec GetOurGoal();    //double GetThe    std::string GetPlayMode();    bool  IsUsKickOff();    bool  IsBallInAir();    bool  Updata();    void  UpMystate();    void  ForeseeMyState();    void  UpBallState();//Up ball state    MoveState    GetFutureMyState(long Cycle,Vec F);    void  SetMyPosition(const Vec v);    double WhereBall();    MoveState GetBallState_ground(long cycle,int &reliable);//foresee ball state on ground in cycle    MoveState GetBallState_air(long cycle,int &reliable);//foresee ball state in cycle in air    MoveState GetTeamMateState(int number,long cycle);    MoveState GetOpponentState(int number,long cycle);    MoveState GetMyState();    Vec GetStrategy(int num);    Vec GetMyStrategy();    void SetFormation(int n);    int WhoIsClosestToBall();    bool IsMeClosestToBall();    //the followings are used for testing     Vec   GetTeamMatePosV(int number);//return the latest message    Vec   GetOpponentPosV(int number);//return the latest message    Pol   GetTeamMatePosP(int number);//return the latest message    Vec   GetMeV();//return the latest message    Pol   GetOpponentPosP(int number);//return the latest message    Vec   GetBallV();//return the latest message    MoveState GetBallState();    Vec   ForeseeFallPoint(double &t,Vec &v,int &reliable);    Vec   InterceptBall(double &leftTime, int &reliable);    Pol   GetBallP();//return the latest message    ~Worldmodel();    double Get_V0_XY_sv(double s_XY,double v_t_XY,double k);    double Get_t_Z(double v0_z,double s_z);    double Get_t_XY_v(double v0_XY,double Vt_XY,double k);    double Get_v0_Z_st(double s_z,double t_z);    double Get_v0_Z_vt(double vt_z,double t_z);    double Get_s_XY(double v0_XY,double t_XY,double k);private:    double Get_Vt_Z(double v0_z,double t_z);    double Get_s_Z(double v0_z,double t_z);    double Get_t_XY(double v0_XY,double s_XY,double k);    double Get_V0_XY_tv(double t_XY,double v_t_XY,double k);    double Get_V0_XY_st(double s_XY,double t_XY,double k);    double Get_Vt_XY(double v0_XY,double t_XY,double k);    Vec   GetMyPosition();//don't use often, use GetMeP() instead.    MoveState  Mystate;    bool   MeStop;    bool   BallStop;    MoveState  Ballstate;    long LastStateCycle;    long NowCycle;    int   formation;    queue <Vision>BallQ;    queue <Vision>MeQ;    queue <Vision>TeamMateVQ[11];    queue <Vision>OpponentVQ[11];};}#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -