Skip to content

Commit

Permalink
consai_visualizer_msgs->crane_visualization_interfaces (#661)
Browse files Browse the repository at this point in the history
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
  • Loading branch information
HansRobo and pre-commit-ci[bot] authored Dec 24, 2024
1 parent 07b3044 commit 95273e6
Show file tree
Hide file tree
Showing 29 changed files with 207 additions and 200 deletions.
2 changes: 1 addition & 1 deletion consai_ros2/consai_visualizer/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<buildtool_depend>ament_cmake</buildtool_depend>

<exec_depend>ament_index_python</exec_depend>
<exec_depend>consai_visualizer_msgs</exec_depend>
<exec_depend>crane_visualization_interfaces</exec_depend>
<exec_depend version_gte="0.2.19">python_qt_binding</exec_depend>
<exec_depend>rclpy</exec_depend>
<exec_depend>rqt_gui</exec_depend>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@
import math
from typing import Dict

from consai_visualizer_msgs.msg import Color as VisColor
from consai_visualizer_msgs.msg import Objects as VisObjects
from consai_visualizer_msgs.msg import (
from crane_visualization_interfaces.msg import Color as VisColor
from crane_visualization_interfaces.msg import Objects as VisObjects
from crane_visualization_interfaces.msg import (
ShapeAnnotation,
ShapeArc,
ShapeCircle,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@

from ament_index_python.resources import get_resource
from consai_visualizer.field_widget import FieldWidget
from consai_visualizer_msgs.msg import ObjectsArray
from crane_msgs.msg import PingStatusArray, RobotFeedbackArray
from crane_visualization_interfaces.msg import ObjectsArray
from python_qt_binding import loadUi
from python_qt_binding.QtCore import QPointF, Qt, QTimer
from python_qt_binding.QtWidgets import QTreeWidgetItem, QWidget
Expand Down
87 changes: 0 additions & 87 deletions consai_ros2/consai_visualizer_msgs/CMakeLists.txt

This file was deleted.

This file was deleted.

2 changes: 1 addition & 1 deletion crane_game_analyzer/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
<buildtool_depend>ament_cmake_auto</buildtool_depend>

<depend>closest_point_vendor</depend>
<depend>consai_visualizer_msgs</depend>
<depend>crane_msg_wrappers</depend>
<depend>crane_msgs</depend>
<depend>crane_visualization_interfaces</depend>
<depend>rclcpp</depend>
<depend>rclcpp_components</depend>
<depend>std_msgs</depend>
Expand Down
2 changes: 1 addition & 1 deletion crane_local_planner/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@

<depend>backward_ros</depend>
<depend>closest_point_vendor</depend>
<depend>consai_visualizer_msgs</depend>
<depend>crane_msg_wrappers</depend>
<depend>crane_msgs</depend>
<depend>crane_visualization_interfaces</depend>
<depend>rclcpp</depend>
<depend>rclcpp_components</depend>
<depend>rvo2_vendor</depend>
Expand Down
2 changes: 1 addition & 1 deletion crane_play_switcher/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@

<buildtool_depend>ament_cmake_auto</buildtool_depend>

<depend>consai_visualizer_msgs</depend>
<depend>crane_msg_wrappers</depend>
<depend>crane_msgs</depend>
<depend>crane_visualization_interfaces</depend>
<depend>rclcpp</depend>
<depend>rclcpp_components</depend>
<depend>robocup_ssl_msgs</depend>
Expand Down
2 changes: 1 addition & 1 deletion crane_robot_receiver/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
<buildtool_depend>ament_cmake_auto</buildtool_depend>

<depend>boost</depend>
<depend>consai_visualizer_msgs</depend>
<depend>crane_msg_wrappers</depend>
<depend>crane_msgs</depend>
<depend>crane_visualization_interfaces</depend>
<depend>rclcpp</depend>
<depend>std_msgs</depend>

Expand Down
2 changes: 1 addition & 1 deletion crane_robot_skills/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@
<buildtool_depend>ament_cmake_auto</buildtool_depend>

<depend>boost</depend>
<depend>consai_visualizer_msgs</depend>
<depend>crane_basics</depend>
<depend>crane_game_analyzer</depend>
<depend>crane_msg_wrappers</depend>
<depend>crane_msgs</depend>
<depend>crane_visualization_interfaces</depend>
<depend>magic_enum</depend>
<depend>rclcpp</depend>
<depend>rclcpp_components</depend>
Expand Down
2 changes: 1 addition & 1 deletion crane_sender/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@

<buildtool_depend>ament_cmake_auto</buildtool_depend>

<depend>consai_visualizer_msgs</depend>
<depend>crane_basics</depend>
<depend>crane_msg_wrappers</depend>
<depend>crane_msgs</depend>
<depend>crane_visualization_interfaces</depend>
<depend>libboost-dev</depend>
<depend>rclcpp</depend>
<depend>rclcpp_components</depend>
Expand Down
2 changes: 1 addition & 1 deletion crane_simple_ai/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@

<buildtool_depend>ament_cmake_auto</buildtool_depend>

<depend>consai_visualizer_msgs</depend>
<depend>crane_msg_wrappers</depend>
<depend>crane_msgs</depend>
<depend>crane_robot_skills</depend>
<depend>crane_visualization_interfaces</depend>
<depend>libqt5-core</depend>
<depend>libqt5-gui</depend>
<depend>libqt5-widgets</depend>
Expand Down
68 changes: 68 additions & 0 deletions crane_visualization_interfaces/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
cmake_minimum_required(VERSION 3.8)
project(crane_visualization_interfaces)

# Default to C++20
if(NOT CMAKE_CXX_STANDARD)
set(CMAKE_CXX_STANDARD 20)
endif()

if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
add_compile_options(-Wall -Wextra -Wpedantic -g)
endif()

# find dependencies
find_package(ament_cmake_auto REQUIRED)
ament_auto_find_build_dependencies()

find_package(Protobuf REQUIRED)

add_subdirectory(proto)

### proto -> ROS msg
proto2ros_generate(
${PROJECT_NAME}_messages_gen
PROTOS proto/ObjectsArray.proto
IMPORT_DIRS proto
INTERFACES_OUT_VAR ros_messages
PYTHON_OUT_VAR py_sources
CPP_OUT_VAR cpp_sources
INCLUDE_OUT_VAR cpp_include_dir
APPEND_PYTHONPATH "${CMAKE_CURRENT_BINARY_DIR}/proto"
DEPENDS ${PROJECT_NAME}_proto_gen
)

## ROS msg -> C++ / Python
rosidl_generate_interfaces(
${PROJECT_NAME} ${ros_messages}
DEPENDENCIES builtin_interfaces proto2ros
)
add_dependencies(${PROJECT_NAME} ${PROJECT_NAME}_messages_gen)

## 変換ライブラリ
ament_auto_add_library(${PROJECT_NAME}_conversions SHARED ${cpp_sources} src/manual_conversions.cpp)
target_include_directories(${PROJECT_NAME}_conversions PUBLIC
"$<BUILD_INTERFACE:${cpp_include_dir}>"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/proto>"
"$<INSTALL_INTERFACE:include/${PROJECT_NAME}>"
)
rosidl_get_typesupport_target(${PROJECT_NAME}_cpp_msgs ${PROJECT_NAME} "rosidl_typesupport_cpp")
target_link_libraries(${PROJECT_NAME}_conversions
${${PROJECT_NAME}_cpp_msgs} ${PROJECT_NAME}_proto protobuf::libprotobuf)

rosidl_generated_python_package_add(
${PROJECT_NAME}_additional_modules
MODULES ${proto_py_sources} ${py_sources}
PACKAGES ${PROJECT_NAME}
DESTINATION ${PROJECT_NAME}
)

# C++ファイルインストール
set(cpp_headers ${cpp_sources} ${proto_cpp_sources})
list(FILTER cpp_headers INCLUDE REGEX ".*\.(hpp|h)$")
install(
FILES ${cpp_headers}
DESTINATION include/${PROJECT_NAME}/${PROJECT_NAME}/
)

ament_auto_package()
6 changes: 6 additions & 0 deletions crane_visualization_interfaces/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# crane_visualization_interfaces

Boston Dynamicsの`proto2ros`を使ってprotoファイルからROSメッセージと相互変換関数を生成するパッケージ

生成されるメッセージの内容は以下とほぼ同じです。
<https://github.com/SSL-Roots/consai_ros2/tree/main/consai_visualizer_msgs/msg>
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// Copyright (c) 2024 ibis-ssl
//
// Use of this source code is governed by an MIT-style
// license that can be found in the LICENSE file or at
// https://opensource.org/licenses/MIT.

#ifndef CRANE_VISUALIZATION_INTERFACES__MANUAL_CONVERSIONS_HPP_
#define CRANE_VISUALIZATION_INTERFACES__MANUAL_CONVERSIONS_HPP_

// IMPLEMENT MANUAL CONVERSIONS HERE

#endif // CRANE_VISUALIZATION_INTERFACES__MANUAL_CONVERSIONS_HPP_
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
<?xml version="1.0"?>
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>consai_visualizer_msgs</name>
<name>crane_visualization_interfaces</name>
<version>0.1.0</version>
<description>Message types for CON-SAI visualization</description>
<maintainer email="macakasit@gmail.com">shotaak</maintainer>
<license>Apache License 2.0</license>
<maintainer email="ibis.ssl.team@gmail.com">ibis-ssl</maintainer>
<license>MIT</license>

<buildtool_depend>ament_cmake</buildtool_depend>
<buildtool_depend>ament_cmake_auto</buildtool_depend>
<buildtool_depend>rosidl_default_generators</buildtool_depend>

<depend>builtin_interfaces</depend>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
find_package(Protobuf REQUIRED)

protobuf_generate(
LANGUAGE python
OUT_VAR proto_py_sources
PROTOS ObjectsArray.proto
LANGUAGE python
OUT_VAR proto_py_sources
PROTOS ObjectsArray.proto
)

protobuf_generate(
LANGUAGE cpp
OUT_VAR proto_cpp_sources
PROTOS ObjectsArray.proto
LANGUAGE cpp
OUT_VAR proto_cpp_sources
PROTOS ObjectsArray.proto
)

add_library(${PROJECT_NAME}_proto SHARED ${proto_cpp_sources} )
add_library(${PROJECT_NAME}_proto SHARED ${proto_cpp_sources})
#target_include_directories(${PROJECT_NAME}_proto PUBLIC "${CMAKE_CURRENT_BINARY_DIR}")
target_compile_options(${PROJECT_NAME}_proto PUBLIC -Wno-deprecated-declarations)
target_link_libraries(${PROJECT_NAME}_proto protobuf::libprotobuf)

add_custom_target(
${PROJECT_NAME}_proto_gen ALL DEPENDS
${proto_py_sources}
${proto_cpp_sources}
${PROJECT_NAME}_proto_gen ALL DEPENDS
${proto_py_sources}
${proto_cpp_sources}
)

set(PROTO_OUT_DIR "${CMAKE_CURRENT_BINARY_DIR}" PARENT_SCOPE)
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
// This proto schema is based on https://github.com/SSL-Roots/consai_ros2/tree/main/consai_visualizer_msgs/msg

syntax = "proto3";

package visualizer;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,6 @@
// license that can be found in the LICENSE file or at
// https://opensource.org/licenses/MIT.

// NOTE: 名前もmanual_conversions.cppで固定
#include <consai_visualizer_msgs/manual_conversions.hpp>
#include <crane_visualization_interfaces/manual_conversions.hpp>

// IMPLEMENT MANUAL CONVERSIONS HERE
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@
#include <robocup_ssl_msgs/ssl_vision_geometry.pb.h>
#include <robocup_ssl_msgs/ssl_vision_wrapper_tracked.pb.h>

#include <consai_visualizer_msgs/msg/objects_array.hpp>
#include <crane_visualization_interfaces/msg/objects_array.hpp>
#include <rclcpp/rclcpp.hpp>
#include <robocup_ssl_msgs/msg/referee.hpp>

namespace crane
{

using VisualizerObjects = consai_visualizer_msgs::msg::Objects;
using VisualizerObjectsArray = consai_visualizer_msgs::msg::ObjectsArray;
using VisualizerObjects = crane_visualization_interfaces::msg::Objects;
using VisualizerObjectsArray = crane_visualization_interfaces::msg::ObjectsArray;
using Referee = robocup_ssl_msgs::msg::Referee;

class VisualizationDataHandler
Expand Down
Loading

0 comments on commit 95273e6

Please sign in to comment.