# RViz
This branch is currently contained in the main `ros2.repos` file of ROS 2 and can be used for ROS 2.
The latest release will be available with your ROS 2 download.
ROS 2 does not have a wiki yet. To learn about RViz and its functionality, please refer to the ROS RViz [wiki page](http://www.ros.org/wiki/rviz).
## Features
### Already ported
These features have already been ported from `ros-visualization/rviz` to `ros2/rviz`.
The basic documentation can still be found on the RViz [wiki page](http://www.ros.org/wiki/rviz).
For some displays, the [documentation is updated](docs/FEATURES.md).
| Displays | Tools | View Controller | Panels |
| --------------------- | ------------- | --------------------- | --------------- |
| Axes | Move Camera | Orbit | Displays |
| Camera | Focus Camera | XY Orbit | Help |
| Fluid Pressure | Measure | First Person | Selections |
| Grid | Select | Third Person Follower | Time |
| Grid Cells | 2D Nav Goal | Top Down Orthographic | Tool Properties |
| Illuminance | Publish Point | | Views |
| Image | Initial Pose |
| Interactive Marker | Interact |
| Laser Scan |
| Map |
| Marker |
| Marker Array |
| Odometry |
| Point Cloud (1 and 2) |
| Point |
| Polygon |
| Pose |
| Pose Array |
| Pose With Covariance |
| Range |
| Relative Humidity |
| Robot Model |
| Temperature |
| TF |
| Wrench |
### Not yet ported
These features have not been ported to `ros2/rviz` yet.
| Displays |
| ------------- |
| DepthCloud |
| Effort |
Other features:
- Stereo
In case you wished to see those features in RViz for ROS 2, feel free to add a pull request.
Make sure to read the developer guide below and the migration guide.
### New features
#### Pluggable transformation library
In RViz for ROS 1 the frames transformation library used is tf2 (detailed information about it can be found [here](http://wiki.ros.org/tf2)).
In RViz for ROS 2 the frames transformation library is now pluggable, meaning that different transformation library plugins can be loaded and changed dynamically in the gui.
Developers can create and use their own plugins to provide custom transformation behavior.
Two plugins are bundled with RViz:
- a plugin for tf2 (`TFFrameTransformer`, in `rviz_default_plugins`), which provides the standard tf2 functionality and which is used as a default
- a trivial plugin (`IdentityFrameTransformer`, in `rviz_common`), which always performs identity transforms.
This plugin is used by default if the tf2 plugin is not available and no other valid plugin is specified.
As anticipated, in order for the user to choose the plugin to use, RViz provides a dedicated panel: the `Transformation` panel.
Note: Not all transformation plugins are necessarily compatible with all RViz displays (e.g. some of the default displays, like the TF display, can only work with tf2).
In order to take this possibility into account, the `TransformerGuard` class is provided.
Adding it to a display ensures that the display will be disabled and won't function in case the wrong transformer is used.
More detailed information on how to write a transformation plugin and on how to handle transformation specific displays can be found in the [plugin development guide](docs/plugin_development.md).
## Developer Guide
### Build
#### Building RViz together with ROS 2
The simplest way to build from source is to use the official installation guide, since RViz is part of the official ROS 2 repos file.
https://docs.ros.org/en/rolling/Installation.html
#### Building RViz in a separate workspace
When developing for RViz, it can be beneficial to build it in a separate workspace.
**Note:** When building the current ros2 branch from source, the latest ROS 2 release for all dependencies might not be sufficient: it could be necessary to build the ROS 2 master branch.
Make sure to have a source build of ROS 2 available (see installation procedure above).
Create a new workspace:
```
$ mkdir -p ~/rviz2_ws/src
$ cd ~/rviz2_ws/src
```
Clone these repositories into the source folder:
```
$ git clone https://github.com/ros2/rviz.git
```
Then build all the packages with this command:
```
$ colcon build --merge-install
```
The `--merge-install` flag is optional but ensures a cleaner environment which is helpful for development.
More instructions and examples to come.
In addition to the [ROS 2 Developer Guide](https://docs.ros.org/en/rolling/Contributing/Developer-Guide.html) we suggest the following.
### Testing
Main rationale here is to create code that can be well tested by avoiding highly coupled components.
* Avoid free functions (cannot be mocked).
* Create abstract base classes (interface) for dependencies.
(This allows for a mock to be completely independent of the actual implementing class.)
* Use only the interface in the dependent code.
* Specify dependencies as a constructor argument.
* Prefer `std::unique_ptr` for storing the dependency instead of a raw pointer.
### Migration
When migrating from `ros-visualization/rviz` to `ros2/rviz`, please see the more extensive [migration guide](docs/migration_guide.md).
### Plugin Development
Plugins can extend RViz at different extension points:
- Displays
- Panels
- Tools
- Frames transformation library
- View Controllers
More information on writing plugins can be found in the [plugin development guide](docs/plugin_development.md).
## Icon Copyrights
This package contains Public Domain icons downloaded from http://tango.freedesktop.org/releases/.
Upstream Authors (2005-2009):
- Ulisse Perusin `<[email protected]>`
- Steven Garrity `<[email protected]>`
- Lapo Calamandrei `<[email protected]>`
- Ryan Collier `<[email protected]>`
- Rodney Dawes `<[email protected]>`
- Andreas Nilsson `<[email protected]>`
- Tuomas Kuosmanen `<[email protected]>`
- Garrett LeSage `<[email protected]>`
- Jakub Steiner `<[email protected]>`
Other icons and graphics contained in this package are released into the
Public Domain as well.
Authors (2012-2017):
- David Gossow
- Chad Rockey
- Kei Okada
- Julius Kammerl
- Acorn Pooley
- Rein Appeldoorn
Copyright notice for all icons and graphics in this package:
```
Public Domain Dedication
Copyright-Only Dedication (based on United States law) or Public Domain
Certification
The person or persons who have associated work with this document (the
"Dedicator" or "Certifier") hereby either (a) certifies that, to the best
of his knowledge, the work of authorship identified is in the public
domain of the country from which the work is published, or (b)
hereby dedicates whatever copyright the dedicators holds in the work
of authorship identified below (the "Work") to the public domain. A
certifier, moreover, dedicates any copyright interest he may have in
the associated work, and for these purposes, is described as a
"dedicator" below.
A certifier has taken reasonable steps to verify the copyright
status of this work. Certifier recognizes that his good faith efforts
may not shield him from liability if in fact the work certified is not
in the public domain.
Dedicator makes this dedication for the benefit of the public at
large and to the detriment of the Dedicator's heirs and successors.
Dedicator intends this dedication to be an overt act of relinquishment
in perpetuity of all present and future rights under copyright law,
whether vested or contingent, in the Work. Dedicator understands that
such relinquishment of all rights includes the relinquishment of all
rights to enforce (by lawsuit or other
没有合适的资源?快使用搜索试试~ 我知道了~
ROS3D机器人展示台_C++_CMake_下载.zip
共947个文件
cpp:331个
hpp:315个
png:121个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 136 浏览量
2023-04-30
23:38:21
上传
评论
收藏 7.04MB ZIP 举报
温馨提示
ROS3D机器人展示台_C++_CMake_下载.zip
资源推荐
资源详情
资源评论
收起资源包目录
ROS3D机器人展示台_C++_CMake_下载.zip (947个子文件)
rviz_assimp_vendor_library_path.bat 1KB
rviz_ogre_vendor_library_path.bat 1KB
plugins.cfg 63B
register_rviz_ogre_media_exports.cmake 3KB
FindFreetype.cmake 2KB
register_rviz_ogre_media_exports_hook.cmake 2KB
rviz_default_plugins-extras.cmake 2KB
rviz_rendering-extras.cmake 2KB
rviz_common-extras.cmake 2KB
register_rviz_ogre_media_exports_hook-extras.cmake 2KB
CODEOWNERS 84B
interactive_marker_control.cpp 57KB
visualization_frame.cpp 39KB
robot_link.cpp 28KB
covariance_visual.cpp 24KB
point_cloud_common.cpp 23KB
interactive_marker.cpp 22KB
visualization_manager.cpp 22KB
map_display.cpp 21KB
add_display_dialog.cpp 21KB
camera_display.cpp 21KB
point_cloud.cpp 20KB
selection_manager.cpp 20KB
robot.cpp 20KB
tf_display.cpp 19KB
robot_test.cpp 19KB
assimp_loader.cpp 18KB
render_system.cpp 18KB
path_display.cpp 18KB
marker_common_test.cpp 17KB
ogre_render_window_impl.cpp 17KB
movable_text.cpp 16KB
ros_image_texture.cpp 15KB
property.cpp 14KB
odometry_display.cpp 13KB
robot_joint.cpp 13KB
orbit_view_controller.cpp 13KB
interactive_marker_display.cpp 13KB
display.cpp 13KB
marker_common.cpp 12KB
selection_renderer.cpp 12KB
triangle_list_marker.cpp 12KB
xy_orbit_view_controller_test.cpp 12KB
point_cloud_test.cpp 11KB
pose_array_display_test.cpp 11KB
point_cloud_selection_handler_test.cpp 11KB
visualizer_app.cpp 11KB
pose_array_display.cpp 11KB
robot_model_display.cpp 11KB
line_marker_test.cpp 10KB
render_panel.cpp 10KB
orbit_view_controller_test.cpp 10KB
frame_manager.cpp 10KB
base_page_object.cpp 10KB
odometry_display_test.cpp 10KB
property_test.cpp 9KB
intensity_pc_transformer.cpp 9KB
displays_panel.cpp 9KB
point_cloud_selection_handler.cpp 9KB
fps_view_controller_test.cpp 9KB
mesh_resource_marker.cpp 9KB
view_controller.cpp 9KB
display_group.cpp 9KB
property_tree_model.cpp 9KB
view_picker.cpp 9KB
config.cpp 9KB
tf_frame_transformer.cpp 9KB
path_display_test.cpp 9KB
time_panel.cpp 9KB
point_cloud_common_test.cpp 9KB
pose_with_covariance_display.cpp 9KB
tool_manager.cpp 9KB
fps_view_controller.cpp 9KB
image_tester.cpp 9KB
movable_text_test.cpp 9KB
pointcloud_messages.cpp 9KB
render_window.cpp 9KB
wrench_display.cpp 9KB
view_manager.cpp 8KB
mesh_resource_marker_test.cpp 8KB
fixed_orientation_ortho_view_controller.cpp 8KB
selection_handler.cpp 8KB
scene_graph_introspection.cpp 8KB
mesh_loader_test.cpp 8KB
ortho_view_controller_test.cpp 8KB
xy_orbit_view_controller.cpp 8KB
frame_info.cpp 8KB
new_object_dialog.cpp 8KB
image_display.cpp 8KB
pose_display.cpp 8KB
billboard_line.cpp 8KB
views_panel.cpp 8KB
grid_display.cpp 7KB
map_display_test.cpp 7KB
stl_loader.cpp 7KB
axis_color_pc_transformer.cpp 7KB
screenshot_dialog.cpp 7KB
swatch.cpp 7KB
billboard_line_test.cpp 7KB
property_tree_widget.cpp 7KB
共 947 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
快撑死的鱼
- 粉丝: 1w+
- 资源: 9154
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功