swri-robotics / mapviz Goto Github PK
View Code? Open in Web Editor NEWModular ROS visualization tool for 2D data.
License: BSD 3-Clause "New" or "Revised" License
Modular ROS visualization tool for 2D data.
License: BSD 3-Clause "New" or "Revised" License
We have several packages that each have their own copy of topic_select.ui that each plugin uses in it's own almost identical implementation. It would be useful to provide a library function that takes in a list of allowed topic types, shows a selection dialog, and then returns the topic name. This could be a standalone function in mapviz or a method in the MapvizPlugin class.
This will be useful for the odometry, tf, path, and grid plugins
We ran into a case today where there was no way to use a scroll wheel to zoom in and out of the map. It would be useful for these cases to have another way of zooming. Either a keyboard shortcut, or maybe moving the mouse while holding down the right mouse button would be useful alternatives.
Merge in the plugin to display laserscans.
Changing frames in subsequent marker messages not handled correctly.
The data appears to be displayed as if it was with respect to the frame of the first message.
The coordinates displayed on the status bar are not quite correct. They seem to zero out on the target frame instead of the fixed frame.
Hi ! I'm new to both ROS and mapviz. I'm trying to load the mapquest map in the tile_map plugin, but I have trouble with it.
I've made a tf /wsg84 using the following command:
rosrun tf static_transform_publisher 0 0 0 0 0 0 /wgs84 map 1
Now, in mapviz, there is no projection message problem, and (sometimes) I am able to see the mapquest world map. But... it seems only the level 0 for tile 0 0 is being displayed regardless to the zoom I'm trying. Additionally, the red and green arrows of the origin cannot be kept in the center of the screen because it makes the whole map to disappear. The map only appear when the frame origin is placed either on the left or right of the screen and more often, when outside the top or bottom border of the screen... weird ?
Am I doing something wrong with the tf ? I'm not trying to display anything but the map, as I'm about to add a new tile_map provider for the maps made in my company.
David
The current plugin ignores orientation in the marker message. This forces nodes to transform points themselves when the orientation is important.
Bing's imagery is much nicer than MapQuest's, although it has a slightly different API and requires a user to register for an API key.
Hi,
I would love to see a plugin that will allow me to click on the canvas, which will publish the according GPS position as e.g. a NavSatFix message. Has anyone ever tried that?
I have not yet worked with Qt GUIs, so I am having a hard time building that myself.
cbandera
It is helpful to have ROS version specific branches in your repo. By convention, most ROS repos have a <ros_version>-devel
branch for each ROS version in which they are supported.
We're spinning up arm builds armhf at the moment aarch64 coming soon. mapviz makes assumptions about the architecture which fail to build.
http://54.183.26.131:8080/job/Ibin_arm_uThf__mapviz__ubuntu_trusty_armhf__binary/2/console
01:16:21.995 [ 25%] Building CXX object CMakeFiles/mapviz.dir/src/mapviz.cpp.o
01:16:22.136 /usr/lib/ccache/arm-linux-gnueabihf-g++ -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_KEYWORDS -DQT_OPENGL_LIB -DROSCONSOLE_BACKEND_LOG4CXX -DROS_PACKAGE_NAME=\"mapviz\" -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -DNDEBUG -D_FORTIFY_SOURCE=2 -I/usr/include/opencv -isystem /usr/include/qt4 -isystem /usr/include/qt4/QtOpenGL -isystem /usr/include/qt4/QtGui -isystem /usr/include/qt4/QtCore -I/tmp/binarydeb/ros-indigo-mapviz-0.0.3/include -I/opt/ros/indigo/include -I/tmp/binarydeb/ros-indigo-mapviz-0.0.3/obj-arm-linux-gnueabihf -I/tmp/binarydeb/ros-indigo-mapviz-0.0.3 -I/tmp/binarydeb/ros-indigo-mapviz-0.0.3/src -o CMakeFiles/mapviz.dir/src/mapviz.cpp.o -c /tmp/binarydeb/ros-indigo-mapviz-0.0.3/src/mapviz.cpp
01:18:44.180 In file included from /usr/include/qt4/QtOpenGL/QGLWidget:1:0,
01:18:44.180 from /tmp/binarydeb/ros-indigo-mapviz-0.0.3/include/mapviz/mapviz_plugin.h:43,
01:18:44.180 from /tmp/binarydeb/ros-indigo-mapviz-0.0.3/include/mapviz/mapviz.h:71,
01:18:44.180 from /tmp/binarydeb/ros-indigo-mapviz-0.0.3/src/mapviz.cpp:30:
01:18:44.180 /usr/include/qt4/QtOpenGL/qgl.h:85:17: error: conflicting declaration ‘typedef GLfloat GLdouble’
01:18:44.180 typedef GLfloat GLdouble;
01:18:44.180 ^
01:18:44.180 In file included from /tmp/binarydeb/ros-indigo-mapviz-0.0.3/include/mapviz/mapviz.h:40:0,
01:18:44.180 from /tmp/binarydeb/ros-indigo-mapviz-0.0.3/src/mapviz.cpp:30:
01:18:44.180 /usr/include/GL/glew.h:283:16: error: ‘GLdouble’ has a previous declaration as ‘typedef double GLdouble’
01:18:44.180 typedef double GLdouble;
Hello,
I've been using mapviz the last couple of days. Yes, documentation is lacking, but the content is awesome. Thanks for that!
I'm trying to work with TexturedMarker to project photos taken from a quadrotor to the ground.
To my understanding, the "resolution" field should affect the final image size, but the image should also scale when the altitude of the UAV changes, which doesn't happen.
That said, is there any hint on resizing the image by using the resolution field? Is there another, recommended method?
Thanks
When you click the screenshot button, the name of the screenshot filename is displayed in the status bar, e.g.
Saved image mapviz_20151217T144536_161340.png
Since the path that mapviz saves images (apparently it's the user's home directory) isn't obvious, this should show the full path instead, i.e.
Saved image /home/evenator/mapviz_20151217T144536_161340.png
Hi,
I get a Segmentation fault when loading a geo-file in mapviz. I have attached the gdb output in the file gdb.txt and the geo-file in kjeller.txt (renamed from kjeller.geo as github does not support uploading geo-files). I am using Ubuntu 14.04 and the following relevant packages:
ros-indigo-swri-transform-util (version: 0.0.7-0trusty-20151119-0320-+0000)
ros-indigo-mapviz (version: 0.0.3-0trusty-20151119-0324-+0000)
As far as I can see it fails the method swri_transform_util::GeoReference::Print(), but I don't know why. Any help is appreciated.
Hi,
After downloading the source from github and running the "rosdep install --from-paths src --ignore-src"
command I am getting this error when I run catkin_make:
In file included from /home/matt/catkin_ws/src/marti_common/swri_image_util/include/swri_image_util/image_warp_util.h:46:0,
from /home/matt/catkin_ws/src/marti_common/swri_image_util/src/image_warp_util.cpp:30:
/usr/include/opencv2/legacy/legacy.hpp:1750:53: error: ‘cv::EM’ has not been declared
CvEMParams( int nclusters, int cov_mat_type=cv::EM::COV_MAT_DIAGONAL,
^
/usr/include/opencv2/legacy/legacy.hpp:1751:36: error: ‘cv::EM’ has not been declared
make[2]: *** [marti_common/swri_transform_util/CMakeFiles/swri_transform_util.dir/src/georeference.cpp.o] Error 1
make[1]: *** [marti_common/swri_transform_util/CMakeFiles/swri_transform_util.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
make[2]: *** [marti_common/swri_image_util/CMakeFiles/swri_image_util.dir/src/image_warp_util.cpp.o] Error 1
make[1]: *** [marti_common/swri_image_util/CMakeFiles/swri_image_util.dir/all] Error 2
make: *** [all] Error 2
If I run "rosversion opencv2" I get: Cannot locate [opencv2]
It throws many errors after this spot. Am I missing a dependency?
Thanks,
Matt
Use format 2 of package.xml to simplify dependency declarations.
Add some tooltips to the main GUI widgets to make the various tools more discoverable.
Remove build_tools dependency for catkin branches. Use a more catkin based approach if functionality is desired in the future.
Hello,
I have successfully visualized a tf_frame and a robot image on mapviz.
However, the positions and path trail doesn't update unless I drag map display around.
Any idea on what could be going wrong?
Thanks.
How do I update my package list for mapviz on Ubuntu 14.04.2? I was expecting it to be available at the same server as the rest of ros-indigo.
I left Indigo out of the last release cycle and only released Jade because the NavSat plugin was still untested. This release would include the LaserScan plugin and the NavSat plugin (and probably some other things.) I'm waiting on confirmation of #238.
Add plug-in for projecting OpenStreetMap tiles streamed from a server.
Subdivide map tiles on levels 0, 1, and 2 to make the coordinate transform more correct within the tiles.
This will remove the need for plug-ins to trigger updates and avoid related bugs.
It may also make the video capture rate more stable.
The BSD license has two tags for organization. The license files (here) does not have the second instance filled in.
I have seen this in other license files as well (all the new repos).
Hi,
I am trying to install mapviz using sudo apt-get install ros-indigo-mapviz
and I get:
E: Unable to locate package ros-indigo-mapviz
From apt-get install list:
ros-indigo-map-laser
ros-indigo-map-msgs
ros-indigo-map-ray-caster
ros-indigo-map-server
ros-indigo-map-store
ros-indigo-master-discovery-fkie
It doesn't look like mapviz is included.
Matt
ROS-I now has some pretty generic scrips for utilizing Travis CI: https://github.com/ros-industrial/industrial_ci.
Travis CI allows checks to be performed on any PR made against the repo, see here.
If there is interest, I can submit a PR against this and other swri repos to utilize this capability.
The gps plugin uses gps_common/GPSFix, which is gone in Jade. Proposed fix: add a navsat plugin to indigo and remove the gps plugin in jade.
Set the z component of path points to 0 before transforming to avoid uninitialized values.
jade-devel builds are failing on travis because the .travis.yml file isn't present in that branch.
Hi,
I am having difficulties to understand how different frames are handled.
So I have a GPS Position on the one hand, which gets displayed without issues.
Also, I am trying to visualize a path msg. The points with in the path message use GPS coordinates as well, but I just can't get them to visualize correctly.
Judging from the code, the GPS position uses the local_xy_util_
which converts the GPS coordinates into a local reference frame. How can I get my path to get converted as well? Or do I need to publish some kind of tf transform? I have tried setting the frame_id
to origin, wgs84 or far_field but still it doesn't get displayed correctly. How is the path message supposed to be used and how would I project data like laser scans into the map?
Thx,
cbandera
When using Qt, all graphics operations have to be done on the main thread; otherwise the results are undefined and may result in a crash. Most of the time this works fine, but I have repeatedly observed crashes when running Mapviz in rqt due to OpenGL operations being done on separate threads.
Remove blackbox button.
Catch and handle ros::ConflictingSubscriptionException which can be thrown if a configuration is saved for a Marker topic and loaded when the topic has been changed to a MarkerArray.
There's an ImageMarker type in visualization_msgs
that seems like it was designed specifically for drawing shapes on a 2D canvas. I don't know how many people would actually use these, but it looks like a good thing to support.
Add a plugin to display point clouds
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.