📄 visualsensor.h
字号:
: public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t { }; struct player_high_close_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t { }; struct flag_high_close_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t { }; struct goal_high_close_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t { }; struct player_high_tfar_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t, public VisualSensor_v6::obj_name_data_t { }; struct ball_high_ufar_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t { }; struct player_high_ufar_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t, public VisualSensor_v6::obj_name_data_t { }; struct flag_high_ufar_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t, public VisualSensor_v6::obj_name_data_t { }; struct goal_high_ufar_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t, public VisualSensor_v6::obj_name_data_t { }; struct ball_high_normal_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t, public VisualSensor_v6::obj_vel_data_t { }; struct player_high_normal_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t, public VisualSensor_v6::obj_vel_data_t, public VisualSensor_v6::obj_name_data_t, public VisualSensor_v6::obj_body_dir_data_t, public VisualSensor_v6::obj_head_dir_data_t { }; struct flag_high_normal_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t, public VisualSensor_v6::obj_vel_data_t, public VisualSensor_v6::obj_name_data_t { }; struct goal_high_normal_data_t : public VisualSensor_v6::obj_dir_data_t, public VisualSensor_v6::obj_dist_data_t, public VisualSensor_v6::obj_vel_data_t, public VisualSensor_v6::obj_name_data_t { }; struct line_high_normal_data_t : public VisualSensor_v1::obj_dir_data_t, public VisualSensor_v1::obj_dist_data_t, public VisualSensor_v1::obj_name_data_t { }; struct ball_high_data_t { VisualSensor_v6::range_t M_range; union { VisualSensor_v6::ball_high_close_data_t M_close_data; VisualSensor_v6::ball_high_normal_data_t M_normal_data; VisualSensor_v6::ball_high_ufar_data_t M_ufar_data; }; void set ( const MPObject& ball, const Player& player ); }; struct player_high_data_t { VisualSensor_v6::range_t M_range; union { VisualSensor_v6::player_high_close_data_t M_close_data; VisualSensor_v6::player_high_normal_data_t M_normal_data; VisualSensor_v6::player_high_ufar_data_t M_ufar_data; VisualSensor_v6::player_high_tfar_data_t M_tfar_data; }; void set ( const Player& observed_player, const Player& player ); }; struct flag_high_data_t { VisualSensor_v6::range_t M_range; union { VisualSensor_v6::flag_high_close_data_t M_close_data; VisualSensor_v6::flag_high_normal_data_t M_normal_data; VisualSensor_v6::flag_high_ufar_data_t M_ufar_data; }; void set ( const PObject& flag, const Player& player ); }; struct goal_high_data_t { VisualSensor_v6::range_t M_range; union { VisualSensor_v6::goal_high_close_data_t M_close_data; VisualSensor_v6::goal_high_normal_data_t M_normal_data; VisualSensor_v6::goal_high_ufar_data_t M_ufar_data; }; void set ( const PObject& flag, const Player& player ); }; struct line_high_data_t { VisualSensor_v6::range_t M_range; VisualSensor_v6::line_high_normal_data_t M_normal_data; void set ( const PObject& line, const Player& player ); bool operator<( const line_high_data_t& data ) const { return M_normal_data < data.M_normal_data; } }; struct low_data_t { int M_time; std::list< VisualSensor_v6::goal_low_data_t > M_goals; std::list< VisualSensor_v6::flag_low_data_t > M_flags; std::list< VisualSensor_v6::ball_low_data_t > M_balls; std::list< VisualSensor_v6::player_low_data_t > M_players; std::list< VisualSensor_v6::line_low_data_t > M_lines; void set ( const Stadium& stadium, const Player& player ); }; struct high_data_t { int M_time; std::list< VisualSensor_v6::goal_high_data_t > M_goals; std::list< VisualSensor_v6::flag_high_data_t > M_flags; std::list< VisualSensor_v6::player_high_data_t > M_players; std::list< VisualSensor_v6::ball_high_data_t > M_balls; std::list< VisualSensor_v6::line_high_data_t > M_lines; void set ( const Stadium& stadium, const Player& player ); }; virtual void send ( const VisualSensor_v6::low_data_t& data ) = 0; virtual void send ( const VisualSensor_v6::high_data_t& data ) = 0;};std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::ball_low_close_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::ball_low_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::ball_low_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_low_close_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_low_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_low_ufar_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_low_tfar_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_low_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::flag_low_close_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::flag_low_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::flag_low_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::goal_low_close_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::goal_low_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::goal_low_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::line_low_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::line_low_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::ball_high_close_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::ball_high_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::ball_high_ufar_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::ball_high_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_high_close_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_high_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_high_ufar_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_high_tfar_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::player_high_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::flag_high_close_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::flag_high_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::flag_high_ufar_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::flag_high_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::goal_high_close_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::goal_high_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::goal_high_ufar_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::goal_high_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::line_high_normal_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::line_high_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::low_data_t& data );std::ostream& toStr ( std::ostream& o, const VisualSensor_v6::high_data_t& data );//===================================================================//// CLASS: VisualSensor_v7//// DESC: Class for the version 7 visual protocol. This version// fixed a bug in the generation of directions in that they// were truncated to int, rather than rounded. This meant// error in the direction pointed was at most times between// -0.5 and +0.5 degrees, but occationally between -1.0 and// +1.0 degrees and at other times exact. With the new mehtod// of rounding, the error is allways between -0.5 and +0.5.////===================================================================class VisualSensor_v7 : public VisualSensor_v6{public: struct obj_dir_data_t : public VisualSensor_v6::obj_dir_data_t { static int calcDegDir ( const double& rad ); static int calcDir ( const PObject& obj, const Player& player ); static int calcLineDegDir ( const double& sight_2_line_ang ); }; struct obj_body_dir_data_t : public VisualSensor_v6::obj_body_dir_data_t { static int calcBodyDir ( const Player& observed_player, const Player& player ); }; struct obj_head_dir_data_t : public VisualSensor_v6::obj_head_dir_data_t { static int calcHeadDir ( const Player& observed_player, const Player& player ); }; struct ball_low_close_data_t : public VisualSensor_v7::obj_dir_data_t { }; struct player_low_close_data_t : public VisualSensor_v7::obj_dir_data_t { }; struct flag_low_close_data_t : public VisualSensor_v7::obj_dir_data_t { }; struct goal_low_close_data_t : public VisualSensor_v7::obj_dir_data_t { }; struct ball_low_normal_data_t : public VisualSensor_v7::obj_dir_data_t { }; struct player_low_tfar_data_t : public VisualSensor_v7::obj_dir_data_t, public VisualSensor_v7::obj_name_data_t { }; struct player_low_ufar_data_t : public VisualSensor_v7::obj_dir_data_t, public VisualSensor_v7::obj_name_data_t { }; struct player_low_normal_data_t : public VisualSensor_v7::obj_dir_data_t, public VisualSensor_v7::obj_name_data_t { }; struct flag_low_normal_data_t : public VisualSensor_v7::obj_dir_data_t, public VisualSensor_v7::obj_name_data_t { }; struct goal_low_normal_data_t : public VisualSensor_v7::obj_dir_data_t, public VisualSensor_v7::obj_name_data_t { }; struct line_low_normal_data_t : public VisualSensor_v7::obj_dir_data_t, public VisualSensor_v7::obj_name_data_t { }; struct ball_low_data_t { VisualSensor_v7::range_t M_range; union { VisualSensor_v7::ball_low_close_data_t M_close_data; VisualSensor_v7::ball_low_normal_data_t M_normal_data; }; void set ( const MPObject& ball, const Player& player ); }; struct player_low_data_t { VisualSensor_v7::range_t M_range; union { VisualSensor_v7::player_low_close_data_t M_close_data; VisualSensor_v7::player_low_normal_data_t M_normal_data; VisualSensor_v7::player_low_ufar_data_t M_ufar_data; VisualSensor_v7::player_low_tfar_data_t M_tfar_data; }; void set ( const Player& observed_player, const Player& player ); }; struct flag_low_data_t { VisualSensor_v7::range_t M_range; union { VisualSensor_v7::flag_low_close_data_t M_close_data; VisualSensor_v7::flag_low_normal_data_t M_normal_data; }; void set ( const PObject& flag, const Player& player ); }; struct goal_low_data_t { VisualSensor_v7::range_t M_range; union { VisualSensor_v7::goal_low_close_data_t M_close_data; VisualSensor_v7::goal_low_normal_data_t M_normal_data; };
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -