亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? objects.h

?? 機器足球2D比賽程序 對trlen_base_2002的改進
?? H
字號:
/*Copyright (c) 2000-2002, Jelle Kok, University of AmsterdamAll rights reserved.Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the University of Amsterdam nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.*//*! \file Objects.h<pre><b>File:</b>          Objects.h<b>Project:</b>       Robocup Soccer Simulation Team: UvA Trilearn<b>Authors:</b>       Jelle Kok<b>Created:</b>       1/12/2000<b>Last Revision:</b> $ID$<b>Contents:</b>      class declarations Object, DynamicObject, FixedObject,               PlayerObject, BallObject and Stamina<hr size=2><h2><b>Changes</b></h2><b>Date</b>             <b>Author</b>          <b>Comment</b>1/12/2001        Jelle Kok       Initial version created</pre>*/#ifndef _OBJECTS_#define _OBJECTS_#include "SoccerTypes.h"  // needed for ObjectT/*****************************************************************************//********************** CLASS OBJECT *****************************************//*****************************************************************************//*! Class Object contains RoboCup information that is available for all objects    in the simulation. All (relative) information is relative to an agent as    declared in AgentObject. Update of an object (or one of the subclasses)    happens by calling the standard get and set methods available in these    classes. Calculations on these attributes do not occur in these classes,    but in the update methods of the WorldModel. */class Object{protected:  ObjectT     objectType;             /*!< Type of this object               */  Time        timeLastSeen;           /*!< Time last see message has arrived */  VecPosition posGlobal;              /*!< Global position in the field      */  Time        timeGlobalPosition;     /*!< Server time of global position    */  VecPosition posRelative;            /*!< Relative position of the object   */  Time        timeRelativePosition;   /*!< Server time of relative position  */  VecPosition posGlobalLastSee;       /*!< Global position of last see msg   */  Time        timeGlobalPosDerivedFromSee;/*!< Time pos derived from see msg */public:  Object( );  /*! abstract function that should be defined in a subclass */  virtual void show( ostream& os = cout ) = 0;  // non-standard get and set methods (all defined here)  AngDeg      getRelativeAngle              (                                 );  double      getRelativeDistance           (                                 );  double      getConfidence                 ( Time        time                );  // standard get and set methods  bool        setType                       ( ObjectT     o                   );  ObjectT     getType                       (                           ) const;  bool        setRelativePosition           ( double      dDist,                                              AngDeg      dAng,                                              Time        time                );  bool        setRelativePosition           ( VecPosition v,                                              Time        time                );  VecPosition getRelativePosition           (                           ) const;  bool        setTimeRelativePosition       ( Time        time                );  Time        getTimeRelativePosition       (                           ) const;  bool        setGlobalPosition             ( VecPosition p,                                              Time        time                );  VecPosition getGlobalPosition             (                           ) const;  bool        setTimeGlobalPosition         ( Time        time                );  Time        getTimeGlobalPosition         (                           ) const;  bool        setGlobalPositionLastSee      ( VecPosition p,                                              Time        time                );  VecPosition getGlobalPositionLastSee      (                           ) const;  bool        setTimeGlobalPosDerivedFromSee( Time        time                );  Time        getTimeGlobalPosDerivedFromSee(                           ) const;  bool        setTimeLastSeen               ( Time        time                );  Time        getTimeLastSeen               (                           ) const;};/*****************************************************************************//********************** CLASS FIXEDOBJECT ************************************//*****************************************************************************//*! Class FixedObject contains RoboCup information that is available for    objects that cannot move (flags, goals, lines). No additional information    is added to the superclass Object. */class FixedObject : public Object{public:  // specific methods  VecPosition getGlobalPosition( SideT s, double dGoalWidth = 14.02 ) const;  AngDeg      getGlobalAngle   ( SideT s                                  );  void show                    ( ostream & os = cout                      );};/*****************************************************************************//********************** CLASS DYNAMICOBJECT **********************************//*****************************************************************************//*! Class DynamicObject contains RoboCup information that is available for    objects that can move (players, ball). Different variables are added to    the superclass Object */class DynamicObject: public Object{protected:  // global velocity information  VecPosition vecGlobalVelocity;      /*!< Global velocity of the player     */  Time        timeGlobalVelocity;     /*!< Time of the corresponding velocity*/  // sensor information  double      dRelativeDistanceChange;/*!< Relative distance change          */  double      dRelativeAngleChange;   /*!< Relative angle change             */  Time        timeChangeInformation;  /*!< Time of change information        */public:  DynamicObject( );  // standard get and set methods  bool        setRelativeDistanceChange( double      d,   Time time );  double      getRelativeDistanceChange(                            ) const;  bool        setRelativeAngleChange   ( double      d,   Time time );  double      getRelativeAngleChange   (                            ) const;  bool        setTimeChangeInformation ( Time        time           );  Time        getTimeChangeInformation (                            )  const;  bool        setGlobalVelocity        ( VecPosition v,   Time time );  VecPosition getGlobalVelocity        (                            )  const;  double      getSpeed                 (                            )  const;  bool        setTimeGlobalVelocity    ( Time        time           );  Time        getTimeGlobalVelocity    (                            )  const;};/******************************************************************************//********************** CLASS PLAYEROBJECT ************************************//******************************************************************************//*! Class PlayerObject contains RoboCup information that is available for    players. Different variables are added to the superclass DynamicObject   */class PlayerObject: public DynamicObject{protected:  bool    isKnownPlayer;         /*!< are we sure about player number        */  ObjectT objRangeMin;           /*!< Minimum in range of possible player obj*/  ObjectT objRangeMax;           /*!< Maximum in range of possible player obj*/    bool    isGoalie;              /*!< is this object a goalie                */  AngDeg  angGlobalBodyAngle;    /*!< Global body angle                      */  AngDeg  angGlobalNeckAngle;    /*!< Global neck angle                      */  Time    timeGlobalAngles;      /*!< Server time of global angles           */private:  AngDeg angRelativeBodyAngle;  /*!< Relative body angle to main player */  AngDeg angRelativeNeckAngle;  /*!< Relative neck angle to main player */  Time   timeRelativeAngles;    /*!< Server time of relative angles     */public:  PlayerObject( );  void    show( ostream & os = cout );  void    show( const char * strTeamName, ostream & os = cout );  // standard get and set methods  bool    setPossibleRange     ( ObjectT objMin, ObjectT objMax );  bool    isInRange            ( ObjectT obj                    );    ObjectT getMinRange          (                                );  ObjectT getMaxRange          (                                );    bool    setIsKnownPlayer     ( bool     b                     );  bool    getIsKnownPlayer     (                                ) const;  bool    setIsGoalie          ( bool     b                     );  bool    getIsGoalie          (                                ) const;  bool    setRelativeBodyAngle ( AngDeg   ang,   Time    time   );  AngDeg  getRelativeBodyAngle (                                )  const;  bool    setGlobalBodyAngle   ( AngDeg   ang,   Time    time   );  AngDeg  getGlobalBodyAngle   (                                )  const;  bool    setRelativeNeckAngle ( AngDeg   ang,   Time    time   );  AngDeg  getRelativeNeckAngle (                                )  const;  bool    setGlobalNeckAngle   ( AngDeg   ang,   Time    time   );  AngDeg  getGlobalNeckAngle   (                                )  const;  bool    setTimeRelativeAngles( Time     time                  );  Time    getTimeRelativeAngles(                                ) const;  bool    setTimeGlobalAngles  ( Time     time                  );  Time    getTimeGlobalAngles  (                                ) const;};/******************************************************************************//********************** CLASS BALLOBJECT **************************************//******************************************************************************//*! Class PlayerObject contains RoboCup information that is available for the    ball. No extra variables are added to superclass DynamicObject*/class BallObject: public DynamicObject{public:  BallObject();  void show( ostream & os = cout );};/******************************************************************************//********************** CLASS STAMINA *****************************************//******************************************************************************//*! The following stamina information is stored in this class.     - actual stamina     - recovery, determines how much stamina recovers each cycle, decreases                  below a certain threshold (never increases)     - effort, determines which percentage of dash power is actually used.                  decreases below certain threshold, increases above a higher                  threshold.*/class Stamina{  double m_dStamina;              /*!< Stamina value (>0)                */  double m_dEffort;               /*!< Effort value (0..1)               */  double m_dRecovery;             /*!< Recovery (0..1)                   */public:  Stamina( double dSta = 4000.0, double dEff=1.0, double dRec=1.0 );  void         show        ( ostream & os = cout                     );  // return value how tired an agent is  TiredNessT   getTiredNess( double dRecDecThr,   double dStaminaMax );    // standard get and set methods.  double       getStamina  (                                         ) const;  bool         setStamina  ( double d                                );  double       getEffort   (                                         ) const;  bool         setEffort   ( double d                                );  double       getRecovery (                                         ) const;  bool         setRecovery ( double d                                );};/******************************************************************************//********************** CLASS AGENTOBJECT *************************************//******************************************************************************//*! Class AgentObject contains RoboCup information that is available for the    agent. New variables are declared that extend a normal PlayerObject.*/class AgentObject: public PlayerObject{  ViewAngleT   viewAngle;             /*!< View angle of this agent          */  ViewQualityT viewQuality;           /*!< View quality of this agent        */  Stamina      stamina;               /*!< Stamina (stamina, effort, recovery*/  VecPosition  velSpeedRelToNeck;     /*!< Velocity vector relative to neck  */  AngDeg       angBodyAngleRelToNeck; /*!< Relative angle of body with neck  */  VecPosition  posPositionDifference; /*!< Global pos difference with last see*/public:  AgentObject( double dStaminaMax = 4000 );  void         show( ostream & os = cout );  void         show( const char * strTeamName, ostream & os = cout );  // standard get and set methods  VecPosition  getPositionDifference(                  ) const;  bool         setPositionDifference( VecPosition  v   );  ViewAngleT   getViewAngle         (                  ) const;  bool         setViewAngle         ( ViewAngleT   v   );  ViewQualityT getViewQuality       (                  ) const;  bool         setViewQuality       ( ViewQualityT v   );  Stamina      getStamina           (                  ) const;  bool         setStamina           ( Stamina      sta );  VecPosition  getSpeedRelToNeck    (                  ) const;  bool         setSpeedRelToNeck    ( VecPosition  v   );  bool         setGlobalNeckAngle   ( AngDeg       ang );  AngDeg       getBodyAngleRelToNeck(                  ) const;  bool         setBodyAngleRelToNeck( AngDeg       ang );} ;#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人精品一区二区三区中文字幕| 精品91自产拍在线观看一区| 日韩三级免费观看| 国产精品毛片大码女人| 日韩精品久久理论片| 97久久精品人人爽人人爽蜜臀| 2024国产精品| 视频一区欧美日韩| 欧美性猛片xxxx免费看久爱| 欧美国产日韩a欧美在线观看| 日韩黄色免费电影| 精品视频一区二区不卡| 亚洲天堂成人网| 成人免费视频视频在线观看免费 | 日韩电影在线免费| 在线观看日韩国产| 亚洲欧美另类久久久精品2019| 国产在线播放一区三区四| 欧美一区二区三区婷婷月色| 亚洲伦在线观看| 91丝袜高跟美女视频| 中文字幕一区二区三区在线不卡 | 在线视频综合导航| 国产精品久久久久久久久图文区| 国产一区二区在线视频| 欧美岛国在线观看| 国内偷窥港台综合视频在线播放| 欧美肥妇bbw| 日韩黄色在线观看| 88在线观看91蜜桃国自产| 午夜成人免费电影| 91精品国产aⅴ一区二区| 性久久久久久久| 91精品在线麻豆| 老司机精品视频导航| 日韩精品在线看片z| 麻豆91精品91久久久的内涵| 欧美一区二区三区成人| 久久se这里有精品| 久久精品男人的天堂| 国产999精品久久久久久绿帽| 欧美激情一区二区三区蜜桃视频| 国产suv精品一区二区三区| 国产精品免费观看视频| 99久久精品国产导航| 亚洲精品日产精品乱码不卡| 在线免费亚洲电影| 水蜜桃久久夜色精品一区的特点 | 欧美在线free| 美女在线观看视频一区二区| 精品国产网站在线观看| 成人免费视频网站在线观看| 最新久久zyz资源站| 欧美在线一二三| 老司机精品视频一区二区三区| 久久这里只有精品视频网| 成人免费精品视频| 亚洲第一成年网| 久久亚洲一区二区三区四区| 不卡视频免费播放| 亚洲国产日产av| 精品成人佐山爱一区二区| av在线综合网| 美腿丝袜在线亚洲一区| 国产精品久久久久影院色老大| 欧美日韩专区在线| 国产高清不卡二三区| 一区二区三区精品视频| 精品区一区二区| 色婷婷激情久久| 韩国女主播一区| 一区二区三区国产精华| 337p日本欧洲亚洲大胆精品 | 亚洲欧美日韩电影| 日韩欧美久久久| 色欧美日韩亚洲| 国产精品911| 日本aⅴ亚洲精品中文乱码| 中文字幕va一区二区三区| 欧美日韩精品电影| 99re视频这里只有精品| 久久精品99国产精品日本| 一区二区三区视频在线观看| 2019国产精品| 欧美精品久久99久久在免费线| 成人小视频免费在线观看| 免费看精品久久片| 午夜电影网一区| 亚洲人成7777| 国产精品嫩草影院com| 欧美成人三级电影在线| 欧美日韩一区二区三区高清| 成人黄页在线观看| 国产精品456露脸| 美女视频黄免费的久久| 亚洲韩国精品一区| 亚洲色图视频网| 国产欧美精品区一区二区三区| 欧美一区二区视频观看视频 | 日韩欧美二区三区| 欧美无砖专区一中文字| 色激情天天射综合网| 国产aⅴ综合色| 国产一区美女在线| 国产毛片精品视频| 老司机一区二区| 国内精品视频一区二区三区八戒 | 亚洲人吸女人奶水| 国产精品美女www爽爽爽| 欧美激情综合网| 国产精品视频一区二区三区不卡| 久久久另类综合| 日本一区二区三区电影| 国产女人水真多18毛片18精品视频| 欧美大黄免费观看| 精品国产乱码久久久久久久| 欧美变态口味重另类| 久久综合色一综合色88| 国产午夜精品一区二区三区视频| 久久久激情视频| 国产精品美女一区二区| 国产精品不卡在线观看| 亚洲欧美二区三区| 亚瑟在线精品视频| 视频一区二区中文字幕| 日本成人在线不卡视频| 国内精品国产成人| 成人免费视频caoporn| 色综合久久久久| 欧美精品一级二级三级| 日韩一区二区三区视频| 日韩精品专区在线影院观看| 久久久久综合网| 亚洲男人天堂一区| 性久久久久久久| 国产在线播放一区二区三区| 成人教育av在线| 欧美日韩性生活| 欧美变态口味重另类| 中文字幕在线不卡| 日韩成人一级大片| 成人永久看片免费视频天堂| 在线国产电影不卡| 日韩视频免费观看高清在线视频| 欧美激情在线看| 五月综合激情网| 成人午夜av电影| 欧美精品第1页| 国产精品久久久一本精品| 午夜精品久久久久影视| 成人性生交大片| 日韩色视频在线观看| 国产精品视频免费| 免费看精品久久片| 色综合久久综合网97色综合| 欧美久久久久久蜜桃| 国产精品伦一区二区三级视频| 日日夜夜免费精品| 不卡一区二区三区四区| 日韩精品一区二区三区视频| 亚洲三级电影网站| 国模无码大尺度一区二区三区| 99精品视频一区二区三区| 欧美一级xxx| 一区二区三区电影在线播| 国产一区二区三区四区在线观看| 在线精品视频免费播放| 欧美高清在线视频| 久久国产精品99久久人人澡| 91看片淫黄大片一级在线观看| 欧美成人精精品一区二区频| 亚洲欧美激情小说另类| 国产激情一区二区三区四区| 91麻豆精品91久久久久同性| 亚洲婷婷在线视频| 成人午夜视频免费看| 精品国产一二三| 美女诱惑一区二区| 69堂亚洲精品首页| 夜夜嗨av一区二区三区四季av| 国产91精品精华液一区二区三区| 欧美成人欧美edvon| 免费高清在线一区| 欧美日韩国产a| 亚洲最新在线观看| 一本色道久久综合精品竹菊| 中文乱码免费一区二区| 国产精品一区二区x88av| 精品国产乱子伦一区| 免费看精品久久片| 欧美一区二区三区免费| 日韩国产欧美视频| 91精品国产高清一区二区三区蜜臀| 亚洲一区二区综合| 欧美午夜在线观看| 一区二区三区日韩精品视频| 日本高清不卡aⅴ免费网站| 亚洲乱码国产乱码精品精98午夜 | 亚洲视频在线一区观看| 国产成人免费在线视频|