Skip to content

Commit

Permalink
Rebase from 'release/noetic/message_tf_frame_transformer'
Browse files Browse the repository at this point in the history
  • Loading branch information
lreiher committed Jun 10, 2023
1 parent 27aac41 commit 7523889
Show file tree
Hide file tree
Showing 13 changed files with 75 additions and 133 deletions.
28 changes: 28 additions & 0 deletions .github/workflows/docker-ros.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: docker-ros

on: push

jobs:

ros:
runs-on: ubuntu-latest
steps:
- uses: ika-rwth-aachen/[email protected]
with:
image-tag: ros
base-image: rwthika/ros:latest
command: rosrun message_tf_frame_transformer message_tf_frame_transformer
platform: amd64,arm64
target: run

ros2:
runs-on: ubuntu-latest
steps:
- uses: ika-rwth-aachen/[email protected]
with:
image-tag: ros2
base-image: rwthika/ros2:latest
command: ros2 run message_tf_frame_transformer message_tf_frame_transformer
platform: amd64,arm64
target: run
enable-push-as-latest: 'true'
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Build
name: industrial_ci

on: push

Expand All @@ -11,6 +11,7 @@ jobs:
ROS_DISTRO:
- noetic
- humble
- iron
- rolling
ROS_REPO:
- testing
Expand Down
11 changes: 11 additions & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Changelog for package message_tf_frame_transformer
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

1.1.0 (2023-06-10)
------------------
* integrate docker-ros
* add support for ros2 iron
* add remark for pointcloud2
closes #1
* Contributors: Lennart Reiher
54 changes: 33 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,17 @@
<p align="center">
<img src="https://img.shields.io/github/v/release/ika-rwth-aachen/message_tf_frame_transformer"/>
<img src="https://img.shields.io/github/license/ika-rwth-aachen/message_tf_frame_transformer"/>
<a href="https://github.com/ika-rwth-aachen/message_tf_frame_transformer/actions/workflows/build.yml"><img src="https://github.com/ika-rwth-aachen/message_tf_frame_transformer/actions/workflows/build.yml/badge.svg"/></a>
<a href="https://github.com/ika-rwth-aachen/message_tf_frame_transformer/actions/workflows/industrial_ci.yml"><img src="https://github.com/ika-rwth-aachen/message_tf_frame_transformer/actions/workflows/industrial_ci.yml/badge.svg"/></a>
<a href="https://github.com/ika-rwth-aachen/message_tf_frame_transformer/actions/workflows/docker-ros.yml"><img src="https://github.com/ika-rwth-aachen/message_tf_frame_transformer/actions/workflows/docker-ros.yml/badge.svg"/></a>
<img src="https://img.shields.io/badge/ROS-noetic-blueviolet"/>
<img src="https://img.shields.io/badge/ROS 2-humble|rolling-blueviolet"/>
<img src="https://img.shields.io/badge/ROS 2-humble|iron|rolling-blueviolet"/>
<a href="https://github.com/ika-rwth-aachen/message_tf_frame_transformer"><img src="https://img.shields.io/github/stars/ika-rwth-aachen/message_tf_frame_transformer?style=social"/></a>
</p>

The *message_tf_frame_transformer* package provides a ROS / ROS 2 node(let) to transform ROS messages of arbitrary type to a different coordinate frame. This can be helpful if you cannot or do not want to modify the source code of other ROS nodes that require your data to be valid in a specific coordinate frame. Simply launch the *message_tf_frame_transformer* node and transform arbitrary ROS message to a target coordinate frame.

