From b14c8a9a7c18870f8618bbfec01927f7c105f29f Mon Sep 17 00:00:00 2001 From: Kotaro Yoshimoto Date: Thu, 30 Jan 2025 22:05:38 +0900 Subject: [PATCH] =?UTF-8?q?Attacker=E3=81=8C=E9=96=93=E9=81=95=E3=81=A3?= =?UTF-8?q?=E3=81=9FID=E3=82=92=E9=81=B8=E6=8A=9E=E3=81=97=E3=81=A6?= =?UTF-8?q?=E3=81=97=E3=81=BE=E3=81=86=E3=83=90=E3=82=B0=E3=82=92=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=20(#713)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../crane_game_analyzer/kick_event_detector.hpp | 14 ++------------ .../attacker_skill_planner.hpp | 9 ++------- .../src/crane_visualization_aggregator_node.cpp | 2 +- 3 files changed, 5 insertions(+), 20 deletions(-) diff --git a/crane_game_analyzer/include/crane_game_analyzer/kick_event_detector.hpp b/crane_game_analyzer/include/crane_game_analyzer/kick_event_detector.hpp index bc0e50810..da4a171d0 100644 --- a/crane_game_analyzer/include/crane_game_analyzer/kick_event_detector.hpp +++ b/crane_game_analyzer/include/crane_game_analyzer/kick_event_detector.hpp @@ -58,7 +58,6 @@ class KickEventDetector // print detected bots std::optional kick_event_origin = std::nullopt; for (const auto & id : detected_bots.friends) { - RCLCPP_INFO_STREAM(rclcpp::get_logger("aaaa"), "Detected friend: " << static_cast(id)); SvgCircleBuilder circle_builder; circle_builder.center(world_model.getOurRobot(id)->pose.pos) .radius(0.5) @@ -71,7 +70,6 @@ class KickEventDetector kick_event_origin.emplace(ros_clock.now(), world_model.ball.pos, RobotIdentifier{true, id}); } for (const auto & id : detected_bots.enemies) { - RCLCPP_INFO_STREAM(rclcpp::get_logger("aaaa"), "Detected enemy: " << static_cast(id)); SvgCircleBuilder circle_builder; circle_builder.center(world_model.getTheirRobot(id)->pose.pos) .radius(0.5) @@ -92,14 +90,6 @@ class KickEventDetector // キック中断判定 kick_history.emplace_back(ongoing_kick_origin.value(), world_model.ball.pos); ongoing_kick_origin = std::nullopt; - SvgCircleBuilder circle_builder; - circle_builder.center(world_model.ball.pos) - .radius(3.5) - .stroke("green") - .fill("black") - .strokeWidth(2); - visualizer->add(circle_builder.getSvgString()); - // visualizer->addCircle(world_model.ball.pos, 3.5, 2, "green", "black", 1.0, "EVENT"); } } @@ -108,8 +98,8 @@ class KickEventDetector SvgLineBuilder line_builder; line_builder.start(ongoing_kick_origin.value().position) .end(world_model.ball.pos) - .stroke("red") - .strokeWidth(2); + .stroke("red", 0.3) + .strokeWidth(200); visualizer->add(line_builder.getSvgString()); // visualizer->addTube( // world_model.ball.pos, ongoing_kick_origin.value().position, diff --git a/session/crane_planner_plugins/include/crane_planner_plugins/attacker_skill_planner.hpp b/session/crane_planner_plugins/include/crane_planner_plugins/attacker_skill_planner.hpp index 89d1c6ad7..5f34bda97 100644 --- a/session/crane_planner_plugins/include/crane_planner_plugins/attacker_skill_planner.hpp +++ b/session/crane_planner_plugins/include/crane_planner_plugins/attacker_skill_planner.hpp @@ -82,11 +82,8 @@ class AttackerSkillPlanner : public PlannerBase const std::unordered_map & prev_roles, PlannerContext & context) -> std::vector override { - std::cout << "AttackerSkillPlanner::getSelectedRobots: " << selectable_robots << std::endl; if (auto our_frontier = world_model->getOurFrontier(); our_frontier && ranges::contains(selectable_robots, our_frontier->robot->id)) { - std::cout << "有効なフロンティア、" << static_cast(our_frontier->robot->id) << "を選択" - << std::endl; auto base = std::make_shared("attacker", our_frontier->robot->id, world_model); skill = std::make_shared(base); @@ -101,13 +98,11 @@ class AttackerSkillPlanner : public PlannerBase }, prev_roles, context); if (not selected_robots.empty()) { - std::cout << "ボールに一番近いロボット、" << static_cast(selected_robots.front()) - << "を選択" << std::endl; auto base = std::make_shared( - "attacker", selectable_robots.front(), world_model); + "attacker", selected_robots.front(), world_model); skill = std::make_shared(base); } - return selected_robots; + return {selected_robots.front()}; } } }; diff --git a/utility/crane_visualization_aggregator/src/crane_visualization_aggregator_node.cpp b/utility/crane_visualization_aggregator/src/crane_visualization_aggregator_node.cpp index 81021ded1..c79777ecc 100644 --- a/utility/crane_visualization_aggregator/src/crane_visualization_aggregator_node.cpp +++ b/utility/crane_visualization_aggregator/src/crane_visualization_aggregator_node.cpp @@ -29,7 +29,7 @@ class VisualizationAggregator : public rclcpp::Node }); publisher = create_publisher("/aggregated_svgs", 10); - timer = create_wall_timer(std::chrono::milliseconds(100), [this]() { + timer = create_wall_timer(std::chrono::milliseconds(16), [this]() { crane_visualization_interfaces::msg::SvgLayerArray msg; for (const auto & [layer, primitives] : layers) {