- [Installation](#installation)
- [docker-ros](#docker-ros)
- [Usage](#usage)
- [Supported Message Types](#supported-message-types)
- [Nodes/Nodelets](#nodesnodelets)
Expand All @@ -20,8 +22,6 @@ The *message_tf_frame_transformer* package provides a ROS / ROS 2 node(let) to t

## Installation

> :warning: At the time of writing, the ROS package has not yet been released to the public package manager repositories yet. In case the installation fails, you have to install the package from source for now.
The *message_tf_frame_transformer* package is released as an official ROS / ROS 2 package and can easily be installed via a package manager.

```bash
Expand All @@ -43,6 +43,18 @@ colcon build --packages-up-to message_tf_frame_transformer --cmake-args -DCMAKE_
catkin build -DCMAKE_BUILD_TYPE=Release message_tf_frame_transformer
```

### docker-ros

*message_tf_frame_transformer* is also available as a Docker image, containerized through [*docker-ros*](https://github.com/ika-rwth-aachen/docker-ros).

```bash
# ROS
docker run --rm ghcr.io/ika-rwth-aachen/message_tf_frame_transformer:ros

# ROS 2
docker run --rm ghcr.io/ika-rwth-aachen/message_tf_frame_transformer:ros2
```


## Usage

Expand Down Expand Up @@ -94,23 +106,23 @@ roslaunch message_tf_frame_transformer message_tf_frame_transformer.launch \

The *message_tf_frame_transformer* package is able to support any ROS message type that integrates with [`tf2::doTransform`](http://wiki.ros.org/tf2/Tutorials/Transforming%20your%20own%20datatypes). Currently, the following message types are explicitly supported.

| ROS | ROS 2 |
| --- | --- |
| [`geometry_msgs/Point`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Point.html) | [`geometry_msgs/msg/Point`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Point.html) |
| [`geometry_msgs/PointStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/PointStamped.html) | [`geometry_msgs/msg/PointStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/PointStamped.html) |
| [`geometry_msgs/Pose`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Pose.html) | [`geometry_msgs/msg/Pose`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Pose.html) |
| [`geometry_msgs/PoseStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/PoseStamped.html) | [`geometry_msgs/msg/PoseStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/PoseStamped.html) |
| [`geometry_msgs/PoseWithCovariance`](https://docs.ros.org/en/api/geometry_msgs/html/msg/PoseWithCovariance.html) | [`geometry_msgs/msg/PoseWithCovariance`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/PoseWithCovariance.html) |
| [`geometry_msgs/PoseWithCovarianceStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/PoseWithCovarianceStamped.html) | [`geometry_msgs/msg/PoseWithCovarianceStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/PoseWithCovarianceStamped.html) |
| [`geometry_msgs/Quaternion`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Quaternion.html) | [`geometry_msgs/msg/Quaternion`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Quaternion.html) |
| [`geometry_msgs/QuaternionStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/QuaternionStamped.html) | [`geometry_msgs/msg/QuaternionStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/QuaternionStamped.html) |
| [`geometry_msgs/Transform`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Transform.html) | [`geometry_msgs/msg/Transform`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Transform.html) |
| [`geometry_msgs/TransformStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/TransformStamped.html) | [`geometry_msgs/msg/TransformStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/TransformStamped.html) |
| [`geometry_msgs/Vector3`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Vector3.html) | [`geometry_msgs/msg/Vector3`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Vector3.html) |
| [`geometry_msgs/Vector3Stamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Vector3Stamped.html) | [`geometry_msgs/msg/Vector3Stamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Vector3Stamped.html) |
| [`geometry_msgs/Wrench`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Wrench.html) | [`geometry_msgs/msg/Wrench`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Wrench.html) |
| [`geometry_msgs/WrenchStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/WrenchStamped.html) | [`geometry_msgs/msg/WrenchStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/WrenchStamped.html) |
| [`sensor_msgs/PointCloud2`](http://docs.ros.org/en/api/sensor_msgs/html/msg/PointCloud2.html) | [`sensor_msgs/msg/PointCloud2`](https://docs.ros2.org/foxy/api/sensor_msgs/msg/PointCloud.html) |
| ROS | ROS 2 | Remarks |
| --- | --- | --- |
| [`geometry_msgs/Point`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Point.html) | [`geometry_msgs/msg/Point`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Point.html) | |
| [`geometry_msgs/PointStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/PointStamped.html) | [`geometry_msgs/msg/PointStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/PointStamped.html) | |
| [`geometry_msgs/Pose`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Pose.html) | [`geometry_msgs/msg/Pose`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Pose.html) | |
| [`geometry_msgs/PoseStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/PoseStamped.html) | [`geometry_msgs/msg/PoseStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/PoseStamped.html) | |
| [`geometry_msgs/PoseWithCovariance`](https://docs.ros.org/en/api/geometry_msgs/html/msg/PoseWithCovariance.html) | [`geometry_msgs/msg/PoseWithCovariance`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/PoseWithCovariance.html) | |
| [`geometry_msgs/PoseWithCovarianceStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/PoseWithCovarianceStamped.html) | [`geometry_msgs/msg/PoseWithCovarianceStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/PoseWithCovarianceStamped.html) | |
| [`geometry_msgs/Quaternion`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Quaternion.html) | [`geometry_msgs/msg/Quaternion`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Quaternion.html) | |
| [`geometry_msgs/QuaternionStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/QuaternionStamped.html) | [`geometry_msgs/msg/QuaternionStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/QuaternionStamped.html) | |
| [`geometry_msgs/Transform`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Transform.html) | [`geometry_msgs/msg/Transform`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Transform.html) | |
| [`geometry_msgs/TransformStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/TransformStamped.html) | [`geometry_msgs/msg/TransformStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/TransformStamped.html) | |
| [`geometry_msgs/Vector3`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Vector3.html) | [`geometry_msgs/msg/Vector3`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Vector3.html) | |
| [`geometry_msgs/Vector3Stamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Vector3Stamped.html) | [`geometry_msgs/msg/Vector3Stamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Vector3Stamped.html) | |
| [`geometry_msgs/Wrench`](https://docs.ros.org/en/api/geometry_msgs/html/msg/Wrench.html) | [`geometry_msgs/msg/Wrench`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/Wrench.html) | |
| [`geometry_msgs/WrenchStamped`](https://docs.ros.org/en/api/geometry_msgs/html/msg/WrenchStamped.html) | [`geometry_msgs/msg/WrenchStamped`](https://docs.ros2.org/foxy/api/geometry_msgs/msg/WrenchStamped.html) | |
| [`sensor_msgs/PointCloud2`](http://docs.ros.org/en/api/sensor_msgs/html/msg/PointCloud2.html) | [`sensor_msgs/msg/PointCloud2`](https://docs.ros2.org/foxy/api/sensor_msgs/msg/PointCloud.html) | Only the first three point cloud channels (usually `xyz`) are transformed. |

### Adding Support for a New Message Type

Expand Down
7 changes: 0 additions & 7 deletions debian/changelog.em

This file was deleted.

1 change: 0 additions & 1 deletion debian/compat.em

This file was deleted.

14 changes: 0 additions & 14 deletions debian/control.em

This file was deleted.

11 changes: 0 additions & 11 deletions debian/copyright.em

This file was deleted.

3 changes: 0 additions & 3 deletions debian/gbp.conf.em

This file was deleted.

67 changes: 0 additions & 67 deletions debian/rules.em

This file was deleted.

1 change: 0 additions & 1 deletion debian/source/format.em

This file was deleted.

6 changes: 0 additions & 6 deletions debian/source/options.em

This file was deleted.

2 changes: 1 addition & 1 deletion package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package format="3">

<name>message_tf_frame_transformer</name>
<version>1.0.0</version>
<version>1.1.0</version>
<description>Transforms messages of arbitrary type to a different frame using tf2::doTransform</description>

<maintainer email="[email protected]">Lennart Reiher</maintainer>
Expand Down

0 comments on commit 7523889

Please sign in to comment.