|
From: <sf...@us...> - 2009-09-01 17:57:43
|
Revision: 23558
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23558&view=rev
Author: sfkwc
Date: 2009-09-01 17:57:32 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
moving iir_filters to octave_tools
Added Paths:
-----------
pkg/trunk/stacks/octave_tools/iir_filters/
Removed Paths:
-------------
pkg/trunk/util/iir_filters/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <sf...@us...> - 2009-09-01 17:57:56
|
Revision: 23559
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23559&view=rev
Author: sfkwc
Date: 2009-09-01 17:57:50 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
moving octave_forge to octave_tools
Added Paths:
-----------
pkg/trunk/stacks/octave_tools/octave_forge/
Removed Paths:
-------------
pkg/trunk/3rdparty/octave_forge/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <sf...@us...> - 2009-09-01 17:59:37
|
Revision: 23560
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23560&view=rev
Author: sfkwc
Date: 2009-09-01 17:59:27 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
moving pr2_ik to motion_planning
Added Paths:
-----------
pkg/trunk/motion_planning/pr2_ik/
Removed Paths:
-------------
pkg/trunk/util/pr2_ik/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <hsu...@us...> - 2009-09-01 18:12:55
|
Revision: 23566
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23566&view=rev
Author: hsujohnhsu
Date: 2009-09-01 18:12:44 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
moving gazebo_worlds into simulator_gazebo stack.
Modified Paths:
--------------
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/manifest.xml
Added Paths:
-----------
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/Media/materials/textures/bathymetry.jpg
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/Media/materials/textures/bathymetry.png
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/worlds/bathymetry.world
Removed Paths:
-------------
pkg/trunk/robot_descriptions/gazebo_worlds/
Added: pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/Media/materials/textures/bathymetry.jpg
===================================================================
(Binary files differ)
Property changes on: pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/Media/materials/textures/bathymetry.jpg
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Added: pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/Media/materials/textures/bathymetry.png
===================================================================
(Binary files differ)
Property changes on: pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/Media/materials/textures/bathymetry.png
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/manifest.xml
===================================================================
--- pkg/trunk/robot_descriptions/gazebo_worlds/manifest.xml 2009-08-31 16:38:51 UTC (rev 23388)
+++ pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/manifest.xml 2009-09-01 18:12:44 UTC (rev 23566)
@@ -8,5 +8,4 @@
<depend package="pr2_defs"/>
<depend package="pr2_ogre"/>
<depend package="ikea_ogre"/>
- <depend package="gazebo_plugin"/>
</package>
Added: pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/worlds/bathymetry.world
===================================================================
--- pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/worlds/bathymetry.world (rev 0)
+++ pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/worlds/bathymetry.world 2009-09-01 18:12:44 UTC (rev 23566)
@@ -0,0 +1,140 @@
+<?xml version="1.0"?>
+
+<gazebo:world
+ xmlns:xi="http://www.w3.org/2001/XInclude"
+ xmlns:gazebo="http://playerstage.sourceforge.net/gazebo/xmlschema/#gz"
+ xmlns:model="http://playerstage.sourceforge.net/gazebo/xmlschema/#model"
+ xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor"
+ xmlns:window="http://playerstage.sourceforge.net/gazebo/xmlschema/#window"
+ xmlns:param="http://playerstage.sourceforge.net/gazebo/xmlschema/#param"
+ xmlns:body="http://playerstage.sourceforge.net/gazebo/xmlschema/#body"
+ xmlns:geo="http://willowgarage.com/xmlschema/#geo"
+ xmlns:geom="http://playerstage.sourceforge.net/gazebo/xmlschema/#geom"
+ xmlns:joint="http://playerstage.sourceforge.net/gazebo/xmlschema/#joint"
+ xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"
+ xmlns:ui="http://playerstage.sourceforge.net/gazebo/xmlschema/#ui"
+ xmlns:rendering="http://playerstage.sourceforge.net/gazebo/xmlschema/#rendering"
+ xmlns:renderable="http://playerstage.sourceforge.net/gazebo/xmlschema/#renderable"
+ xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller"
+ xmlns:physics="http://playerstage.sourceforge.net/gazebo/xmlschema/#physics" >
+
+ <verbosity>5</verbosity>
+
+ <!-- cfm is 1e-5 for single precision -->
+ <!-- erp is typically .1-.8 -->
+ <!-- here's the global contact cfm/erp -->
+ <physics:ode>
+ <stepTime>0.001</stepTime>
+ <gravity>0 0 -9.8</gravity>
+ <cfm>0.0000000001</cfm>
+ <erp>0.2</erp>
+ <quickStep>true</quickStep>
+ <quickStepIters>10</quickStepIters>
+ <quickStepW>1.3</quickStepW>
+ <contactMaxCorrectingVel>100.0</contactMaxCorrectingVel>
+ <contactSurfaceLayer>0.001</contactSurfaceLayer>
+ </physics:ode>
+
+ <geo:origin>
+ <lat>37.4270909558</lat><lon>-122.077919338</lon>
+ </geo:origin>
+
+ <rendering:gui>
+ <type>fltk</type>
+ <size>480 320</size>
+ <pos>0 0</pos>
+ <frames>
+ <row height="100%">
+ <camera width="100%">
+ <xyz>0.3 0 3</xyz>
+ <rpy>0 90 90</rpy>
+ </camera>
+ </row>
+ </frames>
+ </rendering:gui>
+
+
+ <rendering:ogre>
+ <ambient>0.8 0.8 0.8 0.8</ambient>
+ <sky>
+ <material>Gazebo/CloudySky</material>
+ </sky>
+ <gazeboPath>media</gazeboPath>
+ <grid>false</grid>
+ <maxUpdateRate>10.</maxUpdateRate>
+ <shadowTechnique>stencilAdditive</shadowTechnique>
+ </rendering:ogre>
+
+ <model:physical name="terrain_model">
+ <body:heightmap name ="terrain_body">
+ <geom:heightmap name="terrain_geom">
+ <image>bathymetry.png</image>
+ <worldTexture>bathymetry.jpg</worldTexture>
+ <detailTexture>bathymetry.jpg</detailTexture>
+ <size>2049 2049 10</size>
+ </geom:heightmap>
+ </body:heightmap>
+ </model:physical>
+
+
+ <model:physical name="gplane">
+ <xyz>0 0 0</xyz>
+ <rpy>0 0 0</rpy>
+ <static>true</static>
+
+ <body:plane name="plane">
+ <geom:plane name="plane">
+ <laserRetro>2000.0</laserRetro>
+ <mu1>50.0</mu1>
+ <mu2>50.0</mu2>
+ <kp>1000000000.0</kp>
+ <kd>1.0</kd>
+ <normal>0 0 1</normal>
+ <size>51.3 51.3</size>
+ <segments>10 10</segments>
+ <uvTile>100 100</uvTile>
+ <material>Gazebo/GrayGrid</material>
+ </geom:plane>
+ </body:plane>
+ </model:physical>
+
+<!--
+ <model:physical name="walls">
+ <include embedded="false">
+ <xi:include href="tests/willow-walls.model" />
+ </include>
+ </model:physical>
+-->
+<!--
+ <model:physical name="willow_map">
+ <xyz>-25.65 25.65 1.0</xyz>
+ <rpy>180 0 0</rpy>
+ <static>true</static>
+ <body:map name="willow_map_body">
+ <geom:map name="willow_map_geom">
+ <image>willowMap.png</image>
+ <threshold>200</threshold>
+ <granularity>1</granularity>
+ <negative>false</negative>
+ <scale>0.1</scale>
+ <offset>0 0 0</offset>
+ <material>Gazebo/Rocky</material>
+ </geom:map>
+ </body:map>
+ </model:physical>
+-->
+
+ <!-- White Point light -->
+ <model:renderable name="point_white">
+ <xyz>0.0 0.0 3</xyz>
+ <enableGravity>false</enableGravity>
+ <light>
+ <type>point</type>
+ <diffuseColor>0.8 0.8 0.8</diffuseColor>
+ <specularColor>.1 .1 .1</specularColor>
+ <attenuation>0.2 0.1 0</attenuation>
+ <range>10</range>
+ </light>
+ </model:renderable>
+
+</gazebo:world>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <hsu...@us...> - 2009-09-01 18:13:42
|
Revision: 23567
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23567&view=rev
Author: hsujohnhsu
Date: 2009-09-01 18:13:35 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
moving ikea objects for gazebo into gazebo stack.
Added Paths:
-----------
pkg/trunk/stacks/simulator_gazebo/ikea_ogre/
Removed Paths:
-------------
pkg/trunk/sandbox/ikea_ogre/
Property changes on: pkg/trunk/stacks/simulator_gazebo/ikea_ogre
___________________________________________________________________
Added: svn:ignore
+ .build_version
.rosgcov_files
bin
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/sandbox/ikea_ogre:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <vij...@us...> - 2009-09-01 18:51:39
|
Revision: 23590
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23590&view=rev
Author: vijaypradeep
Date: 2009-09-01 18:51:29 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
Adding msgs for laser calibration pipeline
Added Paths:
-----------
pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserObjectFeatures.msg
pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserPoint.msg
pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserSnapshot.msg
Removed Paths:
-------------
pkg/trunk/calibration_experimental/experimental_calibration_msgs/msg/DenseLaserSnapshot.msg
Deleted: pkg/trunk/calibration_experimental/experimental_calibration_msgs/msg/DenseLaserSnapshot.msg
===================================================================
--- pkg/trunk/calibration_experimental/experimental_calibration_msgs/msg/DenseLaserSnapshot.msg 2009-09-01 18:48:24 UTC (rev 23589)
+++ pkg/trunk/calibration_experimental/experimental_calibration_msgs/msg/DenseLaserSnapshot.msg 2009-09-01 18:51:29 UTC (rev 23590)
@@ -1,39 +0,0 @@
-# Provides all the state & sensor information for
-# a single sweep of laser attached to some mechanism.
-# Most likely, this 'mechanism' will be the tilting stage
-Header header
-
-# Store the laser intrinsics. This is very similar to the
-# intrinsics commonly stored in
-float32 angle_min # start angle of the scan [rad]
-float32 angle_max # end angle of the scan [rad]
-float32 angle_increment # angular distance between measurements [rad]
-float32 time_increment # time between measurements [seconds]
-float32 range_min # minimum range value [m]
-float32 range_max # maximum range value [m]
-
-# Define the size of the binary data
-uint32 readings_per_scan # (Width)
-uint32 num_scans # (Height)
-
-# 2D Arrays storing laser data.
-# We can think of each type data as being a single channel image.
-# Each row of the image has data from a single scan, and scans are
-# concatenated to form the entire 'image'.
-float32[] ranges # (Image data)
-float32[] intensities # (Image data)
-
-# Joint information
-# Store joint information associated with each scan
-uint32 joint_encoding
-float64[] joint_positions
-float64[] joint_velocities
-string[] joint_names
-uint32 POS_PER_PIXEL = 0
-uint32 POS_PER_ROW_START = 1
-uint32 POS_PER_ROW_START_AND_END = 2
-
-# 1D Data storing meta information for each scan/row
-# Currently in stable, time vectors are not serialized correctly
-time[] scan_start
-
Added: pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserObjectFeatures.msg
===================================================================
--- pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserObjectFeatures.msg (rev 0)
+++ pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserObjectFeatures.msg 2009-09-01 18:51:29 UTC (rev 23590)
@@ -0,0 +1,11 @@
+# Synchronized with sensor output
+Header header
+
+# Pixel locations of detected features
+DenseLaserPoint[] dense_laser_points
+
+# Defines geometry of detected features in some "object" coordinate frame
+geometry_msgs/Point[] object_points
+
+# False on detection failure or partial detection
+uint8 success
Added: pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserPoint.msg
===================================================================
--- pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserPoint.msg (rev 0)
+++ pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserPoint.msg 2009-09-01 18:51:29 UTC (rev 23590)
@@ -0,0 +1,3 @@
+# Stores the xy subpixel location of a point in a DenseLaserSnapshot
+float64 scan # Which scan line we detected the feature
+float64 ray # Which ray in the specified scan we detected the feature
Copied: pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserSnapshot.msg (from rev 23589, pkg/trunk/calibration_experimental/experimental_calibration_msgs/msg/DenseLaserSnapshot.msg)
===================================================================
--- pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserSnapshot.msg (rev 0)
+++ pkg/trunk/stacks/calibration/calibration_msgs/msg/DenseLaserSnapshot.msg 2009-09-01 18:51:29 UTC (rev 23590)
@@ -0,0 +1,28 @@
+# Provides all the state & sensor information for
+# a single sweep of laser attached to some mechanism.
+# Most likely, this will be used with PR2's tilting laser mechanism
+Header header
+
+# Store the laser intrinsics. This is very similar to the
+# intrinsics commonly stored in
+float32 angle_min # start angle of the scan [rad]
+float32 angle_max # end angle of the scan [rad]
+float32 angle_increment # angular distance between measurements [rad]
+float32 time_increment # time between measurements [seconds]
+float32 range_min # minimum range value [m]
+float32 range_max # maximum range value [m]
+
+# Define the size of the binary data
+uint32 readings_per_scan # (Width)
+uint32 num_scans # (Height)
+
+# 2D Arrays storing laser data.
+# We can think of each type data as being a single channel image.
+# Each row of the image has data from a single scan, and scans are
+# concatenated to form the entire 'image'.
+float32[] ranges # (Image data)
+float32[] intensities # (Image data)
+
+# 1D Data storing meta information for each scan/row
+geometry_msgs/PoseStamped[] start_pose
+geometry_msgs/PoseStamped[] end_pose
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ge...@us...> - 2009-09-01 22:04:55
|
Revision: 23607
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23607&view=rev
Author: gerkey
Date: 2009-09-01 22:04:47 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
Rearranged header locations
Modified Paths:
--------------
pkg/trunk/deprecated/dcam/include/dcam/dcam.h
pkg/trunk/deprecated/dcam/include/imwin/im3Dwin.h
pkg/trunk/deprecated/dcam/src/libdcam/stereodcam.cpp
pkg/trunk/deprecated/dcam/src/nodes/dcam.cpp
pkg/trunk/deprecated/dcam/src/nodes/stereodcam.cpp
pkg/trunk/deprecated/dcam/src/nodes/videre_no_STOC.cpp
pkg/trunk/deprecated/dcam/src/ost/ost.cpp
pkg/trunk/deprecated/dcam/src/python/dcam.cpp
pkg/trunk/stacks/image_pipeline/CMakeLists.txt
pkg/trunk/stacks/image_pipeline/image_proc/src/nodes/image_proc.cpp
pkg/trunk/stacks/image_pipeline/image_proc/src/proc/image.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/CMakeLists.txt
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/image.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/imageproc.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/imageproc_new.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/nodes/stereo_image_proc.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/nodes/stereoproc.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/proc/findplane.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/proc/imageproc.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/proc/stereoimage.cpp
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/proc/stereolib.c
pkg/trunk/stacks/image_pipeline/stereo_image_proc/src/proc/stereolib2.cpp
Added Paths:
-----------
pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/
pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/cam_bridge.h
pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/image.h
pkg/trunk/stacks/image_pipeline/stereo_image_proc/include/stereo_image_proc/
pkg/trunk/stacks/image_pipeline/stereo_image_proc/include/stereo_image_proc/cam_bridge_old.h
pkg/trunk/stacks/image_pipeline/stereo_image_proc/include/stereo_image_proc/stereoimage.h
pkg/trunk/stacks/image_pipeline/stereo_image_proc/include/stereo_image_proc/stereolib.h
Removed Paths:
-------------
pkg/trunk/stacks/image_pipeline/image_proc/include/cam_bridge.h
pkg/trunk/stacks/image_pipeline/image_proc/include/image.h
pkg/trunk/stacks/image_pipeline/stereo_image_proc/include/cam_bridge_old.h
pkg/trunk/stacks/image_pipeline/stereo_image_proc/include/stereoimage.h
pkg/trunk/stacks/image_pipeline/stereo_image_proc/include/stereolib.h
Modified: pkg/trunk/deprecated/dcam/include/dcam/dcam.h
===================================================================
--- pkg/trunk/deprecated/dcam/include/dcam/dcam.h 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/deprecated/dcam/include/dcam/dcam.h 2009-09-01 22:04:47 UTC (rev 23607)
@@ -37,7 +37,7 @@
#include <stdexcept>
#include "dc1394/dc1394.h"
-#include "stereoimage.h"
+#include "stereo_image_proc/stereoimage.h"
// Pixel raw modes
// Videre stereo:
Modified: pkg/trunk/deprecated/dcam/include/imwin/im3Dwin.h
===================================================================
--- pkg/trunk/deprecated/dcam/include/imwin/im3Dwin.h 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/deprecated/dcam/include/imwin/im3Dwin.h 2009-09-01 22:04:47 UTC (rev 23607)
@@ -63,7 +63,7 @@
#include "FL/gl.h"
#include <GL/glut.h>
#include <GL/glu.h>
-#include "stereoimage.h"
+#include "stereo_image_proc/stereoimage.h"
using namespace std;
Modified: pkg/trunk/deprecated/dcam/src/libdcam/stereodcam.cpp
===================================================================
--- pkg/trunk/deprecated/dcam/src/libdcam/stereodcam.cpp 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/deprecated/dcam/src/libdcam/stereodcam.cpp 2009-09-01 22:04:47 UTC (rev 23607)
@@ -40,7 +40,7 @@
//
#include "dcam/stereodcam.h"
-#include "stereolib.h"
+#include "stereo_image_proc/stereolib.h"
#define PRINTF(a...) printf(a)
Modified: pkg/trunk/deprecated/dcam/src/nodes/dcam.cpp
===================================================================
--- pkg/trunk/deprecated/dcam/src/nodes/dcam.cpp 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/deprecated/dcam/src/nodes/dcam.cpp 2009-09-01 22:04:47 UTC (rev 23607)
@@ -35,7 +35,7 @@
#include <cstdio>
#include "dcam/dcam.h"
-#include "cam_bridge_old.h"
+#include "stereo_image_proc/cam_bridge_old.h"
#include "ros/node.h"
#include "sensor_msgs/Image.h"
Modified: pkg/trunk/deprecated/dcam/src/nodes/stereodcam.cpp
===================================================================
--- pkg/trunk/deprecated/dcam/src/nodes/stereodcam.cpp 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/deprecated/dcam/src/nodes/stereodcam.cpp 2009-09-01 22:04:47 UTC (rev 23607)
@@ -134,7 +134,7 @@
#include "ros/node.h"
#include "stereo_msgs/RawStereo.h"
-#include "cam_bridge_old.h"
+#include "stereo_image_proc/cam_bridge_old.h"
#include <diagnostic_updater/diagnostic_updater.h>
#include <diagnostic_updater/update_functions.h>
Modified: pkg/trunk/deprecated/dcam/src/nodes/videre_no_STOC.cpp
===================================================================
--- pkg/trunk/deprecated/dcam/src/nodes/videre_no_STOC.cpp 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/deprecated/dcam/src/nodes/videre_no_STOC.cpp 2009-09-01 22:04:47 UTC (rev 23607)
@@ -74,7 +74,7 @@
#include "dcam/dcam.h"
#include "dcam/stereodcam.h"
-#include "cam_bridge_old.h"
+#include "stereo_image_proc/cam_bridge_old.h"
#include "ros/node.h"
Modified: pkg/trunk/deprecated/dcam/src/ost/ost.cpp
===================================================================
--- pkg/trunk/deprecated/dcam/src/ost/ost.cpp 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/deprecated/dcam/src/ost/ost.cpp 2009-09-01 22:04:47 UTC (rev 23607)
@@ -69,7 +69,7 @@
#endif
#include "stereogui.h"
#include "imwin/im3Dwin.h"
-#include "stereolib.h"
+#include "stereo_image_proc/stereolib.h"
#include "dcam/stereodcam.h"
#include <cv.h>
Modified: pkg/trunk/deprecated/dcam/src/python/dcam.cpp
===================================================================
--- pkg/trunk/deprecated/dcam/src/python/dcam.cpp 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/deprecated/dcam/src/python/dcam.cpp 2009-09-01 22:04:47 UTC (rev 23607)
@@ -15,7 +15,7 @@
#include <sys/time.h>
#endif
#include "imwin/im3Dwin.h"
-#include "stereolib.h"
+#include "stereo_image_proc/stereolib.h"
#include "dcam/stereodcam.h"
#include <cv.h>
Modified: pkg/trunk/stacks/image_pipeline/CMakeLists.txt
===================================================================
--- pkg/trunk/stacks/image_pipeline/CMakeLists.txt 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/stacks/image_pipeline/CMakeLists.txt 2009-09-01 22:04:47 UTC (rev 23607)
@@ -15,5 +15,6 @@
# properly. CMake 2.4 seems to have unpredictable scoping rules for such
# variables.
#list(APPEND CPACK_SOURCE_IGNORE_FILES /core/experimental)
+list(APPEND CPACK_SOURCE_IGNORE_FILES /image_geometry)
rosbuild_make_distribution(0.1.0)
Deleted: pkg/trunk/stacks/image_pipeline/image_proc/include/cam_bridge.h
===================================================================
--- pkg/trunk/stacks/image_pipeline/image_proc/include/cam_bridge.h 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/stacks/image_pipeline/image_proc/include/cam_bridge.h 2009-09-01 22:04:47 UTC (rev 23607)
@@ -1,153 +0,0 @@
-
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-#ifndef CAM_BRIDGE_H
-#define CAM_BRIDGE_H
-
-namespace cam_bridge
-{
-
- color_coding_t GetColorCoding(const sensor_msgs::Image& msg)
- {
- using namespace sensor_msgs::image_encodings;
-
- if (msg.encoding == MONO8) return COLOR_CODING_MONO8;
- if (msg.encoding == MONO16) return COLOR_CODING_MONO16;
- if (msg.encoding == BAYER_RGGB8) return COLOR_CODING_BAYER8_RGGB;
- if (msg.encoding == BAYER_BGGR8) return COLOR_CODING_BAYER8_BGGR;
- if (msg.encoding == BAYER_GBRG8) return COLOR_CODING_BAYER8_GBRG;
- if (msg.encoding == BAYER_GRBG8) return COLOR_CODING_BAYER8_GRBG;
- if (msg.encoding == RGB8) return COLOR_CODING_RGB8;
- if (msg.encoding == RGBA8) return COLOR_CODING_RGBA8;
-
- ROS_ERROR("cam_bridge: Encoding '%s' is not supported", msg.encoding.c_str());
- return COLOR_CODING_NONE;
- }
-
- std::string ColorCodingToImageEncoding(color_coding_t coding)
- {
- using namespace sensor_msgs::image_encodings;
-
- if (coding == COLOR_CODING_MONO8) return MONO8;
- if (coding == COLOR_CODING_MONO16) return MONO16;
- if (coding == COLOR_CODING_BAYER8_RGGB) return BAYER_RGGB8;
- if (coding == COLOR_CODING_BAYER8_BGGR) return BAYER_BGGR8;
- if (coding == COLOR_CODING_BAYER8_GBRG) return BAYER_GBRG8;
- if (coding == COLOR_CODING_BAYER8_GRBG) return BAYER_GRBG8;
- if (coding == COLOR_CODING_RGB8) return RGB8;
- if (coding == COLOR_CODING_RGBA8) return RGBA8;
-
- ROS_WARN("cam_bridge: Don't know image encoding string for color coding %i", coding);
- return "";
- }
-
- void extractImage(std::vector<uint8_t> data, size_t* sz, uint8_t **d)
- {
- size_t new_size = data.size();
-
- if (*sz < new_size)
- {
- MEMFREE(*d);
- *d = (uint8_t *)MEMALIGN(new_size);
- *sz = new_size;
- }
- memcpy((char*)(*d), (char*)(&data[0]), new_size);
- }
- void extractImage(std::vector<uint8_t> data, size_t* sz, int16_t **d)
- {
- size_t new_size = data.size();
-
- if (*sz < new_size)
- {
- MEMFREE(*d);
- *d = (int16_t *)MEMALIGN(new_size);
- *sz = new_size;
- }
- memcpy((char*)(*d), (char*)(&data[0]), new_size);
- }
-
-
- void RawToCamData(const sensor_msgs::Image& im_msg,
- const sensor_msgs::CameraInfo& info_msg,
- uint8_t type, cam::ImageData* im)
- {
-
- im->imRawType = COLOR_CODING_NONE;
- im->imType = COLOR_CODING_NONE;
- im->imColorType = COLOR_CODING_NONE;
- im->imRectType = COLOR_CODING_NONE;
- im->imRectColorType = COLOR_CODING_NONE;
-
- if (type == cam::IMAGE_RAW)
- {
- extractImage(im_msg.data, &im->imRawSize, &im->imRaw);
- im->imRawType = GetColorCoding(im_msg);
- }
- else if (type == cam::IMAGE)
- {
- extractImage(im_msg.data, &im->imSize, &im->im);
- im->imType = COLOR_CODING_MONO8;
- }
- else if (type == cam::IMAGE_COLOR)
- {
- extractImage(im_msg.data, &im->imColorSize, &im->imColor);
- im->imColorType = GetColorCoding(im_msg);
- }
- else if (type == cam::IMAGE_RECT)
- {
- extractImage(im_msg.data, &im->imRectSize, &im->imRect);
- im->imRectType = GetColorCoding(im_msg);
- }
- else if (type == cam::IMAGE_RECT_COLOR)
- {
- extractImage(im_msg.data, &im->imRectColorSize, &im->imRectColor);
- im->imRectColorType = GetColorCoding(im_msg);
- }
-
- // @todo: this OK when right image empty (disparity image requested instead)?
- im->imHeight = im_msg.height;
- im->imWidth = im_msg.width;
-
- // @todo: possible to NOT have rectification?
- memcpy((char*)(im->D), (char*)(&info_msg.D[0]), 5*sizeof(double));
- memcpy((char*)(im->K), (char*)(&info_msg.K[0]), 9*sizeof(double));
- memcpy((char*)(im->R), (char*)(&info_msg.R[0]), 9*sizeof(double));
- memcpy((char*)(im->P), (char*)(&info_msg.P[0]), 12*sizeof(double));
- im->hasRectification = true;
- }
-}
-
-
-#endif // CAM_BRIDGE_H
Deleted: pkg/trunk/stacks/image_pipeline/image_proc/include/image.h
===================================================================
--- pkg/trunk/stacks/image_pipeline/image_proc/include/image.h 2009-09-01 21:56:20 UTC (rev 23606)
+++ pkg/trunk/stacks/image_pipeline/image_proc/include/image.h 2009-09-01 22:04:47 UTC (rev 23607)
@@ -1,255 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-#ifndef IMAGE_H
-#define IMAGE_H
-
-#include <stdlib.h>
-
-#ifdef __APPLE__
-#include <malloc/malloc.h>
-#else
-#include <malloc.h>
-#endif
-
-#include <stdarg.h>
-#include <math.h>
-#include <ctype.h>
-
-#ifdef WIN32
-#pragma warning(disable:4996) // get rid of POSIX deprecation errors
-#include <time.h>
-#include "pstdint.h" // MSVC++ doesn't have stdint.h
-#else
-#include <sys/time.h>
-#include <stdint.h>
-#endif
-
-#include <cv.h>
-#include <cxmisc.h>
-#include <cvaux.h>
-
-#include <sensor_msgs/Image.h>
-#include <sensor_msgs/CameraInfo.h>
-//#include <sensor_msgs/fill_image.h>
-
-// alignment on allocation
-#ifdef __APPLE__
-#define MEMALIGN(x) malloc(x)
-#define MEMFREE(x) {if (x) free(x);}
-#else
-#define MEMALIGN(x) memalign(16,x)
-#define MEMFREE(x) {if (x) free(x);}
-#endif
-
-
-#ifndef COLOR_CODING_T
-typedef enum {
- COLOR_CODING_MONO8 = 3000,
- COLOR_CODING_MONO16,
- COLOR_CODING_BAYER8_RGGB,
- COLOR_CODING_BAYER8_BGGR,
- COLOR_CODING_BAYER8_GBRG,
- COLOR_CODING_BAYER8_GRBG,
- COLOR_CODING_BAYER16_RGGB,
- COLOR_CODING_BAYER16_BGGR,
- COLOR_CODING_BAYER16_GBRG,
- COLOR_CODING_BAYER16_GRBG,
- COLOR_CODING_RGB8, // RGB order
- COLOR_CODING_RGBA8, // RGBA order
- COLOR_CODING_RGB16, // RGB order
- COLOR_CODING_RGBA16, // RGBA order
-
- // these are stereo interlace encodings
- // Videre stereo:
- // Mono has left/right pixels interlaced
- // Color has left/right pixels interlace, bayer pixels
- // STOC modes have rectified images, raw encodings, disparity, etc
- VIDERE_STEREO_MONO,
- VIDERE_STEREO_RGGB,
- VIDERE_STEREO_GRBG,
- VIDERE_STEREO_BGGR,
- VIDERE_STOC_RECT_RECT, // left and right rectified mono
- VIDERE_STOC_RECT_DISP, // left rectified mono, right disparity
- VIDERE_STOC_RAW_DISP_MONO, // left raw mono, right disparity
- VIDERE_STOC_RAW_DISP_RGGB, // left raw color, right disparity
- VIDERE_STOC_RAW_DISP_GRBG, // left raw color, right disparity
- VIDERE_STOC_RAW_RAW_MONO, // left and right raw, mono
- VIDERE_STOC_RAW_RAW_RGGB, // left and right raw, color
- VIDERE_STOC_RAW_RAW_GRBG, // left and right raw, color
-
- COLOR_CODING_NONE // no image info
-} color_coding_t;
-#define COLOR_CODING_T
-#endif
-
-
-#ifndef COLOR_CONVERSION_T
-typedef enum {
- COLOR_CONVERSION_BILINEAR,
- COLOR_CONVERSION_EDGE
-} color_conversion_t;
-#define COLOR_CONVERSION_T
-#endif
-
-
-typedef enum
-{
- NORMAL_ALGORITHM,
- SCANLINE_ALGORITHM,
- DP_ALGORITHM,
- MW_ALGORITHM,
- LS_ALGORITHM,
- NCC_ALGORITHM
-} stereo_algorithm_t;
-
-
-//
-// structured points in a 4xN point array
-//
-
-typedef struct
-{
- float X;
- float Y;
- float Z;
- int32_t A; // negative for undefined point, otherwise arbitrary index
-} pt_xyza_t;
-
-
-namespace cam
-{
- // monocular data structure
- // generally, all images should be on 16-byte alignment
-
- // internal types for conversion routines
- const static uint8_t NONE = 0;
- const static uint8_t IMAGE_RAW = 1;
- const static uint8_t IMAGE = 2;
- const static uint8_t IMAGE_COLOR = 3;
- const static uint8_t IMAGE_RECT = 4;
- const static uint8_t IMAGE_RECT_COLOR = 5;
-
- class ImageData
- {
-
- public:
- ImageData();
- ~ImageData();
-
- // image parameters
- int imWidth;
- int imHeight;
-
- // image data
- // these can be NULL if no data is present
- // the Type info is COLOR_CODING_NONE if the data is not current
- // the Size info gives the buffer size, for allocation logic
- // NOTE: all data buffers should be 16-byte aligned
- // @todo: can we just use IplImages for these...
- uint8_t *imRaw; // raw image
- color_coding_t imRawType; // type of raw data
- size_t imRawSize;
- uint8_t *im; // monochrome image
- color_coding_t imType;
- size_t imSize;
- uint8_t *imColor; // color image, always RGB32
- color_coding_t imColorType;
- size_t imColorSize;
- uint8_t *imRect; // rectified monochrome image
- color_coding_t imRectType;
- size_t imRectSize;
- uint8_t *imRectColor; // rectified color image, always RGB32
- color_coding_t imRectColorType;
- size_t imRectColorSize;
-
- // timing
- uint64_t im_time; // us time when the frame finished DMA into the host
-
- // calibration parameters
- // row major order
- bool initRect; // whether arrays are initialized or not
- double D[5]; // distortion: k1, k2, t1, t2, k3
- double K[9]; // original camera matrix
- double R[9]; // rectification matrix
- double P[12]; // projection/camera matrix
-
- // raw parameter string
- char *params; // on-camera parameters
-
- // buffers
- void releaseBuffers(); // get rid of all buffers
-
- // rectification
- bool hasRectification; // true if valid rectification present
- bool doRectify(); // try to rectify images
- bool initRectify(bool force=false); // initializes the rectification internals from the
- // calibration parameters
-
- // color conversion
- color_conversion_t colorConvertType; // BILINEAR or EDGE conversion
- void doBayerColorRGB(); // does Bayer => color and mono
- void doBayerMono(); // does Bayer => mono
-
-
- protected:
- // rectification arrays from OpenCV
- CvMat *rK;
- CvMat *rD;
- CvMat *rR;
- CvMat *rKp;
-
- CvMat* rMapxy; // rectification table, integer format
- CvMat* rMapa;
- CvMat* mx,* my;
- IplImage* srcIm; // temps for rectification
- IplImage* dstIm;
-
- private:
- // various color converters
- void convertBayerGRBGColorRGB(uint8_t *src, uint8_t *dstc, uint8_t *dstm,
- int width, int height, color_conversion_t colorAlg);
- void convertBayerBGGRColorRGB(uint8_t *src, uint8_t *dstc, uint8_t *dstm,
- int width, int height, color_conversion_t colorAlg);
- void convertBayerGRBGMono(uint8_t *src, uint8_t *dstm,
- int width, int height, color_conversion_t colorAlg);
- void convertBayerBGGRMono(uint8_t *src, uint8_t *dstm,
- int width, int height, color_conversion_t colorAlg);
- };
-
-}
-
-
-
-#endif // IMAGE_H
Copied: pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/cam_bridge.h (from rev 23600, pkg/trunk/stacks/image_pipeline/image_proc/include/cam_bridge.h)
===================================================================
--- pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/cam_bridge.h (rev 0)
+++ pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/cam_bridge.h 2009-09-01 22:04:47 UTC (rev 23607)
@@ -0,0 +1,153 @@
+
+/*********************************************************************
+* Software License Agreement (BSD License)
+*
+* Copyright (c) 2008, Willow Garage, Inc.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of the Willow Garage nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+* POSSIBILITY OF SUCH DAMAGE.
+*********************************************************************/
+
+#ifndef CAM_BRIDGE_H
+#define CAM_BRIDGE_H
+
+namespace cam_bridge
+{
+
+ color_coding_t GetColorCoding(const sensor_msgs::Image& msg)
+ {
+ using namespace sensor_msgs::image_encodings;
+
+ if (msg.encoding == MONO8) return COLOR_CODING_MONO8;
+ if (msg.encoding == MONO16) return COLOR_CODING_MONO16;
+ if (msg.encoding == BAYER_RGGB8) return COLOR_CODING_BAYER8_RGGB;
+ if (msg.encoding == BAYER_BGGR8) return COLOR_CODING_BAYER8_BGGR;
+ if (msg.encoding == BAYER_GBRG8) return COLOR_CODING_BAYER8_GBRG;
+ if (msg.encoding == BAYER_GRBG8) return COLOR_CODING_BAYER8_GRBG;
+ if (msg.encoding == RGB8) return COLOR_CODING_RGB8;
+ if (msg.encoding == RGBA8) return COLOR_CODING_RGBA8;
+
+ ROS_ERROR("cam_bridge: Encoding '%s' is not supported", msg.encoding.c_str());
+ return COLOR_CODING_NONE;
+ }
+
+ std::string ColorCodingToImageEncoding(color_coding_t coding)
+ {
+ using namespace sensor_msgs::image_encodings;
+
+ if (coding == COLOR_CODING_MONO8) return MONO8;
+ if (coding == COLOR_CODING_MONO16) return MONO16;
+ if (coding == COLOR_CODING_BAYER8_RGGB) return BAYER_RGGB8;
+ if (coding == COLOR_CODING_BAYER8_BGGR) return BAYER_BGGR8;
+ if (coding == COLOR_CODING_BAYER8_GBRG) return BAYER_GBRG8;
+ if (coding == COLOR_CODING_BAYER8_GRBG) return BAYER_GRBG8;
+ if (coding == COLOR_CODING_RGB8) return RGB8;
+ if (coding == COLOR_CODING_RGBA8) return RGBA8;
+
+ ROS_WARN("cam_bridge: Don't know image encoding string for color coding %i", coding);
+ return "";
+ }
+
+ void extractImage(std::vector<uint8_t> data, size_t* sz, uint8_t **d)
+ {
+ size_t new_size = data.size();
+
+ if (*sz < new_size)
+ {
+ MEMFREE(*d);
+ *d = (uint8_t *)MEMALIGN(new_size);
+ *sz = new_size;
+ }
+ memcpy((char*)(*d), (char*)(&data[0]), new_size);
+ }
+ void extractImage(std::vector<uint8_t> data, size_t* sz, int16_t **d)
+ {
+ size_t new_size = data.size();
+
+ if (*sz < new_size)
+ {
+ MEMFREE(*d);
+ *d = (int16_t *)MEMALIGN(new_size);
+ *sz = new_size;
+ }
+ memcpy((char*)(*d), (char*)(&data[0]), new_size);
+ }
+
+
+ void RawToCamData(const sensor_msgs::Image& im_msg,
+ const sensor_msgs::CameraInfo& info_msg,
+ uint8_t type, cam::ImageData* im)
+ {
+
+ im->imRawType = COLOR_CODING_NONE;
+ im->imType = COLOR_CODING_NONE;
+ im->imColorType = COLOR_CODING_NONE;
+ im->imRectType = COLOR_CODING_NONE;
+ im->imRectColorType = COLOR_CODING_NONE;
+
+ if (type == cam::IMAGE_RAW)
+ {
+ extractImage(im_msg.data, &im->imRawSize, &im->imRaw);
+ im->imRawType = GetColorCoding(im_msg);
+ }
+ else if (type == cam::IMAGE)
+ {
+ extractImage(im_msg.data, &im->imSize, &im->im);
+ im->imType = COLOR_CODING_MONO8;
+ }
+ else if (type == cam::IMAGE_COLOR)
+ {
+ extractImage(im_msg.data, &im->imColorSize, &im->imColor);
+ im->imColorType = GetColorCoding(im_msg);
+ }
+ else if (type == cam::IMAGE_RECT)
+ {
+ extractImage(im_msg.data, &im->imRectSize, &im->imRect);
+ im->imRectType = GetColorCoding(im_msg);
+ }
+ else if (type == cam::IMAGE_RECT_COLOR)
+ {
+ extractImage(im_msg.data, &im->imRectColorSize, &im->imRectColor);
+ im->imRectColorType = GetColorCoding(im_msg);
+ }
+
+ // @todo: this OK when right image empty (disparity image requested instead)?
+ im->imHeight = im_msg.height;
+ im->imWidth = im_msg.width;
+
+ // @todo: possible to NOT have rectification?
+ memcpy((char*)(im->D), (char*)(&info_msg.D[0]), 5*sizeof(double));
+ memcpy((char*)(im->K), (char*)(&info_msg.K[0]), 9*sizeof(double));
+ memcpy((char*)(im->R), (char*)(&info_msg.R[0]), 9*sizeof(double));
+ memcpy((char*)(im->P), (char*)(&info_msg.P[0]), 12*sizeof(double));
+ im->hasRectification = true;
+ }
+}
+
+
+#endif // CAM_BRIDGE_H
Property changes on: pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/cam_bridge.h
___________________________________________________________________
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/stacks/imaging_pipeline/image_proc/include/cam_bridge.h:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
Copied: pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/image.h (from rev 23600, pkg/trunk/stacks/image_pipeline/image_proc/include/image.h)
===================================================================
--- pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/image.h (rev 0)
+++ pkg/trunk/stacks/image_pipeline/image_proc/include/image_proc/image.h 2009-09-01 22:04:47 UTC (rev 23607)
@@ -0,0 +1,255 @@
+/*********************************************************************
+* Software License Agreement (BSD License)
+*
+* Copyright (c) 2008, Willow Garage, Inc.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of the Willow Garage nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+...
[truncated message content] |
|
From: <vij...@us...> - 2009-09-01 23:30:43
|
Revision: 23610
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23610&view=rev
Author: vijaypradeep
Date: 2009-09-01 23:30:28 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
Moving dense_laser_assembler into calibration stack
Added Paths:
-----------
pkg/trunk/stacks/dense_laser_assembler/
pkg/trunk/stacks/dense_laser_assembler/CMakeLists.txt
pkg/trunk/stacks/dense_laser_assembler/Makefile
pkg/trunk/stacks/dense_laser_assembler/ROS_BUILD_BLACKLIST
pkg/trunk/stacks/dense_laser_assembler/include/
pkg/trunk/stacks/dense_laser_assembler/include/dense_laser_assembler/
pkg/trunk/stacks/dense_laser_assembler/include/dense_laser_assembler/build_dense_laser_snapshot.h
pkg/trunk/stacks/dense_laser_assembler/include/dense_laser_assembler/dense_laser_msg_filter.h
pkg/trunk/stacks/dense_laser_assembler/include/dense_laser_assembler/joint_pv_msg_filter.h
pkg/trunk/stacks/dense_laser_assembler/include/dense_laser_assembler/laser_scan_tagger.h
pkg/trunk/stacks/dense_laser_assembler/include/dense_laser_assembler/tagged_laser_scan.h
pkg/trunk/stacks/dense_laser_assembler/mainpage.dox
pkg/trunk/stacks/dense_laser_assembler/manifest.xml
pkg/trunk/stacks/dense_laser_assembler/msg/
pkg/trunk/stacks/dense_laser_assembler/msg/Float32MultiArrayStamped.msg
pkg/trunk/stacks/dense_laser_assembler/msg/JointPVArray.msg
pkg/trunk/stacks/dense_laser_assembler/scripts/
pkg/trunk/stacks/dense_laser_assembler/scripts/assembler_node.py
pkg/trunk/stacks/dense_laser_assembler/scripts/laser_image_node.py
pkg/trunk/stacks/dense_laser_assembler/src/
pkg/trunk/stacks/dense_laser_assembler/src/build_dense_laser_snapshot.cpp
pkg/trunk/stacks/dense_laser_assembler/src/dense_laser_assembler/
pkg/trunk/stacks/dense_laser_assembler/src/dense_laser_assembler/__init__.py
pkg/trunk/stacks/dense_laser_assembler/src/dense_laser_assembler/dense_laser_cache.py
pkg/trunk/stacks/dense_laser_assembler/src/dense_laser_assembler_srv.cpp
pkg/trunk/stacks/dense_laser_assembler/src/dense_laser_msg_filter.cpp
pkg/trunk/stacks/dense_laser_assembler/src/dense_laser_snapshotter.cpp
pkg/trunk/stacks/dense_laser_assembler/src/joint_extractor_display.cpp
pkg/trunk/stacks/dense_laser_assembler/src/laser_imager.cpp
pkg/trunk/stacks/dense_laser_assembler/src/tagged_laser_cache_display.cpp
pkg/trunk/stacks/dense_laser_assembler/srv/
pkg/trunk/stacks/dense_laser_assembler/srv/BuildLaserSnapshot.srv
Removed Paths:
-------------
pkg/trunk/calibration_experimental/dense_laser_assembler/CMakeLists.txt
pkg/trunk/calibration_experimental/dense_laser_assembler/Makefile
pkg/trunk/calibration_experimental/dense_laser_assembler/ROS_BUILD_BLACKLIST
pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/build_dense_laser_snapshot.h
pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/dense_laser_msg_filter.h
pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/joint_pv_msg_filter.h
pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/laser_scan_tagger.h
pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/tagged_laser_scan.h
pkg/trunk/calibration_experimental/dense_laser_assembler/mainpage.dox
pkg/trunk/calibration_experimental/dense_laser_assembler/manifest.xml
pkg/trunk/calibration_experimental/dense_laser_assembler/msg/Float32MultiArrayStamped.msg
pkg/trunk/calibration_experimental/dense_laser_assembler/msg/JointPVArray.msg
pkg/trunk/calibration_experimental/dense_laser_assembler/scripts/assembler_node.py
pkg/trunk/calibration_experimental/dense_laser_assembler/scripts/laser_image_node.py
pkg/trunk/calibration_experimental/dense_laser_assembler/src/build_dense_laser_snapshot.cpp
pkg/trunk/calibration_experimental/dense_laser_assembler/src/dense_laser_assembler/__init__.py
pkg/trunk/calibration_experimental/dense_laser_assembler/src/dense_laser_assembler/dense_laser_cache.py
pkg/trunk/calibration_experimental/dense_laser_assembler/src/dense_laser_assembler_srv.cpp
pkg/trunk/calibration_experimental/dense_laser_assembler/src/dense_laser_msg_filter.cpp
pkg/trunk/calibration_experimental/dense_laser_assembler/src/dense_laser_snapshotter.cpp
pkg/trunk/calibration_experimental/dense_laser_assembler/src/joint_extractor_display.cpp
pkg/trunk/calibration_experimental/dense_laser_assembler/src/laser_imager.cpp
pkg/trunk/calibration_experimental/dense_laser_assembler/src/tagged_laser_cache_display.cpp
pkg/trunk/calibration_experimental/dense_laser_assembler/srv/BuildLaserSnapshot.srv
Deleted: pkg/trunk/calibration_experimental/dense_laser_assembler/CMakeLists.txt
===================================================================
--- pkg/trunk/calibration_experimental/dense_laser_assembler/CMakeLists.txt 2009-09-01 23:03:52 UTC (rev 23609)
+++ pkg/trunk/calibration_experimental/dense_laser_assembler/CMakeLists.txt 2009-09-01 23:30:28 UTC (rev 23610)
@@ -1,35 +0,0 @@
-cmake_minimum_required(VERSION 2.4.6)
-include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
-
-# Set the build type. Options are:
-# Coverage : w/ debug symbols, w/o optimization, w/ code-coverage
-# Debug : w/ debug symbols, w/o optimization
-# Release : w/o debug symbols, w/ optimization
-# RelWithDebInfo : w/ debug symbols, w/ optimization
-# MinSizeRel : w/o debug symbols, w/ optimization, stripped binaries
-#set(ROS_BUILD_TYPE RelWithDebInfo)
-set(ROS_BUILD_TYPE Debug)
-
-rospack(dense_laser_assembler)
-
-rospack_add_library(dense_laser_assembler src/build_dense_laser_snapshot.cpp
- src/dense_laser_msg_filter.cpp)
-#rospack_add_executable(dense_laser_assembler_srv src/dense_laser_assembler_srv.cpp)
-#target_link_libraries(dense_laser_assembler_srv dense_laser_assembler)
-
-rospack_add_executable(joint_extractor_display src/joint_extractor_display.cpp)
-#rospack_add_executable(tagged_laser_cache_display src/tagged_laser_cache_display.cpp)
-
-rospack_add_executable(dense_laser_snapshotter src/dense_laser_snapshotter.cpp)
-target_link_libraries(dense_laser_snapshotter dense_laser_assembler)
-
-rospack_add_executable(laser_imager src/laser_imager.cpp)
-
-#rospack_add_executable(talker src/talker.cpp)
-#rospack_add_executable(listener src/listener.cpp)
-
-set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
-set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
-
-genmsg()
-gensrv()
Deleted: pkg/trunk/calibration_experimental/dense_laser_assembler/Makefile
===================================================================
--- pkg/trunk/calibration_experimental/dense_laser_assembler/Makefile 2009-09-01 23:03:52 UTC (rev 23609)
+++ pkg/trunk/calibration_experimental/dense_laser_assembler/Makefile 2009-09-01 23:30:28 UTC (rev 23610)
@@ -1 +0,0 @@
-include $(shell rospack find mk)/cmake.mk
\ No newline at end of file
Deleted: pkg/trunk/calibration_experimental/dense_laser_assembler/ROS_BUILD_BLACKLIST
===================================================================
--- pkg/trunk/calibration_experimental/dense_laser_assembler/ROS_BUILD_BLACKLIST 2009-09-01 23:03:52 UTC (rev 23609)
+++ pkg/trunk/calibration_experimental/dense_laser_assembler/ROS_BUILD_BLACKLIST 2009-09-01 23:30:28 UTC (rev 23610)
@@ -1 +0,0 @@
-
Deleted: pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/build_dense_laser_snapshot.h
===================================================================
--- pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/build_dense_laser_snapshot.h 2009-09-01 23:03:52 UTC (rev 23609)
+++ pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/build_dense_laser_snapshot.h 2009-09-01 23:30:28 UTC (rev 23610)
@@ -1,76 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-/*! \mainpage
- * \htmlinclude manifest.html
- */
-
-#ifndef DENSE_LASER_ASSEMBLER_BUILD_DENSE_LASER_SNAPSHOT_H_
-#define DENSE_LASER_ASSEMBLER_BUILD_DENSE_LASER_SNAPSHOT_H_
-
-
-#include <vector>
-#include "dense_laser_assembler/laser_scan_tagger.h"
-#include "message_filters/cache.h"
-
-#include "dense_laser_assembler/JointPVArray.h"
-#include "dense_laser_assembler/tagged_laser_scan.h"
-
-#include "calibration_msgs/DenseLaserSnapshot.h"
-
-
-namespace dense_laser_assembler
-{
-
-typedef LaserScanTagger<JointPVArray> LaserJointTagger ;
-typedef TaggedLaserScan<JointPVArray> JointTaggedLaserScan ;
-
-/**
- * \brief Builds a dense laser snapshot
- * Grabs all the scans between the start and end time, and composes them into one larger snapshot. This call is non-blocking.
- * Thus, if there are scans that haven't been cached yet, but occur before the end time, they won't be added to the snapshot.
- * \param start The earliest scan time to be included in the snapshot
- * \param end The latest scan time to be included in the snapshot
- * \param output: A populated snapshot message
- */
-
-bool buildDenseLaserSnapshot(const std::vector<boost::shared_ptr<const JointTaggedLaserScan> >& scans,
- const std::vector<std::string>& joint_names,
- calibration_msgs::DenseLaserSnapshot& snapshot) ;
-
-
-}
-
-
-#endif // DENSE_LASER_ASSEMBLER_BUILD_DENSE_LASER_SNAPSHOT
Deleted: pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/dense_laser_msg_filter.h
===================================================================
--- pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/dense_laser_msg_filter.h 2009-09-01 23:03:52 UTC (rev 23609)
+++ pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/dense_laser_msg_filter.h 2009-09-01 23:30:28 UTC (rev 23610)
@@ -1,201 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-//! \author Vijay Pradeep / vpr...@wi...
-
-
-#ifndef DENSE_LASER_ASSEMBLER_DENSE_LASER_MSG_FILTER_H_
-#define DENSE_LASER_ASSEMBLER_DENSE_LASER_MSG_FILTER_H_
-
-#include "ros/ros.h"
-#include "dense_laser_assembler/joint_pv_msg_filter.h"
-#include "dense_laser_assembler/laser_scan_tagger.h"
-#include "message_filters/cache.h"
-#include "message_filters/connection.h"
-#include "message_filters/simple_filter.h"
-
-
-// Messages
-#include "sensor_msgs/LaserScan.h"
-#include "pr2_mechanism_msgs/MechanismState.h"
-#include "calibration_msgs/DenseLaserSnapshot.h"
-
-#define CONSTRUCT_INT(param, default_val) \
- int param ;\
- if (!n_.getParam("~" #param, param) ) \
- { \
- ROS_WARN("[~" #param "] not set. Setting to default value of [%u]", default_val) ; \
- param = default_val ; \
- } \
- else \
- { \
- ROS_INFO("[~" #param "] set to value of [%u]", param) ; \
- }
-
-namespace dense_laser_assembler
-{
-
-/**
- * \brief Listens to LaserScan and MechanismState messages, and builds DenseLaserSnapshots
- */
-class DenseLaserMsgFilter : public message_filters::SimpleFilter<TaggedLaserScan<JointPVArray> >
-{
-public:
-
- typedef boost::shared_ptr<const TaggedLaserScan<JointPVArray> > MConstPtr ;
-
- //! \brief Not yet implemented
- template<class A, class B>
- DenseLaserMsgFilter(std::string name, A& a, B&b, unsigned int laser_queue_size,
- unsigned int laser_cache_size, unsigned int mech_state_cache,
- std::vector<std::string> joint_names) ;
-
-
- /**
- * \brief Construct assembler, and subscribe to the both LaserScan and MechanismState data providers
- * \param name Namespace for the node. Filter will search for params in ~/[name]/
- * \param laser_scan_provider MsgFilter that will provide LaserScan messages
- * \param mech_state_provider MsgFilter that will provide MechanismState message
- */
- template<class A, class B>
- DenseLaserMsgFilter(std::string name, A& laser_scan_provider, B& mech_state_provider)
- {
- subscribeLaserScan(laser_scan_provider) ;
- subscribeMechState(mech_state_provider) ;
-
- // Get all the different queue size parameters
- CONSTRUCT_INT(laser_queue_size, 40) ;
- CONSTRUCT_INT(laser_cache_size, 1000) ;
- CONSTRUCT_INT(mech_state_cache_size, 100) ;
-
- // Get the list of joints that we care about
- joint_names_.clear() ;
- bool found_joint = true ;
- int joint_count = 0 ;
-
- char param_buf[1024] ;
- while(found_joint)
- {
- sprintf(param_buf, "~joint_name_%02u", joint_count) ;
- std::string param_name = param_buf ;
- std::string cur_joint_name ;
- found_joint = n_.getParam(param_name, cur_joint_name) ;
- if (found_joint)
- {
- ROS_INFO("[%s] -> %s", param_name.c_str(), cur_joint_name.c_str()) ;
- joint_names_.push_back(cur_joint_name) ;
- }
- else
- ROS_DEBUG("Did not find param [%s]", param_name.c_str()) ;
- joint_count++ ;
- }
-
- // Configure the joint_pv_filter and associated cache
- joint_pv_filter_.setJointNames(joint_names_) ;
- joint_cache_.setCacheSize(mech_state_cache_size) ;
- joint_cache_.connectInput(joint_pv_filter_) ;
-
- // Set up the laser tagger and associated cache
- laser_tagger_.setMaxQueueSize(laser_queue_size) ;
- laser_tagger_.subscribeTagCache(joint_cache_) ;
- tagged_laser_cache_.setCacheSize(laser_cache_size) ;
- tagged_laser_cache_.connectInput(laser_tagger_) ;
- }
-
- //! \brief Not yet implemented
- void processLaserScan(const sensor_msgs::LaserScanConstPtr& msg) ;
-
- //! \brief Not yet implemented
- void processMechState(const pr2_mechanism_msgs::MechanismState& msg) ;
-
- //! \brief Get what the oldest time processed scan is
- ros::Time getOldestScanTime() ;
- //! \brief Get what the new time processed scan is
- ros::Time getNewstScanTime() ;
-
- /**
- * \brief Builds a dense laser snapshot
- * Grabs all the scans between the start and end time, and composes them into one larger snapshot. This call is non-blocking.
- * Thus, if there are scans that haven't been cached yet, but occur before the end time, they won't be added to the snapshot.
- * \param start The earliest scan time to be included in the snapshot
- * \param end The latest scan time to be included in the snapshot
- * \param output: A populated snapshot message
- * \return True if successful. False if unsuccessful
- */
- bool buildSnapshotFromInterval(const ros::Time& start, const ros::Time& end, calibration_msgs::DenseLaserSnapshot& snapshot) ;
-private:
- ros::NodeHandle n_ ;
-
- /**
- * \brief Subscribe to a message filter that outputs LaserScans.
- * This is only useful if we're not subscribing to laser scans in the constructor.
- * Thus, this will stay private until we have more flexible constructors
- */
- template<class A>
- void subscribeLaserScan(A& a)
- {
- laser_tagger_.subscribeLaserScan(a) ;
- }
-
- /**
- * \brief Subscribe to a message filter that outputs MechanismState.
- * This is only useful if we're not subscribing to MechanismState in the constructor.
- * Thus, this will stay private until we have more flexible constructors
- */
- template<class B>
- void subscribeMechState(B& b)
- {
- joint_pv_filter_.connectInput(b) ;
- }
-
- //! Extracts positions data for a subset of joints in MechanismState
- JointPVMsgFilter joint_pv_filter_ ;
-
- //! Stores a time history of position data for a subset of joints in MechanismState
- message_filters::Cache<JointPVArray> joint_cache_ ;
-
- //! Combines a laser scan with the set of pertinent joint positions
- LaserScanTagger< JointPVArray > laser_tagger_ ;
-
- //! Stores a time history of laser scans that are annotated with joint positions.
- message_filters::Cache< TaggedLaserScan<JointPVArray> > tagged_laser_cache_ ;
-
- std::vector<std::string> joint_names_ ;
-} ;
-
-}
-
-#undef CONSTRUCT_INT
-
-#endif
Deleted: pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/joint_pv_msg_filter.h
===================================================================
--- pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/joint_pv_msg_filter.h 2009-09-01 23:03:52 UTC (rev 23609)
+++ pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/joint_pv_msg_filter.h 2009-09-01 23:30:28 UTC (rev 23610)
@@ -1,155 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-/*! \mainpage
- * \htmlinclude manifest.html
- */
-
-#ifndef DENSE_LASER_ASSEMBLER_JOINT_PV_MSG_FILTER_H_
-#define DENSE_LASER_ASSEMBLER_JOINT_PV_MSG_FILTER_H_
-
-#include <vector>
-
-#include <boost/thread.hpp>
-#include <boost/shared_ptr.hpp>
-#include <boost/signals.hpp>
-#include <boost/bind.hpp>
-#include <message_filters/connection.h>
-#include <message_filters/simple_filter.h>
-
-// Messages
-#include "dense_laser_assembler/JointPVArray.h"
-#include "pr2_mechanism_msgs/MechanismState.h"
-
-namespace dense_laser_assembler
-{
-
-/**
- * Streams an array of joint positions and velocities from MechanismState,
- * given a mapping from joint_names to array indices
- */
-class JointPVMsgFilter : public message_filters::SimpleFilter<JointPVArray>
-{
-public:
- /**
- * \brief Subscribe to another MessageFilter at construction time
- * \param a The parent message filter
- * \param joint_names Vector of joint names that we want to output. Must match
- * joint names in mechanism state
- */
- template<class A>
- JointPVMsgFilter(A& a, std::vector<std::string> joint_names = std::vector<std::string>())
- {
- setJointNames(joint_names);
- subscribe(a);
- }
-
- /**
- * \brief Construct without subcribing to another MsgFilter at construction time
- * \param joint_names Vector of joint names that we want to output. Must match
- * joint names in mechanism state
- */
- JointPVMsgFilter(std::vector<std::string> joint_names = std::vector<std::string>())
- {
- setJointNames(joint_names);
- }
-
- /**
- * \brief Subcribes this MsgFilter to another MsgFilter
- * \param a The MsgFilter that this MsgFilter should get data from
- */
- template<class A>
- void connectInput(A& a)
- {
- incoming_connection_ = a.registerCallback(boost::bind(&JointPVMsgFilter::processMechState, this, _1));
- }
-
- /**
- * \brief Define the mapping from MechanismState to JointPVArray
- */
- void setJointNames(std::vector<std::string> joint_names)
- {
- boost::mutex::scoped_lock lock(joint_mapping_mutex_);
- joint_names_ = joint_names;
- }
-
- /**
- * \brief Extracts joint positions from MechState, using the joint_names mapping.
- * Also calls all the callback functions as set by connect()
- * \param msg The MechanismState message from which we want to extract positions
- */
- void processMechState(const pr2_mechanism_msgs::MechanismStateConstPtr& msg)
- {
- // Allocate mem to store out output data
- boost::shared_ptr<JointPVArray> joint_array_ptr(new JointPVArray) ;
-
- // Copy MechState data into a JointPVArray
- {
- boost::mutex::scoped_lock lock(joint_mapping_mutex_);
-
- joint_array_ptr->pos.resize(joint_names_.size()) ;
- joint_array_ptr->vel.resize(joint_names_.size()) ;
-
- joint_array_ptr->header = msg->header ;
-
- //! \todo This can seriously be optimized using a map, or some sort of cached lookup
- for (unsigned int i=0; i<joint_names_.size(); i++)
- {
- for (unsigned int j=0; j<msg->joint_states.size(); j++)
- {
- if (joint_names_[i] == msg->joint_states[j].name )
- {
- joint_array_ptr->pos[i] = msg->joint_states[j].position ;
- joint_array_ptr->vel[i] = msg->joint_states[j].velocity ;
- break ;
- }
- }
- }
- }
-
- // Call all connected callbacks
- signalMessage(joint_array_ptr) ;
- }
-
-protected:
- boost::mutex joint_mapping_mutex_ ;
- std::vector<std::string> joint_names_ ;
-
- // Filter Connection Stuff
- message_filters::Connection incoming_connection_;
-} ;
-
-}
-
-#endif // DENSE_LASER_ASSEMBLER_JOINT_PV_MSG_FILTER_H_
Deleted: pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/laser_scan_tagger.h
===================================================================
--- pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/laser_scan_tagger.h 2009-09-01 23:03:52 UTC (rev 23609)
+++ pkg/trunk/calibration_experimental/dense_laser_assembler/include/dense_laser_assembler/laser_scan_tagger.h 2009-09-01 23:30:28 UTC (rev 23610)
@@ -1,217 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-/*! \mainpage
- * \htmlinclude manifest.html
- */
-
-#ifndef DENSE_LASER_ASSEMBLER_LASER_SCAN_TAGGER_H_
-#define DENSE_LASER_ASSEMBLER_LASER_SCAN_TAGGER_H_
-
-#include <deque>
-#include "sensor_msgs/LaserScan.h"
-#include "message_filters/cache.h"
-#include "boost/shared_ptr.hpp"
-#include "dense_laser_assembler/tagged_laser_scan.h"
-
-#include <message_filters/simple_filter.h>
-
-namespace dense_laser_assembler
-{
-
-/**
- * Listens to LaserScans and a cache of 'tag' messages. Outputs a laserScan
- * whenever there is a tag msg that occurs before and after the scan.
- */
-template <class T>
-class LaserScanTagger : public message_filters::SimpleFilter<TaggedLaserScan<T> >
-{
-public:
-
- typedef boost::shared_ptr<const T> TConstPtr ;
- typedef boost::shared_ptr<const TaggedLaserScan<T> > MConstPtr ;
-
-
-
- template<class A>
- /**
- * \brief Construct object, and also subscribe to relevant data sources
- */
- LaserScanTagger(A& a, message_filters::Cache<T>& tag_cache, unsigned int max_queue_size)
- {
- subscribeLaserScan(a);
- subscribeTagCache(tag_cache);
- setMaxQueueSize(max_queue_size);
- tag_cache_ = &tag_cache ;
- max_queue_size_ = max_queue_size ;
- }
-
- LaserScanTagger()
- {
- tag_cache_ = NULL;
- setMaxQueueSize(1);
- }
-
- ~LaserScanTagger()
- {
- incoming_laser_scan_connection_.disconnect() ;
- incoming_tag_connection_.disconnect() ;
- }
-
- template<class A>
- void subscribeLaserScan(A& a)
- {
- incoming_laser_scan_connection_ = a.registerCallback(boost::bind(&LaserScanTagger<T>::processLaserScan, this, _1));
- }
-
- void subscribeTagCache(message_filters::Cache<T>& tag_cache)
- {
- tag_cache_ = &tag_cache ;
- incoming_tag_connection_ = tag_cache.registerCallback(boost::bind(&LaserScanTagger<T>::processTag, this, _1));
- }
-
- void setMaxQueueSize(unsigned int max_queue_size)
- {
- boost::mutex::scoped_lock lock(queue_mutex_);
- max_queue_size_ = max_queue_size;
- }
-
- /**
- * Adds the laser scan onto the queue of scans that need to be matched with the tags
- */
- void processLaserScan(const sensor_msgs::LaserScanConstPtr& msg)
- {
- {
- boost::mutex::scoped_lock lock(queue_mutex_);
- //! \todo need to more carefully decide on overflow logic
- if (queue_.size() < max_queue_size_)
- queue_.push_back(msg) ;
- else
- ROS_WARN("Queue full, not pushing new data onto queue until queue is serviced") ;
- }...
[truncated message content] |
|
From: <vij...@us...> - 2009-09-01 23:42:36
|
Revision: 23613
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23613&view=rev
Author: vijaypradeep
Date: 2009-09-01 23:42:29 +0000 (Tue, 01 Sep 2009)
Log Message:
-----------
Removing dead folder trees
Removed Paths:
-------------
pkg/trunk/calibration_experimental/dense_laser_assembler/
pkg/trunk/stacks/dense_laser_assembler/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <vij...@us...> - 2009-09-02 02:18:40
|
Revision: 23640
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23640&view=rev
Author: vijaypradeep
Date: 2009-09-02 02:18:28 +0000 (Wed, 02 Sep 2009)
Log Message:
-----------
Moving pr2_laser_snapshotter into pr2 stack
Added Paths:
-----------
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/CMakeLists.txt
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/Makefile
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/mainpage.dox
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/manifest.xml
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/src/
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/src/point_cloud_srv.cpp
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/src/pr2_laser_snapshotter.cpp
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/srv/
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/srv/BuildCloudAngle.srv
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/test/
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/test/dummy_scan_producer.cpp
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/test/test_assembler.cpp
pkg/trunk/stacks/pr2/pr2_laser_snapshotter/test/test_laser_assembler.launch
Removed Paths:
-------------
pkg/trunk/pr2/pr2_laser_snapshotter/CMakeLists.txt
pkg/trunk/pr2/pr2_laser_snapshotter/Makefile
pkg/trunk/pr2/pr2_laser_snapshotter/mainpage.dox
pkg/trunk/pr2/pr2_laser_snapshotter/manifest.xml
pkg/trunk/pr2/pr2_laser_snapshotter/src/point_cloud_srv.cpp
pkg/trunk/pr2/pr2_laser_snapshotter/src/pr2_laser_snapshotter.cpp
pkg/trunk/pr2/pr2_laser_snapshotter/srv/BuildCloudAngle.srv
pkg/trunk/pr2/pr2_laser_snapshotter/test/dummy_scan_producer.cpp
pkg/trunk/pr2/pr2_laser_snapshotter/test/test_assembler.cpp
pkg/trunk/pr2/pr2_laser_snapshotter/test/test_laser_assembler.launch
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/CMakeLists.txt
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/CMakeLists.txt 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/CMakeLists.txt 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,40 +0,0 @@
-cmake_minimum_required(VERSION 2.4.6)
-include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
-
-# Set the build type. Options are:
-# Coverage : w/ debug symbols, w/o optimization, w/ code-coverage
-# Debug : w/ debug symbols, w/o optimization
-# Release : w/o debug symbols, w/ optimization
-# RelWithDebInfo : w/ debug symbols, w/ optimization
-# MinSizeRel : w/o debug symbols, w/ optimization, stripped binaries
-
-#set(ROS_BUILD_TYPE RelWithDebInfo)
-
-rosbuild_init()
-
-set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
-set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
-
-# rosbuild_genmsg()
-rosbuild_gensrv()
-
-rosbuild_add_executable(pr2_laser_snapshotter src/pr2_laser_snapshotter.cpp)
-rosbuild_add_executable(point_cloud_srv src/point_cloud_srv.cpp)
-
-# Needed to run rostests
-rosbuild_add_executable(dummy_scan_producer test/dummy_scan_producer.cpp)
-
-rosbuild_add_executable(test_assembler
- test/test_assembler.cpp)
-rosbuild_link_boost(test_assembler thread)
-rosbuild_add_gtest_build_flags(test_assembler)
-
-rosbuild_add_rostest(${CMAKE_CURRENT_SOURCE_DIR}/test/test_laser_assembler.launch)
-
-#common commands for building c++ executables and libraries
-#rosbuild_add_library(${PROJECT_NAME} src/example.cpp)
-#target_link_libraries(${PROJECT_NAME} another_library)
-#rosbuild_add_boost_directories()
-#rosbuild_link_boost(${PROJECT_NAME} thread)
-#rosbuild_add_executable(example examples/example.cpp)
-#target_link_libraries(example ${PROJECT_NAME})
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/Makefile
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/Makefile 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/Makefile 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1 +0,0 @@
-include $(shell rospack find mk)/cmake.mk
\ No newline at end of file
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/mainpage.dox
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/mainpage.dox 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/mainpage.dox 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,119 +0,0 @@
-/**
-\mainpage
-\htmlinclude manifest.html
-
-\b pr2_laser_snapshotter is ...
-
-<!--
-In addition to providing an overview of your package,
-this is the section where the specification and design/architecture
-should be detailed. While the original specification may be done on the
-wiki, it should be transferred here once your package starts to take shape.
-You can then link to this documentation page from the Wiki.
--->
-
-
-\section codeapi Code API
-
-<!--
-Provide links to specific auto-generated API documentation within your
-package that is of particular interest to a reader. Doxygen will
-document pretty much every part of your code, so do your best here to
-point the reader to the actual API.
-
-If your codebase is fairly large or has different sets of APIs, you
-should use the doxygen 'group' tag to keep these APIs together. For
-example, the roscpp documentation has 'libros' group.
--->
-
-\section rosapi ROS API
-
-<!--
-Names are very important in ROS because they can be remapped on the
-command-line, so it is VERY IMPORTANT THAT YOU LIST NAMES AS THEY
-APPEAR IN THE CODE. You should list names of every topic, service and
-parameter used in your code. There is a template below that you can
-use to document each node separately.
-
-List of nodes:
-- \b node_name1
-- \b node_name2
--->
-
-<!-- START: copy from here to 'END' for each node
-
-<hr>
-
-\subsection node_name node_name
-
-node_name does (provide a basic description of your node)
-
-\subsubsection Usage
-\verbatim
-$ node_type1 [standard ROS args]
-\endverbatim
-
-\par Example
-
-\verbatim
-$ node_type1
-\endverbatim
-
-
-\subsubsection topics ROS topics
-
-Subscribes to:
-- \b "in": [std_msgs/FooType] description of in
-
-Publishes to:
-- \b "out": [std_msgs/FooType] description of out
-
-
-\subsubsection parameters ROS parameters
-
-Reads the following parameters from the parameter server
-
-- \b "~param_name" : \b [type] description of param_name
-- \b "~my_param" : \b [string] description of my_param
-
-Sets the following parameters on the parameter server
-
-- \b "~param_name" : \b [type] description of param_name
-
-
-\subsubsection services ROS services
-- \b "foo_service": [std_srvs/FooType] description of foo_service
-
-
-END: copy for each node -->
-
-
-<!-- START: Uncomment if you have any command-line tools
-
-\section commandline Command-line tools
-
-This section is a catch-all for any additional tools that your package
-provides or uses that may be of use to the reader. For example:
-
-- tools/scripts (e.g. rospack, roscd)
-- roslaunch .launch files
-- xmlparam files
-
-\subsection script_name script_name
-
-Description of what this script/file does.
-
-\subsubsection Usage
-\verbatim
-$ ./script_name [args]
-\endverbatim
-
-\par Example
-
-\verbatim
-$ ./script_name foo bar
-\endverbatim
-
-END: Command-Line Tools Section -->
-
-*/
\ No newline at end of file
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/manifest.xml
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/manifest.xml 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/manifest.xml 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,30 +0,0 @@
-<package>
- <description brief="Build point clouds from PR2's tilting laser mechanism">
- Uses the laser_assembler to generate points clouds from each sweep from PR2's
- tilting laser mechanism.
- </description>
- <author>Vijay Pradeep</author>
- <license>BSD</license>
- <review status="unreviewed" notes=""/>
- <url>http://pr.willowgarage.com/wiki/pr2_laser_snapshotter</url>
-
- <export>
- <cpp cflags="-I${prefix}/srv/cpp" />
- </export>
-
- <!-- ROS -->
- <depend package="roscpp" />
-
- <!-- common_msgs -->
- <depend package="sensor_msgs" />
- <depend package="geometry_msgs" />
-
- <!-- pr2_msgs -->
- <depend package="pr2_msgs" />
-
- <!-- laser_pipeline -->
- <depend package="laser_assembler" />
-
-</package>
-
-
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/src/point_cloud_srv.cpp
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/src/point_cloud_srv.cpp 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/src/point_cloud_srv.cpp 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,156 +0,0 @@
-/********************************************************************* * Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-#include "ros/node.h"
-
-// Services
-#include "laser_assembler/AssembleScans.h"
-#include "pr2_laser_snapshotter/BuildCloudAngle.h"
-#include "pr2_msgs/SetPeriodicCmd.h"
-
-// Messages
-#include "sensor_msgs/PointCloud.h"
-#include "pr2_msgs/LaserScannerSignal.h"
-
-#include <boost/thread/mutex.hpp>
-
-
-/***
- * This uses the point_cloud_assembler's build_cloud service call to grab all the scans/clouds between two tilt-laser shutters
- * params
- * * "~target_frame_id" (string) - This is the frame that the scanned data transformed into. The
- * output clouds are also published in this frame.
- */
-
-namespace pr2_laser_snapshotter
-{
-
-using namespace ros;
-using namespace std;
-
-class PointCloudSrv : public ros::Node
-{
-private:
- pr2_msgs::LaserScannerSignal laser_scanner_signal_;
- ros::Time laser_time_;
- boost::mutex laser_mutex_;
-
-
-public:
- PointCloudSrv() :
- ros::Node("point_cloud_srv")
- {
- advertiseService("point_cloud_srv/single_sweep_cloud", &PointCloudSrv::buildSingleSweepCloud, this);
- subscribe("laser_tilt_controller/laser_scanner_signal", laser_scanner_signal_, &PointCloudSrv::scannerSignalCallback, 40) ;
-
- laser_time_ = Time().fromSec(0);
- }
-
- ~PointCloudSrv()
- {
- unsubscribe("laser_tilt_controller/laser_scanner_signal") ;
- unadvertiseService("point_cloud_srv/single_sweep_cloud") ;
- }
-
-
- bool buildSingleSweepCloud(pr2_laser_snapshotter::BuildCloudAngle::Request &req,
- pr2_laser_snapshotter::BuildCloudAngle::Response &res)
- {
- // send command to tilt laser scanner
- pr2_msgs::SetPeriodicCmd::Request scan_req;
- pr2_msgs::SetPeriodicCmd::Response scan_res;
- scan_req.command.amplitude = fabs(req.angle_end - req.angle_begin)/2.0;
- scan_req.command.offset = (req.angle_end + req.angle_begin)/2.0;
- scan_req.command.period = req.duration*2.0;
- scan_req.command.profile = "linear";
- if (!ros::service::call("laser_tilt_controller/set_periodic_cmd", scan_req, scan_res))
- ROS_ERROR("PointCloudSrv: error setting laser scanner periodic command");
- else
- ROS_INFO("PointCloudSrv: commanded tilt laser scanner with period %f, amplitude %f and offset %f",
- scan_req.command.period, scan_req.command.amplitude, scan_req.command.offset);
-
-
- // wait for signal from laser to know when scan is finished
- Time begin_time = scan_res.start_time;
- Duration timeout = Duration().fromSec(2.0);
- while (laser_time_ < begin_time){
- boost::mutex::scoped_lock laser_lock(laser_mutex_);
- if (ros::Time::now() > begin_time + Duration().fromSec(req.duration) + timeout){
- ROS_ERROR("PointCloudSrv: Timeout waiting for laser scan to come in");
- return false;
- }
- laser_lock.unlock();
- Duration().fromSec(0.05).sleep();
- }
- Time end_time = laser_time_;
- ROS_INFO("PointCloudSrv: generated point cloud from time %f to %f", begin_time.toSec(), end_time.toSec());
-
- // get a point cloud from the point cloud assembler
- laser_assembler::AssembleScans::Request assembler_req ;
- laser_assembler::AssembleScans::Response assembler_res ;
- assembler_req.begin = begin_time;
- assembler_req.end = end_time;
- if (!ros::service::call("laser_scan_assembler/build_cloud", assembler_req, assembler_res))
- ROS_ERROR("PointCloudSrv: error receiving point cloud from point cloud assembler");
- else
- ROS_INFO("PointCloudSrv: received point cloud of size %i from point cloud assembler", assembler_res.cloud.points.size());
-
- res.cloud = assembler_res.cloud;
- return true;
- }
-
-
- void scannerSignalCallback()
- {
- boost::mutex::scoped_lock laser_lock(laser_mutex_);
- // note time when tilt laser is pointing down
- if (laser_scanner_signal_.signal == 1){
- laser_time_ = laser_scanner_signal_.header.stamp;
- }
-}
-
-} ;
-
-}
-
-
-using namespace pr2_laser_snapshotter;
-
-int main(int argc, char **argv)
-{
- ros::init(argc, argv);
- PointCloudSrv cloud_srv;
- cloud_srv.spin();
-
- return 0;
-}
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/src/pr2_laser_snapshotter.cpp
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/src/pr2_laser_snapshotter.cpp 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/src/pr2_laser_snapshotter.cpp 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,145 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-#include "ros/node.h"
-
-// Services
-#include "laser_assembler/AssembleScans.h"
-
-// Messages
-#include "sensor_msgs/PointCloud.h"
-#include "pr2_msgs/LaserScannerSignal.h"
-
-/***
- * This uses the point_cloud_assembler's build_cloud service call to grab all the scans/clouds between two tilt-laser shutters
- * params
- * * "~target_frame_id" (string) - This is the frame that the scanned data transformed into. The
- * output clouds are also published in this frame.
- * * "~num_skips" (int) - If set to N>0, then the snapshotter will skip N signals before
- * requesting a new snapshot. This will make the snapshots be N times
- * larger. Default 0 - no skipping.
- */
-
-namespace pr2_laser_snapshotter
-{
-
-class PR2LaserSnapshotter
-{
-
-public:
- ros::NodeHandle n_;
- ros::Publisher pub_;
- ros::Subscriber sub_;
-
- pr2_msgs::LaserScannerSignal prev_signal_;
-
- bool first_time_;
-
- int num_skips_;
- int num_skips_left_;
-
- std::string fixed_frame_;
-
- PR2LaserSnapshotter()
- {
- prev_signal_.header.stamp.fromNSec(0);
-
- pub_ = n_.advertise<sensor_msgs::PointCloud> ("full_cloud", 1);
- sub_ = n_.subscribe("laser_scanner_signal", 40, &PR2LaserSnapshotter::scannerSignalCallback, this);
-
- n_.param("~num_skips", num_skips_, 0);
- num_skips_left_=num_skips_;
-
- first_time_ = true;
- }
-
- ~PR2LaserSnapshotter()
- {
-
- }
-
- void scannerSignalCallback(const pr2_msgs::LaserScannerSignalConstPtr& cur_signal)
- {
- if (cur_signal->signal == 128 || cur_signal->signal == 129) // These codes imply that this is the first signal during a given profile type
- first_time_ = true;
-
-
- if (first_time_)
- {
- prev_signal_ = *cur_signal;
- first_time_ = false;
- }
- else
- {
- if(num_skips_>0)
- {
- if(num_skips_left_>0)
- {
- num_skips_left_ -= 1;
- return;
- }
- else
- {
- num_skips_left_=num_skips_;
- }
- }
-
- laser_assembler::AssembleScans::Request req;
- laser_assembler::AssembleScans::Response resp;
-
- req.begin = prev_signal_.header.stamp;
- req.end = cur_signal->header.stamp;
-
- if (!ros::service::call("build_cloud", req, resp))
- ROS_ERROR("Failed to call service on point cloud assembler or laser scan assembler.");
-
- pub_.publish(resp.cloud);
- ROS_DEBUG("Snapshotter::Published Cloud size=%u", resp.cloud.get_points_size());
-
- prev_signal_ = *cur_signal;
- }
- }
-} ;
-
-}
-
-using namespace pr2_laser_snapshotter;
-
-int main(int argc, char **argv)
-{
- ros::init(argc, argv, "pr2_laser_snapshotter");
- PR2LaserSnapshotter snapshotter ;
- ros::spin();
- return 0;
-}
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/srv/BuildCloudAngle.srv
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/srv/BuildCloudAngle.srv 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/srv/BuildCloudAngle.srv 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,5 +0,0 @@
-float64 angle_begin
-float64 angle_end
-float64 duration
----
-sensor_msgs/PointCloud cloud
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/test/dummy_scan_producer.cpp
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/test/dummy_scan_producer.cpp 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/test/dummy_scan_producer.cpp 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,121 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-/* Author: Vijay Pradeep */
-
-/**
- * Generate dummy scans in order to not be dependent on bag files in order to run tests
- **/
-
-#include <boost/thread.hpp>
-#include <ros/ros.h>
-#include <tf/transform_broadcaster.h>
-#include <sensor_msgs/LaserScan.h>
-#include <pr2_msgs/LaserScannerSignal.h>
-
-
-void runLoop()
-{
- ros::NodeHandle nh;
-
- ros::Publisher scan_pub = nh.advertise<sensor_msgs::LaserScan>("dummy_scan", 100);
- ros::Publisher signal_pub = nh.advertise<pr2_msgs::LaserScannerSignal>("dummy_signal", 100);
- ros::Rate loop_rate(20);
-
- // Configure the Transform broadcaster
- tf::TransformBroadcaster broadcaster;
- tf::Transform laser_transform(btQuaternion(0,0,0,1));
-
- // Populate the dummy laser scan
- sensor_msgs::LaserScan scan;
- scan.header.frame_id = "dummy_laser_link";
- scan.angle_min = 0.0;
- scan.angle_max = 99.0;
- scan.angle_increment = 1.0;
- scan.time_increment = .001;
- scan.scan_time = .05;
- scan.range_min = .01;
- scan.range_max = 100.0;
-
- const unsigned int N = 100;
- scan.ranges.resize(N);
- scan.intensities.resize(N);
-
- for (unsigned int i=0; i<N; i++)
- {
- scan.ranges[i] = 10.0;
- scan.intensities[i] = 10.0;
- }
-
- unsigned int cloud_count = 0;
-
- // Immeadiately send out a starting scan
- pr2_msgs::LaserScannerSignal signal;
- signal.header.stamp = scan.header.stamp;
- signal.signal = 1;
- signal_pub.publish(signal);
-
- // Loop for each cloud
- //while (nh.ok() & cloud_count < 1000)
- while (nh.ok())
- {
- unsigned int scan_count = 0;
- // Loop for each scan
- while (nh.ok() & scan_count < 10)
- {
- scan.header.stamp = ros::Time::now();
- scan_pub.publish(scan);
- broadcaster.sendTransform(laser_transform, scan.header.stamp, "dummy_laser_link", "dummy_base_link");
- scan_count++;
- loop_rate.sleep();
- }
-
- signal.header.stamp = scan.header.stamp;
- signal.signal = cloud_count % 2;
- signal_pub.publish(signal);
-
- ROS_INFO("Done publishing cloud [%u]", cloud_count);
- cloud_count++;
- }
-}
-
-int main(int argc, char** argv)
-{
- ros::init(argc, argv, "scan_producer");
- ros::NodeHandle nh;
- boost::thread run_thread(&runLoop);
- ros::spin();
- run_thread.join();
- return 0;
-}
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/test/test_assembler.cpp
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/test/test_assembler.cpp 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/test/test_assembler.cpp 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,140 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-/* Author: Vijay Pradeep */
-
-#include <string>
-#include <gtest/gtest.h>
-#include "ros/node.h"
-#include "sensor_msgs/PointCloud.h"
-#include "sensor_msgs/LaserScan.h"
-#include "boost/thread.hpp"
-
-using namespace ros;
-using namespace sensor_msgs;
-
-int g_argc;
-char** g_argv;
-
-class TestAssembler : public testing::Test
-{
-public:
-
- NodeHandle n_;
-
- sensor_msgs::PointCloud cloud_msg_ ;
- boost::mutex cloud_mutex_ ;
- sensor_msgs::PointCloud safe_cloud_ ;
- int cloud_counter_ ;
-
- LaserScan scan_msg_ ;
- boost::mutex scan_mutex_ ;
- LaserScan safe_scan_ ;
- int scan_counter_ ;
-
-
- void CloudCallback(const PointCloudConstPtr& cloud_msg)
- {
- cloud_mutex_.lock() ;
- cloud_counter_++ ;
- safe_cloud_ = *cloud_msg ;
- cloud_mutex_.unlock() ;
- ROS_INFO("Got Cloud with %u points", cloud_msg_.get_points_size()) ;
- }
-
- void ScanCallback(const LaserScanConstPtr& scan_msg)
- {
- scan_mutex_.lock() ;
- scan_counter_++ ;
- safe_scan_ = *scan_msg ;
- scan_mutex_.unlock() ;
- //ROS_INFO("Got Scan") ;
- }
-
-protected:
- /// constructor
- TestAssembler()
- {
- cloud_counter_ = 0 ;
- scan_counter_ = 0 ;
- }
-
- /// Destructor
- ~TestAssembler()
- {
-
- }
-};
-
-
-TEST_F(TestAssembler, test)
-{
- ROS_INFO("Starting test F");
- ros::Subscriber cloud_sub = n_.subscribe("dummy_cloud", 10, &TestAssembler::CloudCallback, (TestAssembler*)this);
- ros::Subscriber scan_sub = n_.subscribe("dummy_scan", 10, &TestAssembler::ScanCallback, (TestAssembler*)this);
-
- bool waiting = true;
- while(n_.ok() && waiting )
- {
- ros::spinOnce();
- usleep(1e2) ;
-
- scan_mutex_.lock() ;
- waiting = (scan_counter_ < 55) ;
- scan_mutex_.unlock() ;
- }
-
- usleep(1e6) ;
-
- ASSERT_GT(cloud_counter_, 0) ;
-
- unsigned int cloud_size ;
- cloud_mutex_.lock() ;
- cloud_size = safe_cloud_.get_points_size() ;
- cloud_mutex_.unlock() ;
-
- EXPECT_EQ((unsigned int) 1000, cloud_size) ;
-
- SUCCEED();
-}
-
-int main(int argc, char** argv)
-{
- printf("******* Starting application *********\n");
-
- testing::InitGoogleTest(&argc, argv);
- ros::init(argc, argv, "test_assembler_node");
-
- return RUN_ALL_TESTS();
-}
Deleted: pkg/trunk/pr2/pr2_laser_snapshotter/test/test_laser_assembler.launch
===================================================================
--- pkg/trunk/pr2/pr2_laser_snapshotter/test/test_laser_assembler.launch 2009-09-02 02:14:28 UTC (rev 23639)
+++ pkg/trunk/pr2/pr2_laser_snapshotter/test/test_laser_assembler.launch 2009-09-02 02:18:28 UTC (rev 23640)
@@ -1,21 +0,0 @@
-<launch>
-
- <node pkg="laser_assembler" type="laser_scan_assembler_srv" output="screen" name="laser_scan_assembler">
- <remap from="scan_in" to="dummy_scan"/>
- <param name="tf_cache_time_secs" type="double" value="10.0" />
- <param name="max_scans" type="int" value="400" />
- <param name="ignore_laser_skew" type="bool" value="true" />
- <param name="fixed_frame" type="string" value="dummy_base_link" />
- </node>
-
- <node pkg="pr2_laser_snapshotter" type="pr2_laser_snapshotter" output="screen" name="snapshotter">
- <remap from="laser_scanner_signal" to="dummy_signal"/>
- <remap from="build_cloud" to="laser_scan_assembler/build_cloud" />
- <remap from="full_cloud" to="dummy_cloud" />
- </node>
-
- <node pkg="pr2_laser_snapshotter" type="dummy_scan_producer" output="screen"/>
-
- <test test-name="test_laser_assembler" pkg="pr2_laser_snapshotter" type="test_assembler" />
-
-</launch>
Copied: pkg/trunk/stacks/pr2/pr2_laser_snapshotter/CMakeLists.txt (from rev 23639, pkg/trunk/pr2/pr2_laser_snapshotter/CMak...
[truncated message content] |
|
From: <vij...@us...> - 2009-09-02 03:07:00
|
Revision: 23655
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23655&view=rev
Author: vijaypradeep
Date: 2009-09-02 03:06:51 +0000 (Wed, 02 Sep 2009)
Log Message:
-----------
Adding dense_laser_snapshotter. Compiles, but not tested. Still need to write unit-tests
Modified Paths:
--------------
pkg/trunk/stacks/calibration/dense_laser_assembler/include/dense_laser_assembler/dense_laser_assembler.h
pkg/trunk/stacks/calibration/dense_laser_assembler/manifest.xml
pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_assembler.cpp
Added Paths:
-----------
pkg/trunk/sandbox/pr2_dense_laser_snapshotter/
pkg/trunk/sandbox/pr2_dense_laser_snapshotter/CMakeLists.txt
pkg/trunk/sandbox/pr2_dense_laser_snapshotter/Makefile
pkg/trunk/sandbox/pr2_dense_laser_snapshotter/mainpage.dox
pkg/trunk/sandbox/pr2_dense_laser_snapshotter/manifest.xml
pkg/trunk/sandbox/pr2_dense_laser_snapshotter/src/
pkg/trunk/sandbox/pr2_dense_laser_snapshotter/src/dense_laser_snapshotter.cpp
Removed Paths:
-------------
pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_snapshotter.cpp
Added: pkg/trunk/sandbox/pr2_dense_laser_snapshotter/CMakeLists.txt
===================================================================
--- pkg/trunk/sandbox/pr2_dense_laser_snapshotter/CMakeLists.txt (rev 0)
+++ pkg/trunk/sandbox/pr2_dense_laser_snapshotter/CMakeLists.txt 2009-09-02 03:06:51 UTC (rev 23655)
@@ -0,0 +1,30 @@
+cmake_minimum_required(VERSION 2.4.6)
+include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)
+
+# Set the build type. Options are:
+# Coverage : w/ debug symbols, w/o optimization, w/ code-coverage
+# Debug : w/ debug symbols, w/o optimization
+# Release : w/o debug symbols, w/ optimization
+# RelWithDebInfo : w/ debug symbols, w/ optimization
+# MinSizeRel : w/o debug symbols, w/ optimization, stripped binaries
+#set(ROS_BUILD_TYPE RelWithDebInfo)
+
+rosbuild_init()
+
+#set the default path for built executables to the "bin" directory
+set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
+#set the default path for built libraries to the "lib" directory
+set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)
+
+# rosbuild_genmsg()
+# rosbuild_gensrv()
+
+rosbuild_add_executable(dense_laser_snapshotter src/dense_laser_snapshotter.cpp)
+
+#common commands for building c++ executables and libraries
+#rosbuild_add_library(${PROJECT_NAME} src/example.cpp)
+#target_link_libraries(${PROJECT_NAME} another_library)
+#rosbuild_add_boost_directories()
+#rosbuild_link_boost(${PROJECT_NAME} thread)
+#rosbuild_add_executable(example examples/example.cpp)
+#target_link_libraries(example ${PROJECT_NAME})
Added: pkg/trunk/sandbox/pr2_dense_laser_snapshotter/Makefile
===================================================================
--- pkg/trunk/sandbox/pr2_dense_laser_snapshotter/Makefile (rev 0)
+++ pkg/trunk/sandbox/pr2_dense_laser_snapshotter/Makefile 2009-09-02 03:06:51 UTC (rev 23655)
@@ -0,0 +1 @@
+include $(shell rospack find mk)/cmake.mk
\ No newline at end of file
Added: pkg/trunk/sandbox/pr2_dense_laser_snapshotter/mainpage.dox
===================================================================
--- pkg/trunk/sandbox/pr2_dense_laser_snapshotter/mainpage.dox (rev 0)
+++ pkg/trunk/sandbox/pr2_dense_laser_snapshotter/mainpage.dox 2009-09-02 03:06:51 UTC (rev 23655)
@@ -0,0 +1,119 @@
+/**
+\mainpage
+\htmlinclude manifest.html
+
+\b pr2_dense_laser_snapshotter is ...
+
+<!--
+In addition to providing an overview of your package,
+this is the section where the specification and design/architecture
+should be detailed. While the original specification may be done on the
+wiki, it should be transferred here once your package starts to take shape.
+You can then link to this documentation page from the Wiki.
+-->
+
+
+\section codeapi Code API
+
+<!--
+Provide links to specific auto-generated API documentation within your
+package that is of particular interest to a reader. Doxygen will
+document pretty much every part of your code, so do your best here to
+point the reader to the actual API.
+
+If your codebase is fairly large or has different sets of APIs, you
+should use the doxygen 'group' tag to keep these APIs together. For
+example, the roscpp documentation has 'libros' group.
+-->
+
+\section rosapi ROS API
+
+<!--
+Names are very important in ROS because they can be remapped on the
+command-line, so it is VERY IMPORTANT THAT YOU LIST NAMES AS THEY
+APPEAR IN THE CODE. You should list names of every topic, service and
+parameter used in your code. There is a template below that you can
+use to document each node separately.
+
+List of nodes:
+- \b node_name1
+- \b node_name2
+-->
+
+<!-- START: copy from here to 'END' for each node
+
+<hr>
+
+\subsection node_name node_name
+
+node_name does (provide a basic description of your node)
+
+\subsubsection Usage
+\verbatim
+$ node_type1 [standard ROS args]
+\endverbatim
+
+\par Example
+
+\verbatim
+$ node_type1
+\endverbatim
+
+
+\subsubsection topics ROS topics
+
+Subscribes to:
+- \b "in": [std_msgs/FooType] description of in
+
+Publishes to:
+- \b "out": [std_msgs/FooType] description of out
+
+
+\subsubsection parameters ROS parameters
+
+Reads the following parameters from the parameter server
+
+- \b "~param_name" : \b [type] description of param_name
+- \b "~my_param" : \b [string] description of my_param
+
+Sets the following parameters on the parameter server
+
+- \b "~param_name" : \b [type] description of param_name
+
+
+\subsubsection services ROS services
+- \b "foo_service": [std_srvs/FooType] description of foo_service
+
+
+END: copy for each node -->
+
+
+<!-- START: Uncomment if you have any command-line tools
+
+\section commandline Command-line tools
+
+This section is a catch-all for any additional tools that your package
+provides or uses that may be of use to the reader. For example:
+
+- tools/scripts (e.g. rospack, roscd)
+- roslaunch .launch files
+- xmlparam files
+
+\subsection script_name script_name
+
+Description of what this script/file does.
+
+\subsubsection Usage
+\verbatim
+$ ./script_name [args]
+\endverbatim
+
+\par Example
+
+\verbatim
+$ ./script_name foo bar
+\endverbatim
+
+END: Command-Line Tools Section -->
+
+*/
\ No newline at end of file
Added: pkg/trunk/sandbox/pr2_dense_laser_snapshotter/manifest.xml
===================================================================
--- pkg/trunk/sandbox/pr2_dense_laser_snapshotter/manifest.xml (rev 0)
+++ pkg/trunk/sandbox/pr2_dense_laser_snapshotter/manifest.xml 2009-09-02 03:06:51 UTC (rev 23655)
@@ -0,0 +1,18 @@
+<package>
+ <description brief="pr2_dense_laser_snapshotter">
+
+ pr2_dense_laser_snapshotter
+
+ </description>
+ <author>Vijay Pradeep</author>
+ <license>BSD</license>
+ <review status="unreviewed" notes=""/>
+ <url>http://pr.willowgarage.com/wiki/pr2_dense_laser_snapshotter</url>
+
+ <depend package="dense_laser_assembler"/>
+ <depend package="pr2_msgs"/>
+
+
+</package>
+
+
Copied: pkg/trunk/sandbox/pr2_dense_laser_snapshotter/src/dense_laser_snapshotter.cpp (from rev 23654, pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_snapshotter.cpp)
===================================================================
--- pkg/trunk/sandbox/pr2_dense_laser_snapshotter/src/dense_laser_snapshotter.cpp (rev 0)
+++ pkg/trunk/sandbox/pr2_dense_laser_snapshotter/src/dense_laser_snapshotter.cpp 2009-09-02 03:06:51 UTC (rev 23655)
@@ -0,0 +1,120 @@
+/*********************************************************************
+* Software License Agreement (BSD License)
+*
+* Copyright (c) 2008, Willow Garage, Inc.
+* All rights reserved.
+*
+* Redistribution and use in source and binary forms, with or without
+* modification, are permitted provided that the following conditions
+* are met:
+*
+* * Redistributions of source code must retain the above copyright
+* notice, this list of conditions and the following disclaimer.
+* * Redistributions in binary form must reproduce the above
+* copyright notice, this list of conditions and the following
+* disclaimer in the documentation and/or other materials provided
+* with the distribution.
+* * Neither the name of the Willow Garage nor the names of its
+* contributors may be used to endorse or promote products derived
+* from this software without specific prior written permission.
+*
+* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+* POSSIBILITY OF SUCH DAMAGE.
+*********************************************************************/
+
+#include "ros/ros.h"
+
+#include <dense_laser_assembler/dense_laser_assembler.h>
+
+// Messages
+#include "sensor_msgs/LaserScan.h"
+#include "calibration_msgs/DenseLaserSnapshot.h"
+#include "pr2_msgs/LaserScannerSignal.h"
+
+using namespace dense_laser_assembler ;
+
+/**
+ * \brief Builds a DenseLaserSnapshot message from laser scans collected in a specified time interval
+ */
+class DenseLaserSnapshotter
+{
+
+public:
+
+ DenseLaserSnapshotter()
+ {
+ prev_signal_.header.stamp = ros::Time(0, 0);
+ signal_sub_ = n_.subscribe("laser_tilt_controller/laser_scanner_signal", 2, &DenseLaserSnapshotter::scannerSignalCallback, this);
+ snapshot_pub_ = n_.advertise<calibration_msgs::DenseLaserSnapshot> ("dense_laser_snapshot", 1);
+ first_time_ = true;
+ }
+
+ ~DenseLaserSnapshotter()
+ {
+
+ }
+
+ void scannerSignalCallback(const pr2_msgs::LaserScannerSignalConstPtr& cur_signal)
+ {
+ ROS_DEBUG("Got Scanner Signal") ;
+
+ if (first_time_)
+ {
+ prev_signal_ = *cur_signal ;
+ first_time_ = false ;
+ }
+ else
+ {
+ if (cur_signal->signal == 1)
+ {
+ ROS_DEBUG("About to make request");
+
+ ros::Time start = prev_signal_.header.stamp;
+ ros::Time end = cur_signal->header.stamp;
+
+ calibration_msgs::DenseLaserSnapshot snapshot;
+
+ assembler_.assembleSnapshot(start, end, snapshot);
+
+ ROS_DEBUG("header.stamp: %f", snapshot.header.stamp.toSec());
+ ROS_DEBUG("header.frame_id: %s", snapshot.header.frame_id.c_str());
+ ROS_DEBUG("ranges.size()=%u", snapshot.ranges.size());
+ ROS_DEBUG("intensities.size()=%u", snapshot.intensities.size());
+ ROS_DEBUG("scan_start.size()=%u", snapshot.scan_start.size());
+ snapshot_pub_.publish(snapshot);
+ }
+ else
+ ROS_DEBUG("Not making request");
+ prev_signal_ = *cur_signal;
+ }
+ }
+
+private:
+ ros::NodeHandle n_;
+ ros::Publisher snapshot_pub_;
+ ros::Subscriber signal_sub_;
+ ros::Subscriber scan_sub_;
+ DenseLaserAssembler assembler_;
+ pr2_msgs::LaserScannerSignal prev_signal_;
+
+ bool first_time_ ;
+};
+
+int main(int argc, char **argv)
+{
+ ros::init(argc, argv, "dense_laser_snapshotter") ;
+ DenseLaserSnapshotter snapshotter ;
+ ros::spin() ;
+
+ return 0;
+}
Modified: pkg/trunk/stacks/calibration/dense_laser_assembler/include/dense_laser_assembler/dense_laser_assembler.h
===================================================================
--- pkg/trunk/stacks/calibration/dense_laser_assembler/include/dense_laser_assembler/dense_laser_assembler.h 2009-09-02 03:02:30 UTC (rev 23654)
+++ pkg/trunk/stacks/calibration/dense_laser_assembler/include/dense_laser_assembler/dense_laser_assembler.h 2009-09-02 03:06:51 UTC (rev 23655)
@@ -60,8 +60,9 @@
* \param start The earliest scan time to be included in the snapshot
* \param end The latest scan time to be included in the snapshot
* \param output: A populated snapshot message
+ * \return True on success
*/
- void assembleSnapshot(const ros::Time& start, const ros::Time& end, calibration_msgs::DenseLaserSnapshot& snapshot);
+ bool assembleSnapshot(const ros::Time& start, const ros::Time& end, calibration_msgs::DenseLaserSnapshot& snapshot);
private:
Modified: pkg/trunk/stacks/calibration/dense_laser_assembler/manifest.xml
===================================================================
--- pkg/trunk/stacks/calibration/dense_laser_assembler/manifest.xml 2009-09-02 03:02:30 UTC (rev 23654)
+++ pkg/trunk/stacks/calibration/dense_laser_assembler/manifest.xml 2009-09-02 03:06:51 UTC (rev 23655)
@@ -22,7 +22,7 @@
<depend package="settlerlib" />
<export>
- <cpp cflags="-I{prefix}/include" />
+ <cpp cflags="-I${prefix}/include" lflags="-L${prefix}/lib -ldense_laser_assembler"/>
</export>
</package>
Modified: pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_assembler.cpp
===================================================================
--- pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_assembler.cpp 2009-09-02 03:02:30 UTC (rev 23654)
+++ pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_assembler.cpp 2009-09-02 03:06:51 UTC (rev 23655)
@@ -53,8 +53,15 @@
cache_.add(laser_scan);
}
+bool DenseLaserAssembler::assembleSnapshot(const ros::Time& start, const ros::Time& end, calibration_msgs::DenseLaserSnapshot& snapshot)
+{
+ vector< sensor_msgs::LaserScanConstPtr > scan_vec;
+ cache_.getInterval(start, end);
+ return flattenScanVec(scan_vec, snapshot);
+}
+
bool DenseLaserAssembler::flattenScanVec(const std::vector< sensor_msgs::LaserScanConstPtr >& scans,
- calibration_msgs::DenseLaserSnapshot& snapshot)
+ calibration_msgs::DenseLaserSnapshot& snapshot)
{
if (scans.size() == 0)
{
Deleted: pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_snapshotter.cpp
===================================================================
--- pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_snapshotter.cpp 2009-09-02 03:02:30 UTC (rev 23654)
+++ pkg/trunk/stacks/calibration/dense_laser_assembler/src/dense_laser_snapshotter.cpp 2009-09-02 03:06:51 UTC (rev 23655)
@@ -1,132 +0,0 @@
-/*********************************************************************
-* Software License Agreement (BSD License)
-*
-* Copyright (c) 2008, Willow Garage, Inc.
-* All rights reserved.
-*
-* Redistribution and use in source and binary forms, with or without
-* modification, are permitted provided that the following conditions
-* are met:
-*
-* * Redistributions of source code must retain the above copyright
-* notice, this list of conditions and the following disclaimer.
-* * Redistributions in binary form must reproduce the above
-* copyright notice, this list of conditions and the following
-* disclaimer in the documentation and/or other materials provided
-* with the distribution.
-* * Neither the name of the Willow Garage nor the names of its
-* contributors may be used to endorse or promote products derived
-* from this software without specific prior written permission.
-*
-* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-* POSSIBILITY OF SUCH DAMAGE.
-*********************************************************************/
-
-#include "ros/ros.h"
-
-
-#include "message_filters/subscriber.h"
-#include "dense_laser_assembler/dense_laser_msg_filter.h"
-
-// Messages
-#include "calibration_msgs/DenseLaserSnapshot.h"
-#include "pr2_msgs/LaserScannerSignal.h"
-
-
-using namespace dense_laser_assembler ;
-
-/**
- * \brief Builds a DenseLaserSnapshot message from laser scans collected in a specified time interval
- */
-class DenseLaserSnapshotter
-{
-
-public:
-
- DenseLaserSnapshotter() :
- scan_sub_(n_, "tilt_scan", 20),
- mech_state_sub_(n_, "mechanism_state", 20),
- dense_laser_filter_("dense_laser_filter", scan_sub_, mech_state_sub_)
- {
- prev_signal_.header.stamp.fromNSec(0) ;
- signal_sub_ = n_.subscribe("laser_tilt_controller/laser_scanner_signal", 2, &DenseLaserSnapshotter::scannerSignalCallback, this) ;
- snapshot_pub_ = n_.advertise<calibration_msgs::DenseLaserSnapshot> ("dense_laser_snapshot", 1) ;
- first_time_ = true ;
- }
-
- ~DenseLaserSnapshotter()
- {
-
- }
-
- void scannerSignalCallback(const pr2_msgs::LaserScannerSignalConstPtr& cur_signal)
- {
- ROS_DEBUG("Got Scanner Signal") ;
- if (cur_signal->signal == 128 || cur_signal->signal == 129) // These codes imply that this is the first signal during a given profile type
- first_time_ = true ;
-
-
- if (first_time_)
- {
- prev_signal_ = *cur_signal ;
- first_time_ = false ;
- }
- else
- {
- if (cur_signal->signal == 1)
- {
- ROS_DEBUG("About to make request") ;
-
- ros::Time start = prev_signal_.header.stamp ;
- ros::Time end = cur_signal->header.stamp ;
-
- calibration_msgs::DenseLaserSnapshot snapshot ;
-
- dense_laser_filter_.buildSnapshotFromInterval(start, end, snapshot) ;
-
- ROS_DEBUG("header.stamp: %f", snapshot.header.stamp.toSec()) ;
- ROS_DEBUG("header.frame_id: %s", snapshot.header.frame_id.c_str()) ;
- ROS_DEBUG("ranges.size()=%u", snapshot.ranges.size()) ;
- ROS_DEBUG("intensities.size()=%u", snapshot.intensities.size()) ;
- ROS_DEBUG("joint_positions.size()=%u", snapshot.joint_positions.size()) ;
- ROS_DEBUG("joint_velocities.size()=%u", snapshot.joint_velocities.size()) ;
- ROS_DEBUG("scan_start.size()=%u", snapshot.scan_start.size()) ;
- snapshot_pub_.publish(snapshot) ;
-
- }
- else
- ROS_DEBUG("Not making request") ;
- prev_signal_ = *cur_signal ;
- }
- }
-
-private:
- ros::NodeHandle n_ ;
- ros::Publisher snapshot_pub_ ;
- ros::Subscriber signal_sub_ ;
- message_filters::Subscriber<sensor_msgs::LaserScan> scan_sub_ ;
- message_filters::Subscriber<pr2_mechanism_msgs::MechanismState> mech_state_sub_ ;
- DenseLaserMsgFilter dense_laser_filter_ ;
- pr2_msgs::LaserScannerSignal prev_signal_;
-
- bool first_time_ ;
-} ;
-
-int main(int argc, char **argv)
-{
- ros::init(argc, argv, "dense_laser_snapshotter") ;
- DenseLaserSnapshotter snapshotter ;
- ros::spin() ;
-
- return 0;
-}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <sf...@us...> - 2009-09-02 05:44:40
|
Revision: 23673
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23673&view=rev
Author: sfkwc
Date: 2009-09-02 05:44:31 +0000 (Wed, 02 Sep 2009)
Log Message:
-----------
moving audio into stacks/ for staging into ros-pkg
Added Paths:
-----------
pkg/trunk/stacks/audio/
Removed Paths:
-------------
pkg/trunk/audio/
Property changes on: pkg/trunk/stacks/audio
___________________________________________________________________
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/audio:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <hsu...@us...> - 2009-09-02 08:57:23
|
Revision: 23686
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23686&view=rev
Author: hsujohnhsu
Date: 2009-09-02 08:57:17 +0000 (Wed, 02 Sep 2009)
Log Message:
-----------
moving per ticket #2710
Modified Paths:
--------------
pkg/trunk/drivers/stack.xml
pkg/trunk/stacks/pr2_simulator/stack.xml
pkg/trunk/stacks/pr2_simulator/test_pr2_mechanism_controllers_gazebo/manifest.xml
pkg/trunk/stacks/pr2_simulator/test_pr2_sensors_gazebo/manifest.xml
Added Paths:
-----------
pkg/trunk/stacks/pr2_simulator/test_gazebo_plugin/
pkg/trunk/stacks/pr2_simulator/test_pr2_collision_gazebo/
pkg/trunk/stacks/pr2_simulator/test_pr2_mechanism_controllers_gazebo/
pkg/trunk/stacks/pr2_simulator/test_pr2_sensors_gazebo/
Removed Paths:
-------------
pkg/trunk/drivers/simulator/test_gazebo_plugin/
pkg/trunk/drivers/simulator/test_pr2_collision_gazebo/
pkg/trunk/drivers/simulator/test_pr2_mechanism_controllers_gazebo/
pkg/trunk/drivers/simulator/test_pr2_sensors_gazebo/
Modified: pkg/trunk/drivers/stack.xml
===================================================================
--- pkg/trunk/drivers/stack.xml 2009-09-02 08:55:35 UTC (rev 23685)
+++ pkg/trunk/drivers/stack.xml 2009-09-02 08:57:17 UTC (rev 23686)
@@ -16,7 +16,6 @@
<depend stack="controllers"/> <!-- pr2_mechanism_controllers, robot_mechanism_controllers -->
<depend stack="opencv"/> <!-- opencv_latest -->
<depend stack="3rdparty"/> <!-- player -->
- <depend stack="pr2_simulator"/> <!-- gazebo_plugin -->
<depend stack="diagnostics"/> <!-- diagnostic_updater -->
<depend stack="calibration_experimental"/> <!-- mocap_msgs -->
<depend stack="pr2_common"/> <!-- pr2_ogre, pr2_msgs -->
Modified: pkg/trunk/stacks/pr2_simulator/stack.xml
===================================================================
--- pkg/trunk/stacks/pr2_simulator/stack.xml 2009-09-02 08:55:35 UTC (rev 23685)
+++ pkg/trunk/stacks/pr2_simulator/stack.xml 2009-09-02 08:57:17 UTC (rev 23686)
@@ -18,4 +18,9 @@
<depend stack="robot_model" /> <!-- urdf, convex_decomposition, ivcon -->
<depend stack="ros" /> <!-- std_msgs, roscpp, rospy -->
<depend stack="visualization_common"/> <!-- ogre_tools -->
+
+ <!-- added for tests -->
+ <!--depend stack="semantic_mapping"/--> <!-- semantic_point_annotator, causes circular dependency -->
+ <depend stack="laser_pipeline"/> <!-- laser_filters -->
+ <depend stack="image_pipeline"/> <!-- stereo_image_proc -->
</stack>
Property changes on: pkg/trunk/stacks/pr2_simulator/test_gazebo_plugin
___________________________________________________________________
Added: svn:ignore
+ .build_version
.rosgcov_files
bin
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/drivers/simulator/test_gazebo_plugin:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
Property changes on: pkg/trunk/stacks/pr2_simulator/test_pr2_collision_gazebo
___________________________________________________________________
Added: svn:ignore
+ .build_version
.rosgcov_files
bin
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/drivers/simulator/test_pr2_collision_gazebo:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
Property changes on: pkg/trunk/stacks/pr2_simulator/test_pr2_mechanism_controllers_gazebo
___________________________________________________________________
Added: svn:ignore
+ .build_version
.rosgcov_files
bin
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/drivers/simulator/test_pr2_mechanism_controllers_gazebo:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
Modified: pkg/trunk/stacks/pr2_simulator/test_pr2_mechanism_controllers_gazebo/manifest.xml
===================================================================
--- pkg/trunk/drivers/simulator/test_pr2_mechanism_controllers_gazebo/manifest.xml 2009-09-02 08:00:11 UTC (rev 23682)
+++ pkg/trunk/stacks/pr2_simulator/test_pr2_mechanism_controllers_gazebo/manifest.xml 2009-09-02 08:57:17 UTC (rev 23686)
@@ -9,8 +9,8 @@
<depend package="rospy"/>
<depend package="rostest"/>
<depend package="gazebo_plugin"/>
+ <depend package="pr2_mechanism_controllers" />
<depend package="arm_gazebo" />
- <depend package="pr2_mechanism_controllers" />
<depend package="pr2_gazebo" />
<depend package="pr2_ogre" />
<depend package="gazebo_worlds" />
Property changes on: pkg/trunk/stacks/pr2_simulator/test_pr2_sensors_gazebo
___________________________________________________________________
Added: svn:ignore
+ .build_version
.rosgcov_files
bin
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/drivers/simulator/test_pr2_sensors_gazebo:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
Modified: pkg/trunk/stacks/pr2_simulator/test_pr2_sensors_gazebo/manifest.xml
===================================================================
--- pkg/trunk/drivers/simulator/test_pr2_sensors_gazebo/manifest.xml 2009-09-02 08:00:11 UTC (rev 23682)
+++ pkg/trunk/stacks/pr2_simulator/test_pr2_sensors_gazebo/manifest.xml 2009-09-02 08:57:17 UTC (rev 23686)
@@ -20,9 +20,9 @@
<!-- for laser scan -->
<depend package="pr2_mechanism_control"/>
<depend package="pr2_mechanism_controllers"/>
- <depend package="semantic_point_annotator"/>
- <depend package="laser_filters"/>
- <depend package="mux"/>
- <depend package="robot_self_filter"/>
+ <depend package="semantic_point_annotator"/> <!-- in semantic_mapping -->
+ <depend package="laser_filters"/> <!-- in laser_pipeline -->
+ <depend package="robot_self_filter"/> <!-- in motion_planning/non-stack -->
+ <depend package="mux"/> <!-- deprecated, udpate 2dnav_pr2 launch scripts? -->
</package>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <pmi...@us...> - 2009-09-02 17:10:45
|
Revision: 23697
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23697&view=rev
Author: pmihelich
Date: 2009-09-02 17:10:32 +0000 (Wed, 02 Sep 2009)
Log Message:
-----------
camera_calibration: Moved to image_pipeline.
Added Paths:
-----------
pkg/trunk/stacks/image_pipeline/camera_calibration/
Removed Paths:
-------------
pkg/trunk/calibration_experimental/camera_calibration/
Property changes on: pkg/trunk/stacks/image_pipeline/camera_calibration
___________________________________________________________________
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/calibration_experimental/camera_calibration:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <is...@us...> - 2009-09-02 21:47:16
|
Revision: 23712
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23712&view=rev
Author: isucan
Date: 2009-09-02 21:46:41 +0000 (Wed, 02 Sep 2009)
Log Message:
-----------
switching the arm planning stack to the new parser; changing planning groups to contain joints rather than links; planning_models::StateParams becomes planning_models::KinematicState, added planning_models::KinematicModel::JointGroup, cleaner interface, no longer doing recursive FK
Modified Paths:
--------------
pkg/trunk/highlevel/move_arm/launch/arm_cmd_line.launch
pkg/trunk/highlevel/move_arm/launch/move_rarm.launch
pkg/trunk/highlevel/move_arm/src/arm_cmd_line.cpp
pkg/trunk/highlevel/move_arm/src/move_arm_action.cpp
pkg/trunk/highlevel/move_arm/src/move_arm_setup.cpp
pkg/trunk/highlevel/move_arm/src/record_path.cpp
pkg/trunk/highlevel/move_arm/src/record_state.cpp
pkg/trunk/highlevel/move_arm/src/teleop_arm.cpp
pkg/trunk/motion_planning/motion_planning_rviz_plugin/manifest.xml
pkg/trunk/motion_planning/motion_planning_rviz_plugin/src/planning_display.cpp
pkg/trunk/motion_planning/ompl_planning/src/motion_planner.cpp
pkg/trunk/motion_planning/ompl_planning/src/request_handler/RequestHandler.cpp
pkg/trunk/motion_planning/ompl_planning/src/request_handler/RequestHandler.h
pkg/trunk/motion_planning/ompl_ros/include/ompl_ros/ModelBase.h
pkg/trunk/motion_planning/ompl_ros/include/ompl_ros/dynamic/SpaceInformation.h
pkg/trunk/motion_planning/ompl_ros/include/ompl_ros/dynamic/StateValidator.h
pkg/trunk/motion_planning/ompl_ros/include/ompl_ros/kinematic/SpaceInformation.h
pkg/trunk/motion_planning/ompl_ros/include/ompl_ros/kinematic/StateValidator.h
pkg/trunk/motion_planning/ompl_ros/manifest.xml
pkg/trunk/motion_planning/ompl_ros/src/ModelBase.cpp
pkg/trunk/motion_planning/ompl_ros/src/base/GoalDefinitions.cpp
pkg/trunk/motion_planning/ompl_ros/src/base/ProjectionEvaluators.cpp
pkg/trunk/motion_planning/ompl_ros/src/dynamic/SpaceInformation.cpp
pkg/trunk/motion_planning/ompl_ros/src/dynamic/StateValidator.cpp
pkg/trunk/motion_planning/ompl_ros/src/kinematic/SpaceInformation.cpp
pkg/trunk/motion_planning/ompl_ros/src/kinematic/StateValidator.cpp
pkg/trunk/motion_planning/planning_environment/include/planning_environment/models/robot_models.h
pkg/trunk/motion_planning/planning_environment/include/planning_environment/monitors/kinematic_model_state_monitor.h
pkg/trunk/motion_planning/planning_environment/include/planning_environment/monitors/planning_monitor.h
pkg/trunk/motion_planning/planning_environment/include/planning_environment/util/kinematic_state_constraint_evaluator.h
pkg/trunk/motion_planning/planning_environment/src/models/robot_models.cpp
pkg/trunk/motion_planning/planning_environment/src/monitors/kinematic_model_state_monitor.cpp
pkg/trunk/motion_planning/planning_environment/src/monitors/planning_monitor.cpp
pkg/trunk/motion_planning/planning_environment/src/tools/clear_known_objects.cpp
pkg/trunk/motion_planning/planning_environment/src/util/kinematic_state_constraint_evaluator.cpp
pkg/trunk/motion_planning/planning_environment/test/test_robot_models.cpp
pkg/trunk/motion_planning/planning_models/CMakeLists.txt
pkg/trunk/motion_planning/planning_models/include/planning_models/kinematic_model.h
pkg/trunk/motion_planning/planning_models/manifest.xml
pkg/trunk/motion_planning/planning_models/src/kinematic_model.cpp
pkg/trunk/motion_planning/planning_research/pm_wrapper/include/pm_wrapper/pm_wrapper.h
pkg/trunk/motion_planning/planning_research/pm_wrapper/src/pm_wrapper.cpp
pkg/trunk/motion_planning/self_watch/self_watch.cpp
pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/collision_map_self_occ.launch
pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/tilt_laser_self_filter.launch
pkg/trunk/sandbox/3dnav_pr2/launch/perception/laser-perception.launch
pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_planning.launch
pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_search.launch
pkg/trunk/sandbox/3dnav_pr2/launch/pr2_planning_environment.launch
pkg/trunk/sandbox/3dnav_pr2/params/planning/planning.yaml
pkg/trunk/sandbox/chomp_motion_planner/manifest.xml
pkg/trunk/sandbox/chomp_motion_planner/src/chomp_robot_model.cpp
pkg/trunk/sandbox/fake_motion_planning/fake_motion_planner.cpp
pkg/trunk/sandbox/fake_motion_planning/manifest.xml
pkg/trunk/sandbox/fk_node/src/fk_node.cpp
pkg/trunk/sandbox/ompl_search/src/SearchRequestHandler.cpp
pkg/trunk/sandbox/ompl_search/src/SearchRequestHandler.h
pkg/trunk/sandbox/ompl_search/src/search_valid_state.cpp
pkg/trunk/sandbox/robot_voxelizer/include/robot_voxelizer/robot_voxelizer.h
pkg/trunk/world_models/collision_space/include/collision_space/environment.h
pkg/trunk/world_models/collision_space/src/environmentODE.cpp
pkg/trunk/world_models/test_collision_space/src/collision_test_speed.cpp
Added Paths:
-----------
pkg/trunk/motion_planning/planning_models/test/test_kinematic.cpp
Removed Paths:
-------------
pkg/trunk/motion_planning/planning_models/include/planning_models/kinematic.h
pkg/trunk/motion_planning/planning_models/include/planning_models/kinematic_state_params.h
pkg/trunk/motion_planning/planning_models/include/planning_models/output.h
pkg/trunk/motion_planning/planning_models/src/kinematic.cpp
pkg/trunk/motion_planning/planning_models/src/kinematic_state_params.cpp
pkg/trunk/motion_planning/planning_models/src/output.cpp
pkg/trunk/motion_planning/planning_models/test/test_kinematic.cpp
pkg/trunk/motion_planning/planning_models/test/test_kinematic2.cpp
Modified: pkg/trunk/highlevel/move_arm/launch/arm_cmd_line.launch
===================================================================
--- pkg/trunk/highlevel/move_arm/launch/arm_cmd_line.launch 2009-09-02 21:42:16 UTC (rev 23711)
+++ pkg/trunk/highlevel/move_arm/launch/arm_cmd_line.launch 2009-09-02 21:46:41 UTC (rev 23712)
@@ -1,6 +1,6 @@
<launch>
<node pkg="move_arm" type="arm_cmd_line" output="screen" args="right">
- <remap from="robot_description" to="robot_description" />
+ <remap from="robot_description" to="robot_description_new" />
<remap from="arm_ik" to="pr2_ik_right_arm/ik_service" />
</node>
</launch>
Modified: pkg/trunk/highlevel/move_arm/launch/move_rarm.launch
===================================================================
--- pkg/trunk/highlevel/move_arm/launch/move_rarm.launch 2009-09-02 21:42:16 UTC (rev 23711)
+++ pkg/trunk/highlevel/move_arm/launch/move_rarm.launch 2009-09-02 21:46:41 UTC (rev 23712)
@@ -1,6 +1,7 @@
<launch>
<node pkg="move_arm" type="move_arm_action" output="screen" name="move_right_arm">
+ <remap from="robot_description" to="robot_description_new" />
<remap from="collision_map" to="collision_map_occ" />
<remap from="collision_map_update" to="collision_map_occ_update" />
@@ -15,7 +16,7 @@
<param name="group" type="string" value="right_arm" />
<param name="show_collisions" type="bool" value="true" />
- <param name="refresh_interval_collision_map" type="double" value="20.0" />
+ <param name="refresh_interval_collision_map" type="double" value="0.0" />
<param name="refresh_interval_kinematic_state" type="double" value="1.0" />
<param name="bounding_planes" type="string" value="0 0 1 -0.01" />
</node>
Modified: pkg/trunk/highlevel/move_arm/src/arm_cmd_line.cpp
===================================================================
--- pkg/trunk/highlevel/move_arm/src/arm_cmd_line.cpp 2009-09-02 21:42:16 UTC (rev 23711)
+++ pkg/trunk/highlevel/move_arm/src/arm_cmd_line.cpp 2009-09-02 21:46:41 UTC (rev 23712)
@@ -44,6 +44,7 @@
#include <mapping_msgs/AttachedObject.h>
#include <planning_environment/monitors/kinematic_model_state_monitor.h>
+#include <planning_models/kinematic_state.h>
#include <motion_planning_msgs/KinematicPath.h>
#include <manipulation_msgs/JointTraj.h>
#include <manipulation_srvs/IKService.h>
@@ -87,12 +88,12 @@
void printJoints(const planning_environment::KinematicModelStateMonitor &km, const std::vector<std::string> &names)
{
- const planning_models::KinematicModel::ModelInfo &mi = km.getKinematicModel()->getModelInfo();
+ const std::vector<double> &bounds = km.getKinematicModel()->getStateBounds();
for (unsigned int i = 0 ; i < names.size(); ++i)
{
- int idx = km.getKinematicModel()->getJointIndex(names[i]);
- std::cout << " " << i << " = " << names[i] << " [" << mi.stateBounds[idx * 2] << ", " << mi.stateBounds[idx * 2 + 1] << "]" << std::endl;
+ int idx = km.getKinematicModel()->getJoint(names[i])->stateIndex;
+ std::cout << " " << i << " = " << names[i] << " [" << bounds[idx * 2] << ", " << bounds[idx * 2 + 1] << "]" << std::endl;
}
}
@@ -103,7 +104,7 @@
std::cout << " -rotation [x, y, z, w] = [" << q.x() << ", " << q.y() << ", " << q.z() << ", " << q.w() << "]" << std::endl;
}
-void goalToState(const move_arm::MoveArmGoal &goal, planning_models::StateParams &sp)
+void goalToState(const move_arm::MoveArmGoal &goal, planning_models::KinematicState &sp)
{
for (unsigned int i = 0 ; i < goal.goal_constraints.joint_constraint.size() ; ++i)
{
@@ -114,7 +115,7 @@
btTransform effPosition(const planning_environment::KinematicModelStateMonitor &km, const move_arm::MoveArmGoal &goal)
{
- planning_models::StateParams sp(*km.getRobotState());
+ planning_models::KinematicState sp(*km.getRobotState());
goalToState(goal, sp);
km.getKinematicModel()->computeTransforms(sp.getParams());
return km.getKinematicModel()->getJoint(goal.goal_constraints.joint_constraint.back().joint_name)->after->globalTrans;
@@ -223,10 +224,10 @@
goal.contacts[1].pose = goal.goal_constraints.pose_constraint[0].pose;
}
-void setConfig(const planning_models::StateParams *_sp, const std::vector<std::string> &names, move_arm::MoveArmGoal &goal)
+void setConfig(const planning_models::KinematicState *_sp, const std::vector<std::string> &names, move_arm::MoveArmGoal &goal)
{
setupGoal(names, goal);
- planning_models::StateParams sp(*_sp);
+ planning_models::KinematicState sp(*_sp);
sp.enforceBounds();
for (unsigned int i = 0 ; i < names.size() ; ++i)
{
@@ -235,7 +236,7 @@
}
}
-void getIK(bool r, ros::NodeHandle &nh, planning_environment::KinematicModelStateMonitor &km, move_arm::MoveArmGoal &goal, planning_models::StateParams &sp,
+void getIK(bool r, ros::NodeHandle &nh, planning_environment::KinematicModelStateMonitor &km, move_arm::MoveArmGoal &goal, planning_models::KinematicState &sp,
const std::vector<std::string> &names, double x, double y, double z)
{
ros::ServiceClient client = nh.serviceClient<manipulation_srvs::IKService>("arm_ik");
@@ -252,7 +253,7 @@
request.data.pose_stamped.pose.orientation.w = 1;
request.data.joint_names = names;
- planning_models::StateParams rs(*km.getRobotState());
+ planning_models::KinematicState rs(*km.getRobotState());
if (r)
rs.randomState();
@@ -308,7 +309,7 @@
std::cout << " -rotation distance: " << angle << std::endl;
}
-void viewState(ros::Publisher &view, const planning_environment::KinematicModelStateMonitor &km, const planning_models::StateParams &st)
+void viewState(ros::Publisher &view, const planning_environment::KinematicModelStateMonitor &km, const planning_models::KinematicState &st)
{
motion_planning_msgs::KinematicPath kp;
@@ -316,7 +317,7 @@
kp.header.stamp = km.lastJointStateUpdate();
// fill in start state with current one
- std::vector<planning_models::KinematicModel::Joint*> joints;
+ std::vector<const planning_models::KinematicModel::Joint*> joints;
km.getKinematicModel()->getJoints(joints);
kp.start_state.resize(joints.size());
@@ -503,7 +504,7 @@
else
if (cmd == "view")
{
- planning_models::StateParams st(*km.getRobotState());
+ planning_models::KinematicState st(*km.getRobotState());
viewState(view, km, st);
}
else
@@ -528,7 +529,7 @@
setConfig(km.getRobotState(), names, temp);
btTransform p = effPosition(km, temp);
- planning_models::StateParams sp(*km.getRobotState());
+ planning_models::KinematicState sp(*km.getRobotState());
getIK(false, nh, km, temp, sp, names, p.getOrigin().x() + fwd, p.getOrigin().y(), p.getOrigin().z());
sp.copyParamsJoints(traj.points[1].positions, names);
@@ -571,7 +572,7 @@
setConfig(km.getRobotState(), names, temp);
btTransform p = effPosition(km, temp);
- planning_models::StateParams sp(*km.getRobotState());
+ planning_models::KinematicState sp(*km.getRobotState());
getIK(false, nh, km, temp, sp, names, p.getOrigin().x(), p.getOrigin().y(), p.getOrigin().z() + up);
sp.copyParamsJoints(traj.points[1].positions, names);
@@ -601,7 +602,7 @@
std::cout << "Configuration '" << config << "' not found" << std::endl;
else
{
- planning_models::StateParams st(*km.getRobotState());
+ planning_models::KinematicState st(*km.getRobotState());
goalToState(goals[config], st);
viewState(view, km, st);
}
@@ -643,7 +644,7 @@
{
std::string config = cmd.substr(5);
boost::trim(config);
- planning_models::StateParams *sp = km.getKinematicModel()->newStateParams();
+ planning_models::KinematicState *sp = new planning_models::KinematicState(km.getKinematicModel());
sp->randomState();
setConfig(sp, names, goals[config]);
delete sp;
@@ -675,7 +676,7 @@
ss >> z;
err = false;
std::cout << "Performing IK to " << x << ", " << y << ", " << z << ", 0, 0, 0, 1..." << std::endl;
- planning_models::StateParams sp(*km.getRobotState());
+ planning_models::KinematicState sp(*km.getRobotState());
getIK(true, nh, km, goals[config], sp, names, x, y, z);
}
}
@@ -692,7 +693,7 @@
std::string fnm = getenv("HOME") + ("/states/" + state);
std::ifstream in(fnm.c_str());
- planning_models::StateParams sp(*km.getRobotState());
+ planning_models::KinematicState sp(*km.getRobotState());
std::vector<double> params;
while (in.good() && !in.eof())
{
Modified: pkg/trunk/highlevel/move_arm/src/move_arm_action.cpp
===================================================================
--- pkg/trunk/highlevel/move_arm/src/move_arm_action.cpp 2009-09-02 21:42:16 UTC (rev 23711)
+++ pkg/trunk/highlevel/move_arm/src/move_arm_action.cpp 2009-09-02 21:46:41 UTC (rev 23712)
@@ -104,9 +104,9 @@
/// A state with a cost attached to it. Used internally to sort states by cost
struct CostState
{
- boost::shared_ptr<planning_models::StateParams> state;
- double cost;
- unsigned int index;
+ boost::shared_ptr<planning_models::KinematicState> state;
+ double cost;
+ unsigned int index;
};
/// Ordering function for states with cost attached
@@ -135,7 +135,7 @@
/// Representation of a state and its corresponding joint constraints
struct StateAndConstraint
{
- boost::shared_ptr<planning_models::StateParams> state;
+ boost::shared_ptr<planning_models::KinematicState> state;
std::vector<motion_planning_msgs::JointConstraint> constraints;
};
@@ -186,7 +186,7 @@
}
/** \brief Evaluate the cost of a state, in terms of collisions */
- double computeStateCollisionCost(const planning_models::StateParams *sp)
+ double computeStateCollisionCost(const planning_models::KinematicState *sp)
{
CollisionCost ccost;
@@ -207,7 +207,7 @@
bool findValidNearJointConstraint(const std::vector<motion_planning_msgs::KinematicJoint> &start_state,
const motion_planning_msgs::KinematicSpaceParameters ¶ms,
const motion_planning_msgs::KinematicConstraints &constraints,
- const std::vector< boost::shared_ptr<planning_models::StateParams> > &hint_states,
+ const std::vector< boost::shared_ptr<planning_models::KinematicState> > &hint_states,
StateAndConstraint &sac)
{
bool result = false;
@@ -233,7 +233,7 @@
if (!c_res.joint_constraint.empty())
{
// construct a state representation from our found joint constraints
- sac.state.reset(new planning_models::StateParams(*planningMonitor_->getRobotState()));
+ sac.state.reset(new planning_models::KinematicState(*planningMonitor_->getRobotState()));
for (unsigned int i = 0 ; i < c_res.joint_constraint.size() ; ++i)
{
@@ -252,7 +252,7 @@
}
/** \brief If we have a complex goal for which we have not yet found a valid goal state, we use this function*/
- ArmActionState solveGoalComplex(std::vector< boost::shared_ptr<planning_models::StateParams> > &states,
+ ArmActionState solveGoalComplex(std::vector< boost::shared_ptr<planning_models::KinematicState> > &states,
motion_planning_msgs::GetMotionPlan::Request &req)
{
ROS_DEBUG("Acting on goal with unknown valid goal state ...");
@@ -317,7 +317,7 @@
ROS_DEBUG("Acting on goal to set of joints ...");
// construct a state representation from our goal joint
- boost::shared_ptr<planning_models::StateParams> sp(new planning_models::StateParams(*planningMonitor_->getRobotState()));
+ boost::shared_ptr<planning_models::KinematicState> sp(new planning_models::KinematicState(*planningMonitor_->getRobotState()));
for (unsigned int i = 0 ; i < req.goal_constraints.joint_constraint.size() ; ++i)
{
@@ -332,13 +332,13 @@
else
{
// if we can't, go to the more generic joint solver
- std::vector< boost::shared_ptr<planning_models::StateParams> > states;
+ std::vector< boost::shared_ptr<planning_models::KinematicState> > states;
states.push_back(sp);
return solveGoalJoints(states, req);
}
}
- void updateRequest(motion_planning_msgs::GetMotionPlan::Request &req, const planning_models::StateParams *sp)
+ void updateRequest(motion_planning_msgs::GetMotionPlan::Request &req, const planning_models::KinematicState *sp)
{
// update request
for (unsigned int i = 0 ; i < setup_.groupJointNames_.size() ; ++i)
@@ -359,7 +359,7 @@
}
/** \brief Find a plan to given request, given a set of hint states in the goal region */
- ArmActionState solveGoalJoints(std::vector< boost::shared_ptr<planning_models::StateParams> > &states,
+ ArmActionState solveGoalJoints(std::vector< boost::shared_ptr<planning_models::KinematicState> > &states,
motion_planning_msgs::GetMotionPlan::Request &req)
{
ROS_DEBUG("Acting on goal to set of joints pointing to potentially invalid state ...");
@@ -391,7 +391,7 @@
else
{
// order the states by cost before passing them forward
- std::vector< boost::shared_ptr<planning_models::StateParams> > backup = states;
+ std::vector< boost::shared_ptr<planning_models::KinematicState> > backup = states;
for (unsigned int i = 0 ; i < cstates.size() ; ++i)
states[i] = backup[cstates[i].index];
return solveGoalComplex(states, req);
@@ -414,7 +414,7 @@
// we do IK to find corresponding states
ros::ServiceClient ik_client = nh_.serviceClient<manipulation_srvs::IKService>(ARM_IK_NAME, true);
- std::vector< boost::shared_ptr<planning_models::StateParams> > states;
+ std::vector< boost::shared_ptr<planning_models::KinematicState> > states;
// find an IK solution
for (int step = 0 ; step < 10 ; ++step)
@@ -436,7 +436,7 @@
if (computeIK(ik_client, tpose, solution))
{
// check if it is a valid state
- boost::shared_ptr<planning_models::StateParams> spTest(new planning_models::StateParams(*planningMonitor_->getRobotState()));
+ boost::shared_ptr<planning_models::KinematicState> spTest(new planning_models::KinematicState(*planningMonitor_->getRobotState()));
spTest->setParamsJoints(solution, setup_.groupJointNames_);
spTest->enforceBounds();
@@ -472,17 +472,17 @@
return solveGoalJoints(req);
// otherwise, more complex constraints, run a generic method; we have no hint states
- std::vector< boost::shared_ptr<planning_models::StateParams> > states;
+ std::vector< boost::shared_ptr<planning_models::KinematicState> > states;
return solveGoalComplex(states, req);
}
ArmActionState runLRplanner(motion_planning_msgs::GetMotionPlan::Request &req)
{
- std::vector< boost::shared_ptr<planning_models::StateParams> > states;
+ std::vector< boost::shared_ptr<planning_models::KinematicState> > states;
return runLRplanner(states, req);
}
- ArmActionState runLRplanner(std::vector< boost::shared_ptr<planning_models::StateParams> > &states,
+ ArmActionState runLRplanner(std::vector< boost::shared_ptr<planning_models::KinematicState> > &states,
motion_planning_msgs::GetMotionPlan::Request &req)
{
ROS_DEBUG("Running long range planner...");
@@ -507,11 +507,11 @@
ArmActionState runSRplanner(motion_planning_msgs::GetMotionPlan::Request &req)
{
- std::vector< boost::shared_ptr<planning_models::StateParams> > states;
+ std::vector< boost::shared_ptr<planning_models::KinematicState> > states;
return runSRplanner(states, req);
}
- ArmActionState runSRplanner(std::vector< boost::shared_ptr<planning_models::StateParams> > &states,
+ ArmActionState runSRplanner(std::vector< boost::shared_ptr<planning_models::KinematicState> > &states,
motion_planning_msgs::GetMotionPlan::Request &req)
{
ROS_DEBUG("Running short range planner...");
@@ -803,7 +803,7 @@
ROS_DEBUG("Trying to use short range planner to move to a valid state...");
// construct a state representation + kinematic constraints from our start state
- boost::shared_ptr<planning_models::StateParams> sp(new planning_models::StateParams(*planningMonitor_->getRobotState()));
+ boost::shared_ptr<planning_models::KinematicState> sp(new planning_models::KinematicState(*planningMonitor_->getRobotState()));
motion_planning_msgs::KinematicConstraints constraints;
for (unsigned int i = 0 ; i < req.start_state.size() ; ++i)
@@ -819,7 +819,7 @@
jc.tolerance_below.resize(jc.value.size(), 0.0);
constraints.joint_constraint.push_back(jc);
}
- std::vector< boost::shared_ptr<planning_models::StateParams> > states;
+ std::vector< boost::shared_ptr<planning_models::KinematicState> > states;
states.push_back(sp);
// find valid state near by
@@ -941,7 +941,7 @@
}
// add the actual path
- planning_models::StateParams *sp = planningMonitor_->getKinematicModel()->newStateParams();
+ planning_models::KinematicState *sp = new planning_models::KinematicState(planningMonitor_->getKinematicModel());
for (unsigned int i = 0 ; i < path.states.size() ; ++i)
{
traj.points[i + includeFirst].time = offset + path.times[i];
@@ -958,11 +958,11 @@
std::stringstream ss;
for (unsigned int j = 0 ; j < path.states[i].vals.size() ; ++j)
ss << path.states[i].vals[j] << " ";
- ROS_DEBUG(ss.str().c_str());
+ ROS_DEBUG("%s", ss.str().c_str());
}
}
- bool fixStartState(planning_models::StateParams &st)
+ bool fixStartState(planning_models::KinematicState &st)
{
bool result = true;
@@ -973,7 +973,7 @@
if (!planningMonitor_->isStateValidOnPath(&st))
{
// try 2% change in each component
- planning_models::StateParams temp(st);
+ planning_models::KinematicState temp(st);
int count = 0;
do
{
@@ -993,14 +993,14 @@
bool fillStartState(std::vector<motion_planning_msgs::KinematicJoint> &start_state)
{
// get the current state
- planning_models::StateParams st(*planningMonitor_->getRobotState());
+ planning_models::KinematicState st(*planningMonitor_->getRobotState());
bool result = fixStartState(st);
if (!result)
ROS_DEBUG("Starting state for the robot is in collision and attempting to fix it failed.");
// fill in start state with current one
- std::vector<planning_models::KinematicModel::Joint*> joints;
+ std::vector<const planning_models::KinematicModel::Joint*> joints;
planningMonitor_->getKinematicModel()->getJoints(joints);
start_state.resize(joints.size());
@@ -1024,7 +1024,7 @@
request.data.pose_stamped = pose_stamped_msg;
request.data.joint_names = setup_.groupJointNames_;
- planning_models::StateParams *sp = planningMonitor_->getKinematicModel()->newStateParams();
+ planning_models::KinematicState *sp = new planning_models::KinematicState(planningMonitor_->getKinematicModel());
sp->randomStateGroup(setup_.group_);
for(unsigned int i = 0; i < setup_.groupJointNames_.size() ; ++i)
{
Modified: pkg/trunk/highlevel/move_arm/src/move_arm_setup.cpp
===================================================================
--- pkg/trunk/highlevel/move_arm/src/move_arm_setup.cpp 2009-09-02 21:42:16 UTC (rev 23711)
+++ pkg/trunk/highlevel/move_arm/src/move_arm_setup.cpp 2009-09-02 21:46:41 UTC (rev 23712)
@@ -55,7 +55,7 @@
if (!collisionModels_->loadedModels())
return false;
- if (collisionModels_->getKinematicModel()->getGroupID(group_) < 0)
+ if (!collisionModels_->getKinematicModel()->hasGroup(group_))
{
ROS_ERROR("Group '%s' is not known", group_.c_str());
return false;
@@ -99,28 +99,38 @@
}
joint_names = res_query.jointnames;
-
+
+ planning_models::KinematicModel::JointGroup *jg = planningMonitor_->getKinematicModel()->getGroup(group_);
+
// make sure we have the right joint names
for(unsigned int i = 0; i < joint_names.size() ; ++i)
{
if (planning_models::KinematicModel::Joint *j = planningMonitor_->getKinematicModel()->getJoint(joint_names[i]))
{
+ if (!jg->hasJoint(j->name))
+ {
+ ROS_ERROR("Joint '%s' is not in group '%s'", j->name.c_str(), group_.c_str());
+ return false;
+ }
ROS_DEBUG("Using joing '%s' with %u parameters", j->name.c_str(), j->usedParams);
- if (planningMonitor_->getKinematicModel()->getJointIndexInGroup(j->name, group_) < 0)
- return false;
}
else
- {
- ROS_ERROR("Joint '%s' is not known", joint_names[i].c_str());
return false;
- }
}
- std::vector<std::string> groupNames;
- planningMonitor_->getKinematicModel()->getJointsInGroup(groupNames, group_);
- if (groupNames.size() != joint_names.size())
+ if (jg->jointNames.size() != joint_names.size())
{
ROS_ERROR("The group '%s' does not have the same number of joints as the controller can handle", group_.c_str());
+ std::stringstream ss1;
+ for (unsigned int i = 0 ; i < jg->jointNames.size() ; ++i)
+ ss1 << jg->jointNames[i] << " ";
+ ROS_ERROR("Group '%s': %s", group_.c_str(), ss1.str().c_str());
+
+ std::stringstream ss2;
+ for (unsigned int i = 0 ; i < joint_names.size() ; ++i)
+ ss2 << joint_names[i] << " ";
+ ROS_ERROR("Controller joints: %s", ss2.str().c_str());
+
return false;
}
Modified: pkg/trunk/highlevel/move_arm/src/record_path.cpp
===================================================================
--- pkg/trunk/highlevel/move_arm/src/record_path.cpp 2009-09-02 21:42:16 UTC (rev 23711)
+++ pkg/trunk/highlevel/move_arm/src/record_path.cpp 2009-09-02 21:46:41 UTC (rev 23712)
@@ -57,16 +57,16 @@
void printJoints(const planning_environment::KinematicModelStateMonitor &km, const std::vector<std::string> &names)
{
- const planning_models::KinematicModel::ModelInfo &mi = km.getKinematicModel()->getModelInfo();
-
+ const std::vector<double> &bounds = km.getKinematicModel()->getStateBounds();
+
for (unsigned int i = 0 ; i < names.size(); ++i)
{
- int idx = km.getKinematicModel()->getJointIndex(names[i]);
- std::cout << " " << i << " = " << names[i] << " [" << mi.stateBounds[idx * 2] << ", " << mi.stateBounds[idx * 2 + 1] << "]" << std::endl;
+ int idx = km.getKinematicModel()->getJoint(names[i])->stateIndex;
+ std::cout << " " << i << " = " << names[i] << " [" << bounds[idx * 2] << ", " << bounds[idx * 2 + 1] << "]" << std::endl;
}
}
-void recordThread(planning_environment::KinematicModelStateMonitor *km, bool *stop, std::vector<planning_models::StateParams> *states)
+void recordThread(planning_environment::KinematicModelStateMonitor *km, bool *stop, std::vector<planning_models::KinematicState> *states)
{
while (*stop == false)
{
@@ -121,7 +121,7 @@
std::cout << "Hit <Enter> to stop recording... ";
bool stop = false;
- std::vector<planning_models::StateParams> states;
+ std::vector<planning_models::KinematicState> states;
boost::thread rec(boost::bind(recordThread, &km, &stop, &states));
std::string dummy;
std::getline(std::cin, dummy);
Modified: pkg/trunk/highlevel/move_arm/src/record_state.cpp
===================================================================
--- pkg/trunk/highlevel/move_arm/src/record_state.cpp 2009-09-02 21:42:16 UTC (rev 23711)
+++ pkg/trunk/highlevel/move_arm/src/record_state.cpp 2009-09-02 21:46:41 UTC (rev 23712)
@@ -57,16 +57,15 @@
void printJoints(const planning_environment::KinematicModelStateMonitor &km, const std::vector<std::string> &names)
{
- const planning_models::KinematicModel::ModelInfo &mi = km.getKinematicModel()->getModelInfo();
-
+ const std::vector<double> &bounds = km.getKinematicModel()->getStateBounds();
+
for (unsigned int i = 0 ; i < names.size(); ++i)
{
- int idx = km.getKinematicModel()->getJointIndex(names[i]);
- std::cout << " " << i << " = " << names[i] << " [" << mi.stateBounds[idx * 2] << ", " << mi.stateBounds[idx * 2 + 1] << "]" << std::endl;
+ int idx = km.getKinematicModel()->getJoint(names[i])->stateIndex;
+ std::cout << " " << i << " = " << names[i] << " [" << bounds[idx * 2] << ", " << bounds[idx * 2 + 1] << "]" << std::endl;
}
}
-
int main(int argc, char **argv)
{
ros::init(argc, argv, "record_state", ros::init_options::NoSigintHandler | ros::init_options::AnonymousN...
[truncated message content] |
|
From: <hsu...@us...> - 2009-09-03 04:26:46
|
Revision: 23749
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23749&view=rev
Author: hsujohnhsu
Date: 2009-09-03 04:26:27 +0000 (Thu, 03 Sep 2009)
Log Message:
-----------
package reorganization, renaming for simulator_gazebo and pr2_simulator stack
* ikea_objects, ikea_ogre --> simulator_gazebo stack : generic objects for simulation
* gazebo_worlds --> simulator_gazebo stack : no pr2 related dependencies
* arm_gazebo --> pr2_simulator/pr2_arm_gazebo : add pr2 prefix
* examples_gazebo --> pr2_simulator/pr2_examples_gazebo : add pr2 prefix
* 2dnav_gazebo --> pr2_simulator/pr2_2dnav_gazebo : add pr2 prefix
* test_2dnav_gazebo --> pr2_simulator/test_pr2_2dnav_gazebo : add pr2 prefix
* test_pr2_*_gazebo --> pr2_simulator stack : relocating
* gazebo_plugin --> pr2_gazebo_plugins : rename, add pr2 prefix
* test_gazebo_plugin --> test_pr2_gazebo_plugins : add pr2 prefix
* pr2_gazebo --> pr2_simulator stack : relocating
Modified Paths:
--------------
pkg/trunk/demos/door_demos_gazebo/launch/open_door_test.launch
pkg/trunk/demos/erratic_gazebo/erratic_demo.launch
pkg/trunk/demos/erratic_gazebo/manifest.xml
pkg/trunk/robot_descriptions/pr2/pr2_experimental_controllers/constraint_controllers/demo_constraint.launch
pkg/trunk/sandbox/dynamics_estimation/r_arm.launch
pkg/trunk/sandbox/teleop_anti_collision/launch/test_teleop_anti_collision.xml
pkg/trunk/sandbox/webteleop/launch/gazebo.launch
pkg/trunk/stacks/pr2/pr2_alpha/prf_sim.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/2dnav-stack-fake_localization.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/config/tuck_arms.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/doc.dox
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/manifest.xml
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-empty-amcl.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-empty-fake_localization.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-simple-fake_localization.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-wg-amcl.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/prototype1-simple-amcl.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/prototype1-wg-fake_localization.launch
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/trex/run_milestone_1_gazebo.xml
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/trex/run_milestone_1_gazebo_empty.xml
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/l_arm.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/l_gripper.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/manifest.xml
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/r_arm.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/r_arm_grasping_demo.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/r_gripper.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/scripts/grasp_preprogrammed.py
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/scripts/l_arm_max.py
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/scripts/l_arm_min.py
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/scripts/l_arm_test.py
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/scripts/l_arm_test_random.py
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/scripts/test_launch_order.tcsh
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/tests/r_arm_constraint.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/tests/r_arm_spacenav.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/dual_link.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/dual_link_defs/Makefile
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/dual_link_defs/send_description.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/manifest.xml
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/multi_link.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/multi_link_defs/Makefile
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/multi_link_defs/send_description.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/simple_box.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/simple_cylinder.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/simple_sphere.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/single_link.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/single_link_defs/Makefile
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/single_link_defs/send_description.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/table.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/table_defs/Makefile
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/table_defs/table.xml
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/manifest.xml
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/map_building_demo.launch
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/pr2_default_controllers.launch
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/CMakeLists.txt
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/doc.dox
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/include/pr2_gazebo_plugins/gazebo_battery.h
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/include/pr2_gazebo_plugins/gazebo_mechanism_control.h
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/manifest.xml
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/gazebo_battery.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/gazebo_mechanism_control.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_block_laser.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_bumper.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_camera.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_f3d.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_force.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_joint_force.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_laser.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_p3d.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_prosilica.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_sim_iface.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_stereo_camera.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_template.cpp
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/ros_time.cpp
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/CMakeLists.txt
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/manifest.xml
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/set_goal.py
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/test_2dnav_empty_amcl_axis.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/test_2dnav_empty_axis.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/test_2dnav_empty_diagonal.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/test_2dnav_empty_odom.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/test_2dnav_empty_rotation.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/test_2dnav_wg.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_collision_gazebo/manifest.xml
pkg/trunk/stacks/pr2_simulator/test_pr2_collision_gazebo/test_slide.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_gazebo_plugins/CMakeLists.txt
pkg/trunk/stacks/pr2_simulator/test_pr2_gazebo_plugins/manifest.xml
pkg/trunk/stacks/pr2_simulator/test_pr2_gazebo_plugins/test_pendulum.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_gazebo_plugins/test_pendulum.py
pkg/trunk/stacks/pr2_simulator/test_pr2_mechanism_controllers_gazebo/manifest.xml
pkg/trunk/stacks/pr2_simulator/test_pr2_mechanism_controllers_gazebo/test_arm.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_sensors_gazebo/manifest.xml
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/balcony_world.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/camera_world.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/debug.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/empty_world.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/empty_world_no_x.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/office_world.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/scan_world.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/simple_world.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/slide_world.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/launch/wg_world.launch
pkg/trunk/stacks/simulator_gazebo/gazebo/quick_gazebo.sh
pkg/trunk/stacks/simulator_gazebo/gazebo/setup.bash
pkg/trunk/stacks/simulator_gazebo/gazebo/setup.tcsh
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/launch/checker.launch
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/launch/light.launch
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/manifest.xml
pkg/trunk/stacks/trex/trex_pr2/cfg/launch_gazebo.xml
pkg/trunk/stacks/trex/trex_pr2/cfg/launch_gazebo_obstacle.xml
Added Paths:
-----------
pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/include/pr2_gazebo_plugins/
pkg/trunk/stacks/pr2_simulator/test_pr2_2dnav_gazebo/
pkg/trunk/stacks/pr2_simulator/test_pr2_gazebo_plugins/
pkg/trunk/stacks/simulator_gazebo/gazebo_worlds/
pkg/trunk/stacks/simulator_gazebo/ikea_objects/
pkg/trunk/stacks/simulator_gazebo/ikea_ogre/
Removed Paths:
-------------
pkg/trunk/demos/2dnav_gazebo/
pkg/trunk/demos/arm_gazebo/
pkg/trunk/demos/examples_gazebo/
pkg/trunk/demos/pr2_gazebo/
pkg/trunk/demos/test_2dnav_gazebo/
pkg/trunk/stacks/pr2_simulator/gazebo_plugin/
pkg/trunk/stacks/pr2_simulator/gazebo_worlds/
pkg/trunk/stacks/pr2_simulator/ikea_objects/
pkg/trunk/stacks/pr2_simulator/ikea_ogre/
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/include/gazebo_plugin/
pkg/trunk/stacks/pr2_simulator/test_gazebo_plugin/
Modified: pkg/trunk/demos/door_demos_gazebo/launch/open_door_test.launch
===================================================================
--- pkg/trunk/demos/door_demos_gazebo/launch/open_door_test.launch 2009-09-03 03:44:00 UTC (rev 23748)
+++ pkg/trunk/demos/door_demos_gazebo/launch/open_door_test.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -4,7 +4,7 @@
<include file="$(find milestone2_actions)/milestone2.launch" />
<!-- assign localization for amcl -->
- <node pkg="test_2dnav_gazebo" type="set_goal.py" args="-amcl 14.75 22.125 -3.142 -x 14.75 -y 22.125 -t -3.142" output="screen" />
+ <node pkg="test_pr2_2dnav_gazebo" type="set_goal.py" args="-amcl 14.75 22.125 -3.142 -x 14.75 -y 22.125 -t -3.142" output="screen" />
<!-- visualization
<include file="$(find 2dnav_pr2)/rviz/rviz_move_base.launch" />
Modified: pkg/trunk/demos/erratic_gazebo/erratic_demo.launch
===================================================================
--- pkg/trunk/demos/erratic_gazebo/erratic_demo.launch 2009-09-03 03:44:00 UTC (rev 23748)
+++ pkg/trunk/demos/erratic_gazebo/erratic_demo.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -19,7 +19,7 @@
<node pkg="gazebo_tools" type="urdf2factory" args="robot_description" respawn="false" output="screen" />
<!-- load controllers -->
- <node pkg="gazebo_plugin" type="ros_diffdrive" respawn="true" output="screen"/>
+ <node pkg="pr2_gazebo_plugins" type="ros_diffdrive" respawn="true" output="screen"/>
</launch>
Modified: pkg/trunk/demos/erratic_gazebo/manifest.xml
===================================================================
--- pkg/trunk/demos/erratic_gazebo/manifest.xml 2009-09-03 03:44:00 UTC (rev 23748)
+++ pkg/trunk/demos/erratic_gazebo/manifest.xml 2009-09-03 04:26:27 UTC (rev 23749)
@@ -4,7 +4,7 @@
<license>BSD</license>
<review status="na" notes=""/>
<url>http://pr.willowgarage.com/wiki/Simulator</url>
- <depend package="gazebo_plugin"/>
+ <depend package="pr2_gazebo_plugins"/>
<depend package="gazebo_worlds"/>
<depend package="erratic_defs"/>
<depend package="robot_mechanism_controllers"/>
Modified: pkg/trunk/robot_descriptions/pr2/pr2_experimental_controllers/constraint_controllers/demo_constraint.launch
===================================================================
--- pkg/trunk/robot_descriptions/pr2/pr2_experimental_controllers/constraint_controllers/demo_constraint.launch 2009-09-03 03:44:00 UTC (rev 23748)
+++ pkg/trunk/robot_descriptions/pr2/pr2_experimental_controllers/constraint_controllers/demo_constraint.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -1,7 +1,7 @@
<launch>
<group name="wg">
- <node pkg="pr2_mechanism_control" type="spawner.py" args="$(find arm_gazebo)/r_arm_constraint_controller.xml" respawn="false" />
+ <node pkg="pr2_mechanism_control" type="spawner.py" args="$(find pr2_arm_gazebo)/r_arm_constraint_controller.xml" respawn="false" />
</group>
Modified: pkg/trunk/sandbox/dynamics_estimation/r_arm.launch
===================================================================
--- pkg/trunk/sandbox/dynamics_estimation/r_arm.launch 2009-09-03 03:44:00 UTC (rev 23748)
+++ pkg/trunk/sandbox/dynamics_estimation/r_arm.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -8,7 +8,7 @@
<include file="$(find pr2_defs)/launch/upload_r_arm.launch" />
<!-- push robot_description to factory and spawn robot in gazebo -->
- <node pkg="gazebo_plugin" type="urdf2factory" args="robot_description" respawn="false" output="screen"/>
+ <node pkg="gazebo_tools" type="urdf2factory" args="robot_description" respawn="false" output="screen"/>
<!-- Robot state publisher -->
<node pkg="robot_state_publisher" type="state_publisher" name="robot_state_publisher" output="screen">
@@ -19,7 +19,7 @@
<!-- start arm controller -->
<!--
- <node pkg="pr2_mechanism_control" type="spawner.py" args="$(find arm_gazebo)/l_arm_default_controller.xml" respawn="false" />
+ <node pkg="pr2_mechanism_control" type="spawner.py" args="$(find pr2_arm_gazebo)/l_arm_default_controller.xml" respawn="false" />
-->
<!-- send arm a command -->
@@ -30,7 +30,7 @@
<!-- for visualization -->
<!--
<node pkg="rviz" type="rviz" respawn="false" output="screen" />
- <include file="$(find arm_gazebo)/debug_plot.launch"/>
+ <include file="$(find pr2_arm_gazebo)/debug_plot.launch"/>
-->
</launch>
Modified: pkg/trunk/sandbox/teleop_anti_collision/launch/test_teleop_anti_collision.xml
===================================================================
--- pkg/trunk/sandbox/teleop_anti_collision/launch/test_teleop_anti_collision.xml 2009-09-03 03:44:00 UTC (rev 23748)
+++ pkg/trunk/sandbox/teleop_anti_collision/launch/test_teleop_anti_collision.xml 2009-09-03 04:26:27 UTC (rev 23749)
@@ -17,7 +17,7 @@
<!--node pkg="slam_gmapping" type="slam_gmapping" respawn="false" /-->
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-fake_localization.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-fake_localization.launch"/>
<!-- for visualization -->
<!--include file="$(find 2dnav_pr2)/rviz/rviz_move_base.launch"/-->
Modified: pkg/trunk/sandbox/webteleop/launch/gazebo.launch
===================================================================
--- pkg/trunk/sandbox/webteleop/launch/gazebo.launch 2009-09-03 03:44:00 UTC (rev 23748)
+++ pkg/trunk/sandbox/webteleop/launch/gazebo.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -1,6 +1,6 @@
<launch>
- <!--<include file="$(find 2dnav_gazebo)/pr2-wg-amcl.launch"/>-->
+ <!--<include file="$(find pr2_2dnav_gazebo)/pr2-wg-amcl.launch"/>-->
<!--<param name="/use_sim_time" value="true"/>-->
@@ -18,7 +18,7 @@
<node pkg="pr2_experimental_controllers" type="tuckarm.py" args="r" output="screen" />
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-amcl.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-amcl.launch"/>
<node pkg="image_publisher" type="encoder">
<remap from="image" to="/stereo/left_image"/>
Modified: pkg/trunk/stacks/pr2/pr2_alpha/prf_sim.launch
===================================================================
--- pkg/trunk/stacks/pr2/pr2_alpha/prf_sim.launch 2009-09-03 03:44:00 UTC (rev 23748)
+++ pkg/trunk/stacks/pr2/pr2_alpha/prf_sim.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -8,7 +8,7 @@
<!-- start Gazebo -->
<include file="$(find gazebo)/launch/empty_world.launch" />
<include file="$(find pr2_defs)/launch/upload_prf.launch" />
- <node pkg="gazebo_plugin" type="urdf2factory" args="robot_description" respawn="false" output="screen" />
+ <node pkg="gazebo_tools" type="urdf2factory" args="robot_description" respawn="false" output="screen" />
<!-- Joystick -->
@@ -28,22 +28,22 @@
<!-- battery plugin in gazebo -->
<!-- Base Laser -->
- <!-- as gazebo_plugin -->
+ <!-- as pr2_gazebo_plugins -->
<!-- Tilt Laser -->
- <!-- as gazebo_plugin -->
+ <!-- as pr2_gazebo_plugins -->
<!-- imu -->
- <!-- as gazebo_plugin -->
+ <!-- as pr2_gazebo_plugins -->
<!-- Videre Stereo cam -->
- <!-- as gazebo_plugin -->
+ <!-- as pr2_gazebo_plugins -->
<!-- Prosilica camera setup -->
- <!-- as gazebo_plugin -->
+ <!-- as pr2_gazebo_plugins -->
<!-- Forearm Camera -->
- <!-- can be loaded as gazebo_plugin, if you want this, add the map/verbatim blocks in urdf -->
+ <!-- can be loaded as pr2_gazebo_plugins, if you want this, add the map/verbatim blocks in urdf -->
<!-- Sound -->
<!-- n/a in gazebo -->
Property changes on: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo
___________________________________________________________________
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/demos/2dnav_gazebo:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/2dnav-stack-fake_localization.launch
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/2dnav-stack-fake_localization.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/2dnav-stack-fake_localization.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -2,7 +2,7 @@
<!-- machine tags for sim, be sure to set environment variable ROBOT to sim -->
<!--include file="$(find pr2_alpha)/$(env ROBOT).machine" /--> <!-- can't set env for include tags -->
<include file="$(find pr2_alpha)/sim.machine" />
- <include file="$(find 2dnav_gazebo)/config/fake_localization.launch" />
+ <include file="$(find pr2_2dnav_gazebo)/config/fake_localization.launch" />
<include file="$(find 2dnav_pr2)/config/base_odom_teleop.xml" />
<include file="$(find 2dnav_pr2)/config/lasers_and_filters.xml" />
<!--include file="$(find 2dnav_pr2)/config/map_server.launch" /-->
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/config/tuck_arms.launch
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/config/tuck_arms.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/config/tuck_arms.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -1,6 +1,6 @@
<launch>
<!-- Tug Arms For Navigation -->
- <node pkg="pr2_mechanism_control" type="spawner.py" args="$(find arm_gazebo)/l_arm_default_controller.xml" output="screen" machine="four" />
- <node pkg="pr2_mechanism_control" type="spawner.py" args="$(find arm_gazebo)/r_arm_default_controller.xml" output="screen" machine="four" />
+ <node pkg="pr2_mechanism_control" type="spawner.py" args="$(find pr2_arm_gazebo)/l_arm_default_controller.xml" output="screen" machine="four" />
+ <node pkg="pr2_mechanism_control" type="spawner.py" args="$(find pr2_arm_gazebo)/r_arm_default_controller.xml" output="screen" machine="four" />
<node pkg="pr2_gazebo" type="tuck_arms.py" output="screen"/>
</launch>
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/doc.dox
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/doc.dox 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/doc.dox 2009-09-03 04:26:27 UTC (rev 23749)
@@ -18,7 +18,7 @@
<!-- load map -->
<node pkg="map_server" type="map_server" args="$(find gazebo_worlds)/Media/materials/textures/map_blank.png 0.1" respawn="true" machine="three" />
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-amcl.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-amcl.launch"/>
<!-- for visualization -->
<include file="$(find 2dnav_pr2)/rviz/rviz_move_base.launch"/>
<!-- for manual control -->
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/manifest.xml
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/manifest.xml 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/manifest.xml 2009-09-03 04:26:27 UTC (rev 23749)
@@ -12,7 +12,7 @@
<depend package="amcl"/>
<depend package="fake_localization"/>
<depend package="pr2_gazebo"/>
- <depend package="gazebo_plugin"/>
+ <depend package="pr2_gazebo_plugins"/>
<depend package="gazebo_tools"/>
<depend package="rviz"/>
<depend package="teleop_base"/>
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-empty-amcl.launch
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/pr2-empty-amcl.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-empty-amcl.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -13,7 +13,7 @@
<node pkg="map_server" type="map_server" args="$(find gazebo_worlds)/Media/materials/textures/map_blank.png 0.1" respawn="true" machine="three" />
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-amcl.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-amcl.launch"/>
<!-- for visualization -->
<include file="$(find 2dnav_pr2)/rviz/rviz_move_base.launch"/>
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-empty-fake_localization.launch
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/pr2-empty-fake_localization.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-empty-fake_localization.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -13,7 +13,7 @@
<node pkg="map_server" type="map_server" args="$(find gazebo_worlds)/Media/materials/textures/map_blank.png 0.1" respawn="true" machine="three" />
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-fake_localization.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-fake_localization.launch"/>
<!-- for visualization -->
<!--
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-simple-fake_localization.launch
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/pr2-simple-fake_localization.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-simple-fake_localization.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -13,7 +13,7 @@
<node pkg="map_server" type="map_server" args="$(find gazebo_worlds)/Media/materials/textures/map3.png 0.1" respawn="true" machine="three" />
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-fake_localization.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-fake_localization.launch"/>
<!-- for visualization -->
<!--
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-wg-amcl.launch
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/pr2-wg-amcl.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/pr2-wg-amcl.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -13,7 +13,7 @@
<node pkg="pr2_experimental_controllers" type="tuckarm.py" args="b" output="screen" />
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-amcl.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-amcl.launch"/>
<!-- for visualization -->
<!--
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/prototype1-simple-amcl.launch
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/prototype1-simple-amcl.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/prototype1-simple-amcl.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -10,7 +10,7 @@
<node pkg="map_server" type="map_server" args="$(find gazebo_worlds)/Media/materials/textures/map3.png 0.1" respawn="true" machine="three" />
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-amcl.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-amcl.launch"/>
<!-- for visualization -->
<!--
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/prototype1-wg-fake_localization.launch
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/prototype1-wg-fake_localization.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/prototype1-wg-fake_localization.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -10,7 +10,7 @@
<node pkg="map_server" type="map_server" args="$(find gazebo_worlds)/Media/materials/textures/willowMap.png 0.1" respawn="true" machine="three" />
<!-- nav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-stack-fake_localization.launch"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-stack-fake_localization.launch"/>
<!-- for visualization -->
<!--
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/trex/run_milestone_1_gazebo.xml
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/trex/run_milestone_1_gazebo.xml 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/trex/run_milestone_1_gazebo.xml 2009-09-03 04:26:27 UTC (rev 23749)
@@ -1,10 +1,10 @@
<launch>
<!-- start up robot with 2dnav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-gazebo-prototype1-wg-fake_localization.xml"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-gazebo-prototype1-wg-fake_localization.xml"/>
<!-- start up trex -->
<param name="/trex/input_file" value="pr2.cfg"/>
- <param name="/trex/path" value="$(find 2dnav_gazebo)/trex:$(find trex_ros)/miles_gazebo.3:$(find 2dnav_gazebo)/trex/logs:$(find trex_ros)"/>
- <param name="/trex/log_dir" value="$(find 2dnav_gazebo)/trex/logs"/>
+ <param name="/trex/path" value="$(find pr2_2dnav_gazebo)/trex:$(find trex_ros)/miles_gazebo.3:$(find pr2_2dnav_gazebo)/trex/logs:$(find trex_ros)"/>
+ <param name="/trex/log_dir" value="$(find pr2_2dnav_gazebo)/trex/logs"/>
<node pkg="trex_pr2" type="trexfast" output="screen" />
</launch>
Modified: pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/trex/run_milestone_1_gazebo_empty.xml
===================================================================
--- pkg/trunk/demos/2dnav_gazebo/trex/run_milestone_1_gazebo_empty.xml 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_2dnav_gazebo/trex/run_milestone_1_gazebo_empty.xml 2009-09-03 04:26:27 UTC (rev 23749)
@@ -1,10 +1,10 @@
<launch>
<!-- start up robot with 2dnav-stack -->
- <include file="$(find 2dnav_gazebo)/2dnav-gazebo-empty-fake_localization.xml"/>
+ <include file="$(find pr2_2dnav_gazebo)/2dnav-gazebo-empty-fake_localization.xml"/>
<!-- start up trex -->
<param name="/trex/input_file" value="pr2.cfg"/>
- <param name="/trex/path" value="$(find 2dnav_gazebo)/trex:$(find trex_ros)/miles_gazebo.3:$(find 2dnav_gazebo)/trex/logs:$(find trex_ros)"/>
- <param name="/trex/log_dir" value="$(find 2dnav_gazebo)/trex/logs"/>
+ <param name="/trex/path" value="$(find pr2_2dnav_gazebo)/trex:$(find trex_ros)/miles_gazebo.3:$(find pr2_2dnav_gazebo)/trex/logs:$(find trex_ros)"/>
+ <param name="/trex/log_dir" value="$(find pr2_2dnav_gazebo)/trex/logs"/>
<node pkg="trex_pr2" type="trexfast" output="screen" />
</launch>
Property changes on: pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo
___________________________________________________________________
Added: svn:mergeinfo
+ /pkg/branches/gazebo-branch-merge/demos/arm_gazebo:15683-15684,15739-15794,15797-15820,15822-15839,15852-15870,15983-16008,16010-16016,16129-16141,16145-16169,16245-16262,16274-16334
Modified: pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/l_arm.launch
===================================================================
--- pkg/trunk/demos/arm_gazebo/l_arm.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/l_arm.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -9,7 +9,7 @@
<!-- for visualization -->
<!--
<node pkg="rviz" type="rviz" respawn="false" output="screen" />
- <include file="$(find arm_gazebo)/tests/debug_plot.launch"/>
+ <include file="$(find pr2_arm_gazebo)/tests/debug_plot.launch"/>
-->
<!-- Robot state publisher -->
Modified: pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/l_gripper.launch
===================================================================
--- pkg/trunk/demos/arm_gazebo/l_gripper.launch 2009-09-03 00:04:01 UTC (rev 23727)
+++ pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/l_gripper.launch 2009-09-03 04:26:27 UTC (rev 23749)
@@ -9,7 +9,7 @@
<!-- for visualization -->
<!--
<node pkg="rviz" type="rviz" respawn="false" output="screen" />
- <include file="$(find arm_gazebo)/debug_plot.launch"/>
+ <include file="$(find pr2_arm_gazebo)/debug_plot.launch"/>
-->
<!-- Robot state publisher -->
Modified: pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo...
[truncated message content] |
|
From: <hsu...@us...> - 2009-09-03 08:49:37
|
Revision: 23758
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23758&view=rev
Author: hsujohnhsu
Date: 2009-09-03 08:49:27 +0000 (Thu, 03 Sep 2009)
Log Message:
-----------
URDF XML ROS parameter name change: robot_description_new --> robot_description
Modified Paths:
--------------
pkg/trunk/applications/2dnav_pr2_app/2dnav_pr2/rviz/move_base.vcg
pkg/trunk/applications/2dnav_pr2_app/2dnav_pr2/rviz/move_base_local.vcg
pkg/trunk/demos/door_demos_gazebo/launch/pr2_and_door.launch
pkg/trunk/demos/milestone2/milestone2_tests/test/test_controllers_load.launch
pkg/trunk/demos/plug_in_gazebo/launch/pr2_plug_outlet.launch
pkg/trunk/highlevel/move_arm/launch/arm_cmd_line.launch
pkg/trunk/highlevel/move_arm/launch/move_rarm.launch
pkg/trunk/motion_planning/pr2_ik/launch/pr2_ik_controller.launch
pkg/trunk/motion_planning/pr2_ik/src/pr2_ik_solver.cpp
pkg/trunk/motion_planning/pr2_ik/test_pr2_ik.xml
pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/collision_map_self_occ.launch
pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/tilt_laser_self_filter.launch
pkg/trunk/sandbox/3dnav_pr2/launch/perception/laser-perception.launch
pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/fake_planning.launch
pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_planning.launch
pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_search.launch
pkg/trunk/sandbox/m3_simulator/pr2_sensorless.launch
pkg/trunk/sandbox/pr2_gripper_controller/launch/gripper.launch
pkg/trunk/stacks/pr2/pr2_alpha/pre_ethercat_reset.launch
pkg/trunk/stacks/pr2/pr2_alpha/prf_ethercat_reset.launch
pkg/trunk/stacks/pr2/pr2_alpha/prg_ethercat_reset.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hca.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hcb.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hcc.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_l_arm.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_l_gripper.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_laser_tilt.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_pr2.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_pre.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prf.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prg.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prototype1.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_r_arm.launch
pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_r_gripper.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/l_arm.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/l_gripper.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/r_arm.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/r_arm_grasping_demo.launch
pkg/trunk/stacks/pr2_simulator/pr2_arm_gazebo/r_gripper.launch
pkg/trunk/stacks/pr2_simulator/pr2_examples_gazebo/dual_link.launch
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/head_cart.launch
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/pr2.launch
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/prf.launch
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/prototype1.launch
pkg/trunk/stacks/pr2_simulator/pr2_gazebo/rviz/map.vcg
pkg/trunk/stacks/pr2_simulator/pr2_gazebo_plugins/src/gazebo_mechanism_control.cpp
pkg/trunk/stacks/pr2_simulator/test_pr2_collision_gazebo/test_slide.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_sensors_gazebo/test_camera.launch
pkg/trunk/stacks/pr2_simulator/test_pr2_sensors_gazebo/test_scan.launch
pkg/trunk/stacks/robot_model/robot_state_publisher/src/state_publisher.cpp
pkg/trunk/stacks/simulator_gazebo/gazebo_tools/src/spawn_urdf.cpp
Modified: pkg/trunk/applications/2dnav_pr2_app/2dnav_pr2/rviz/move_base.vcg
===================================================================
--- pkg/trunk/applications/2dnav_pr2_app/2dnav_pr2/rviz/move_base.vcg 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/applications/2dnav_pr2_app/2dnav_pr2/rviz/move_base.vcg 2009-09-03 08:49:27 UTC (rev 23758)
@@ -150,7 +150,7 @@
Robot\ Model.Alpha=0.5
Robot\ Model.Collision\ Enabled=0
Robot\ Model.Enabled=1
-Robot\ Model.Robot\ Description=robot_description_new
+Robot\ Model.Robot\ Description=robot_description
Robot\ Model.Update\ Rate=0.1
Robot\ Model.Visual\ Enabled=1
Robot\:\ Robot\ Model\ Link\ base_laserShow\ Axes=0
Modified: pkg/trunk/applications/2dnav_pr2_app/2dnav_pr2/rviz/move_base_local.vcg
===================================================================
--- pkg/trunk/applications/2dnav_pr2_app/2dnav_pr2/rviz/move_base_local.vcg 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/applications/2dnav_pr2_app/2dnav_pr2/rviz/move_base_local.vcg 2009-09-03 08:49:27 UTC (rev 23758)
@@ -150,7 +150,7 @@
Robot\ Model.Alpha=0.5
Robot\ Model.Collision\ Enabled=0
Robot\ Model.Enabled=1
-Robot\ Model.Robot\ Description=robot_description_new
+Robot\ Model.Robot\ Description=robot_description
Robot\ Model.Update\ Rate=0.1
Robot\ Model.Visual\ Enabled=1
Robot\:\ Robot\ Model\ Link\ base_laserShow\ Axes=0
Modified: pkg/trunk/demos/door_demos_gazebo/launch/pr2_and_door.launch
===================================================================
--- pkg/trunk/demos/door_demos_gazebo/launch/pr2_and_door.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/demos/door_demos_gazebo/launch/pr2_and_door.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -5,7 +5,7 @@
<!-- load prf -->
<include file="$(find pr2_defs)/launch/upload_prf.launch" />
- <node pkg="gazebo_tools" type="urdf2factory" args="robot_description_new" respawn="false" />
+ <node pkg="gazebo_tools" type="urdf2factory" args="robot_description" respawn="false" />
<!-- Robot state publisher -->
<node pkg="robot_state_publisher" type="state_publisher" name="robot_state_publisher">
Modified: pkg/trunk/demos/milestone2/milestone2_tests/test/test_controllers_load.launch
===================================================================
--- pkg/trunk/demos/milestone2/milestone2_tests/test/test_controllers_load.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/demos/milestone2/milestone2_tests/test/test_controllers_load.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -2,7 +2,7 @@
<include file="$(find pr2_defs)/launch/upload_pr2.launch" />
<include file="$(find milestone2_actions)/config/controllers.xml" />
- <node pkg="mechanism_control_test" type="mechanism_controller_test" args="-x /robot_description_new" />
+ <node pkg="mechanism_control_test" type="mechanism_controller_test" args="-x /robot_description" />
<test test-name="test_controllers_loaded" pkg="mechanism_control_test" type="test_controllers_loaded.py"
args="pr2_base_controller pr2_base_odometry head_controller r_gripper_effort_controller r_gripper_position_controller torso_lift_velocity_controller r_arm_constraint_cartesian_wrench_controller r_arm_constraint_cartesian_twist_controller r_arm_constraint_cartesian_pose_controller r_arm_constraint_cartesian_trajectory_controller r_arm_cartesian_tff_controller r_arm_cartesian_wrench_controller r_arm_cartesian_twist_controller r_arm_cartesian_pose_controller r_arm_cartesian_trajectory_controller r_arm_hybrid_controller laser_tilt_controller r_arm_joint_trajectory_controller" />
Modified: pkg/trunk/demos/plug_in_gazebo/launch/pr2_plug_outlet.launch
===================================================================
--- pkg/trunk/demos/plug_in_gazebo/launch/pr2_plug_outlet.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/demos/plug_in_gazebo/launch/pr2_plug_outlet.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -5,7 +5,7 @@
<!-- send pr2.xml to param server -->
<!-- push urdfs to factory and spawn robot in gazebo -->
<include file="$(find pr2_defs)/launch/upload_prf.launch" />
- <node pkg="gazebo_tools" type="urdf2factory" args="robot_description_new" respawn="false" output="screen" />
+ <node pkg="gazebo_tools" type="urdf2factory" args="robot_description" respawn="false" output="screen" />
<param name="plug_description" command="$(find xacro)/xacro.py '$(find plug_in_gazebo)/robots/plug_only.xacro.xml'" />
<node pkg="gazebo_tools" type="urdf2factory" args="plug_description" respawn="false" output="screen" />
Modified: pkg/trunk/highlevel/move_arm/launch/arm_cmd_line.launch
===================================================================
--- pkg/trunk/highlevel/move_arm/launch/arm_cmd_line.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/highlevel/move_arm/launch/arm_cmd_line.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<node pkg="move_arm" type="arm_cmd_line" output="screen" args="right">
- <remap from="robot_description" to="robot_description_new" />
+ <remap from="robot_description" to="robot_description" />
<remap from="arm_ik" to="pr2_ik_right_arm/ik_service" />
</node>
</launch>
Modified: pkg/trunk/highlevel/move_arm/launch/move_rarm.launch
===================================================================
--- pkg/trunk/highlevel/move_arm/launch/move_rarm.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/highlevel/move_arm/launch/move_rarm.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,7 +1,7 @@
<launch>
<node pkg="move_arm" type="move_arm_action" output="screen" name="move_right_arm">
- <remap from="robot_description" to="robot_description_new" />
+ <remap from="robot_description" to="robot_description" />
<remap from="collision_map" to="collision_map_occ" />
<remap from="collision_map_update" to="collision_map_occ_update" />
Modified: pkg/trunk/motion_planning/pr2_ik/launch/pr2_ik_controller.launch
===================================================================
--- pkg/trunk/motion_planning/pr2_ik/launch/pr2_ik_controller.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/motion_planning/pr2_ik/launch/pr2_ik_controller.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -3,7 +3,7 @@
<param name="tip_name" value="r_wrist_roll_link" />
<param name="root_name" value="torso_lift_link" />
<param name="free_angle" value="2" type="int"/>
- <param name="urdf_xml" value="/robot_description_new"/>
+ <param name="urdf_xml" value="/robot_description"/>
<param name="free_angle_constraint" value="false"/>
<param name="free_angle_constraint_min" value="-0.5"/>
Modified: pkg/trunk/motion_planning/pr2_ik/src/pr2_ik_solver.cpp
===================================================================
--- pkg/trunk/motion_planning/pr2_ik/src/pr2_ik_solver.cpp 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/motion_planning/pr2_ik/src/pr2_ik_solver.cpp 2009-09-03 08:49:27 UTC (rev 23758)
@@ -45,7 +45,7 @@
active_ = false;
int free_angle;
std::string urdf_xml,full_urdf_xml;
- node_handle_.param("~urdf_xml", urdf_xml,std::string("robot_description_new"));
+ node_handle_.param("~urdf_xml", urdf_xml,std::string("robot_description"));
node_handle_.searchParam(urdf_xml,full_urdf_xml);
Modified: pkg/trunk/motion_planning/pr2_ik/test_pr2_ik.xml
===================================================================
--- pkg/trunk/motion_planning/pr2_ik/test_pr2_ik.xml 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/motion_planning/pr2_ik/test_pr2_ik.xml 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<!-- load robot -->
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pr2.urdf.xacro'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pr2.urdf.xacro'" />
<!-- test -->
<test test-name="pr2_ik_test" pkg="pr2_ik" type="pr2_ik_regression_test" time-limit="180" >
Modified: pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/collision_map_self_occ.launch
===================================================================
--- pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/collision_map_self_occ.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/collision_map_self_occ.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -4,7 +4,7 @@
<node machine="four" pkg="collision_map" type="collision_map_self_occ_node" name="collision_map_self_occ_node" respawn="true" output="screen">
- <remap from="robot_description" to="robot_description_new" />
+ <remap from="robot_description" to="robot_description" />
<remap from="cloud_in" to="full_cloud_filtered" />
<remap from="cloud_incremental_in" to="tilt_scan_cloud_filtered" />
Modified: pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/tilt_laser_self_filter.launch
===================================================================
--- pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/tilt_laser_self_filter.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/sandbox/3dnav_pr2/launch/perception/bits/tilt_laser_self_filter.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,7 +1,7 @@
<launch>
<node pkg="robot_self_filter" type="self_filter" respawn="true" name="robot_self_filter" output="screen">
- <remap from="robot_description" to="robot_description_new" />
+ <remap from="robot_description" to="robot_description" />
<!-- The topic for the input cloud -->
<remap from="cloud_in" to="tilt_scan_cloud_without_known_objects" />
Modified: pkg/trunk/sandbox/3dnav_pr2/launch/perception/laser-perception.launch
===================================================================
--- pkg/trunk/sandbox/3dnav_pr2/launch/perception/laser-perception.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/sandbox/3dnav_pr2/launch/perception/laser-perception.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -18,7 +18,7 @@
<!-- remove points corresponding to known objects -->
<node machine="three" pkg="planning_environment" type="clear_known_objects" name="clear_known_objects" respawn="true" output="screen">
- <remap from="robot_description" to="robot_description_new" />
+ <remap from="robot_description" to="robot_description" />
<!-- define a frame that stays fixed for the known objects -->
<!-- <param name="fixed_frame" type="string" value="/odom_combined" /> -->
Modified: pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/fake_planning.launch
===================================================================
--- pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/fake_planning.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/fake_planning.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -3,7 +3,7 @@
<include file="$(find 3dnav_pr2)/launch/prX.machine" />
<node machine="two" pkg="fake_motion_planning" type="fake_motion_planner" respawn="true" output="screen">
- <remap from="robot_description" to="robot_description_new" />
+ <remap from="robot_description" to="robot_description" />
</node>
</launch>
Modified: pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_planning.launch
===================================================================
--- pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_planning.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_planning.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -3,7 +3,7 @@
<include file="$(find pr2_alpha)/$(env ROBOT).machine" />
<node machine="two" pkg="ompl_planning" type="motion_planner" respawn="true" output="screen">
- <remap from="robot_description" to="robot_description_new" />
+ <remap from="robot_description" to="robot_description" />
<remap from="collision_map" to="collision_map_occ" />
<remap from="collision_map_update" to="collision_map_occ_update" />
Modified: pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_search.launch
===================================================================
--- pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_search.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/sandbox/3dnav_pr2/launch/planning/bits/ompl_search.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -4,7 +4,7 @@
<node machine="two" pkg="ompl_search" type="search_state" name="ompl_search" respawn="true" output="screen">
- <remap from="robot_description" to="robot_description_new" />
+ <remap from="robot_description" to="robot_description" />
<remap from="collision_map" to="collision_map_occ" />
<remap from="collision_map_update" to="collision_map_occ_update" />
Modified: pkg/trunk/sandbox/m3_simulator/pr2_sensorless.launch
===================================================================
--- pkg/trunk/sandbox/m3_simulator/pr2_sensorless.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/sandbox/m3_simulator/pr2_sensorless.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,9 +1,9 @@
<launch>
<!-- send pr2 urdf to param server -->
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find m3_simulator)/pr2_sensorless.urdf.xacro'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find m3_simulator)/pr2_sensorless.urdf.xacro'" />
<!-- push robot_description to factory and spawn robot in gazebo -->
- <node pkg="gazebo_tools" type="urdf2factory" args="robot_description_new" respawn="false" output="screen" />
+ <node pkg="gazebo_tools" type="urdf2factory" args="robot_description" respawn="false" output="screen" />
<!-- Robot state publisher -->
<node pkg="robot_state_publisher" type="state_publisher" name="robot_state_publisher" output="screen">
Modified: pkg/trunk/sandbox/pr2_gripper_controller/launch/gripper.launch
===================================================================
--- pkg/trunk/sandbox/pr2_gripper_controller/launch/gripper.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/sandbox/pr2_gripper_controller/launch/gripper.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,8 +1,8 @@
<launch>
<!-- this appears to be outdated, MP is probably working off a local copy -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_gripper_controller)/launch/gripper.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_gripper_controller)/launch/gripper.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_gripper_controller)/launch/gripper.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_gripper_controller)/launch/gripper.urdf.xacro'" />
<!-- Loads realtime machine and PR2_etherCAT -->
<include file="$(find pr2_gripper_controller)/launch/init.machine" />
Modified: pkg/trunk/stacks/pr2/pr2_alpha/pre_ethercat_reset.launch
===================================================================
--- pkg/trunk/stacks/pr2/pr2_alpha/pre_ethercat_reset.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2/pr2_alpha/pre_ethercat_reset.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -5,7 +5,7 @@
<include file="$(find pr2_alpha)/pre.machine" />
<!-- pr2_etherCAT -->
- <node machine="realtime_root" pkg="pr2_etherCAT" type="pr2_etherCAT" args="-i ecat0 -x /robot_description_new"/>
+ <node machine="realtime_root" pkg="pr2_etherCAT" type="pr2_etherCAT" args="-i ecat0 -x /robot_description"/>
<rosparam command="load" file="$(find pr2_default_controllers)/pr2_calibration_controllers.yaml" />
<rosparam command="load" file="$(find pr2_default_controllers)/pr2_joint_position_controllers.yaml" />
Modified: pkg/trunk/stacks/pr2/pr2_alpha/prf_ethercat_reset.launch
===================================================================
--- pkg/trunk/stacks/pr2/pr2_alpha/prf_ethercat_reset.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2/pr2_alpha/prf_ethercat_reset.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -9,7 +9,7 @@
<include file="$(find pr2_alpha)/prf.machine" />
<!-- pr2_etherCAT -->
- <node machine="realtime_root" pkg="pr2_etherCAT" type="pr2_etherCAT" args="-i eth0 -x robot_description_new"/>
+ <node machine="realtime_root" pkg="pr2_etherCAT" type="pr2_etherCAT" args="-i eth0 -x robot_description"/>
<!-- PR2 Calibration -->
<rosparam command="load" file="$(find pr2_default_controllers)/pr2_calibration_controllers.yaml" />
Modified: pkg/trunk/stacks/pr2/pr2_alpha/prg_ethercat_reset.launch
===================================================================
--- pkg/trunk/stacks/pr2/pr2_alpha/prg_ethercat_reset.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2/pr2_alpha/prg_ethercat_reset.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -9,7 +9,7 @@
<include file="$(find pr2_alpha)/prg.machine" />
<!-- pr2_etherCAT -->
- <node machine="realtime_root" pkg="pr2_etherCAT" type="pr2_etherCAT" args="-i eth0 -x robot_description_new"/>
+ <node machine="realtime_root" pkg="pr2_etherCAT" type="pr2_etherCAT" args="-i eth0 -x robot_description"/>
<!-- PR2 Calibration -->
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hca.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hca.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hca.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<!-- send hca urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hca.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hca.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hca.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hca.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hcb.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hcb.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hcb.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<!-- send hcb urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hcb.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hcb.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hcb.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hcb.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hcc.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hcc.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_hcc.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<!-- send hcc urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hcc.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hcc.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hcc.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/hcc.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_l_arm.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_l_arm.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_l_arm.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,5 +1,5 @@
<launch>
<!-- send pr2 left arm urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/l_arm.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/l_arm.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/l_arm.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/l_arm.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_l_gripper.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_l_gripper.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_l_gripper.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<!-- send l_gripper urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/l_gripper.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/l_gripper.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/l_gripper.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/l_gripper.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_laser_tilt.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_laser_tilt.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_laser_tilt.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,5 +1,5 @@
<launch>
<!-- send pr2 left arm urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/laser_tilt.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/laser_tilt.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/laser_tilt.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/laser_tilt.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_pr2.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_pr2.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_pr2.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,5 +1,5 @@
<launch>
<!-- send pr2 urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pr2.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pr2.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pr2.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pr2.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_pre.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_pre.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_pre.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<!-- send pre urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pre.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pre.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pre.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/pre.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prf.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prf.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prf.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<!-- send prf urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/prf.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/prf.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/prf.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/prf.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prg.launch
===================================================================
--- pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prg.launch 2009-09-03 06:59:48 UTC (rev 23757)
+++ pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prg.launch 2009-09-03 08:49:27 UTC (rev 23758)
@@ -1,6 +1,6 @@
<launch>
<!-- send prg urdf to param server -->
- <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/prg.xacro.xml'" />
- <param name="robot_description_new" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/prg.urdf.xacro'" />
+ <param name="robot_description_old" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/prg.xacro.xml'" />
+ <param name="robot_description" command="$(find xacro)/xacro.py '$(find pr2_defs)/robots/prg.urdf.xacro'" />
</launch>
Modified: pkg/trunk/stacks/pr2_common/pr2_defs/launch/upload_prototype1.launch
==========================================================...
[truncated message content] |
|
From: <is...@us...> - 2009-09-03 15:43:16
|
Revision: 23765
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23765&view=rev
Author: isucan
Date: 2009-09-03 15:43:07 +0000 (Thu, 03 Sep 2009)
Log Message:
-----------
added map reset service
Modified Paths:
--------------
pkg/trunk/mapping/collision_map/manifest.xml
pkg/trunk/mapping/collision_map/src/collision_map_self_occ.cpp
pkg/trunk/stacks/manipulation_common/mapping_msgs/manifest.xml
Added Paths:
-----------
pkg/trunk/stacks/manipulation_common/mapping_msgs/srv/
pkg/trunk/stacks/manipulation_common/mapping_msgs/srv/Empty.srv
Modified: pkg/trunk/mapping/collision_map/manifest.xml
===================================================================
--- pkg/trunk/mapping/collision_map/manifest.xml 2009-09-03 14:40:55 UTC (rev 23764)
+++ pkg/trunk/mapping/collision_map/manifest.xml 2009-09-03 15:43:07 UTC (rev 23765)
@@ -9,12 +9,12 @@
<review status="experimental" notes="beta"/>
<depend package="roscpp" />
- <depend package="std_msgs" />
<depend package="tf" />
<depend package="visualization_msgs" />
<depend package="tabletop_msgs" />
<depend package="tabletop_srvs" />
<depend package="mapping_msgs" />
+ <depend package="std_msgs" />
<depend package="point_cloud_mapping" />
<depend package="robot_self_filter" />
</package>
Modified: pkg/trunk/mapping/collision_map/src/collision_map_self_occ.cpp
===================================================================
--- pkg/trunk/mapping/collision_map/src/collision_map_self_occ.cpp 2009-09-03 14:40:55 UTC (rev 23764)
+++ pkg/trunk/mapping/collision_map/src/collision_map_self_occ.cpp 2009-09-03 15:43:07 UTC (rev 23765)
@@ -35,6 +35,7 @@
/** \author Ioan Sucan */
#include <ros/ros.h>
+#include <mapping_msgs/Empty.h>
#include <sensor_msgs/PointCloud.h>
#include <mapping_msgs/CollisionMap.h>
#include <tf/transform_listener.h>
@@ -92,6 +93,8 @@
frames.push_back(robotFrame_);
mnCloud_->setTargetFrame(frames);
mnCloudIncremental_->setTargetFrame(frames);
+
+ resetService_ = nh_.advertiseService("~reset", &CollisionMapperOcc::reset, this);
}
~CollisionMapperOcc(void)
@@ -319,6 +322,14 @@
}
}
+ bool reset(mapping_msgs::Empty::Request &req, mapping_msgs::Empty::Response &res)
+ {
+ mapProcessing_.lock();
+ currentMap_.clear();
+ mapProcessing_.unlock();
+ return true;
+ }
+
bool transformMap(CMap &map, const roslib::Header &from, const roslib::Header &to)
{
tf::Stamped<btTransform> transf;
@@ -412,6 +423,7 @@
ros::Publisher cmapPublisher_;
ros::Publisher cmapUpdPublisher_;
ros::Publisher occPublisher_;
+ ros::ServiceServer resetService_;
roslib::Header header_;
bool publishOcclusion_;
Modified: pkg/trunk/stacks/manipulation_common/mapping_msgs/manifest.xml
===================================================================
--- pkg/trunk/stacks/manipulation_common/mapping_msgs/manifest.xml 2009-09-03 14:40:55 UTC (rev 23764)
+++ pkg/trunk/stacks/manipulation_common/mapping_msgs/manifest.xml 2009-09-03 15:43:07 UTC (rev 23765)
@@ -14,7 +14,7 @@
<depend package="geometry_msgs"/>
<export>
- <cpp cflags="-I${prefix}/msg/cpp"/>
+ <cpp cflags="-I${prefix}/msg/cpp -I${prefix}/srv/cpp"/>
</export>
</package>
Added: pkg/trunk/stacks/manipulation_common/mapping_msgs/srv/Empty.srv
===================================================================
--- pkg/trunk/stacks/manipulation_common/mapping_msgs/srv/Empty.srv (rev 0)
+++ pkg/trunk/stacks/manipulation_common/mapping_msgs/srv/Empty.srv 2009-09-03 15:43:07 UTC (rev 23765)
@@ -0,0 +1,3 @@
+std_msgs/Empty req
+---
+std_msgs/Empty res
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ei...@us...> - 2009-09-03 21:35:58
|
Revision: 23790
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23790&view=rev
Author: eitanme
Date: 2009-09-03 21:35:43 +0000 (Thu, 03 Sep 2009)
Log Message:
-----------
Fixing torso calibration
Modified Paths:
--------------
pkg/trunk/sandbox/mechanism_bringup/scripts/calibrate_pr2.py
pkg/trunk/stacks/pr2/pr2_default_controllers/pr2_joint_position_controllers.yaml
Modified: pkg/trunk/sandbox/mechanism_bringup/scripts/calibrate_pr2.py
===================================================================
--- pkg/trunk/sandbox/mechanism_bringup/scripts/calibrate_pr2.py 2009-09-03 21:31:32 UTC (rev 23789)
+++ pkg/trunk/sandbox/mechanism_bringup/scripts/calibrate_pr2.py 2009-09-03 21:35:43 UTC (rev 23790)
@@ -131,11 +131,12 @@
switch_controller([controller], [], SwitchControllerRequest.BEST_EFFORT)
break
+ else:
+ print 'Error spawning %s' % controller
except Exception, ex:
rospy.logerr("Failed to spawn holding controller %s on try %d: %s" % (controller, i+1, str(ex)))
- print "SENDING HOLD", controller, command
- pub = rospy.Publisher("%s/set_command" % controller, Float64,
+ pub = rospy.Publisher("%s/command" % controller, Float64,
SendMessageOnSubscribe(Float64(command)))
pub.publish(Float64(command))
@@ -212,6 +213,7 @@
hold('l_shoulder_lift', 1.0)
hold('torso_lift', 0.0)
+ sleep(1.0)
# Everything else
Modified: pkg/trunk/stacks/pr2/pr2_default_controllers/pr2_joint_position_controllers.yaml
===================================================================
--- pkg/trunk/stacks/pr2/pr2_default_controllers/pr2_joint_position_controllers.yaml 2009-09-03 21:31:32 UTC (rev 23789)
+++ pkg/trunk/stacks/pr2/pr2_default_controllers/pr2_joint_position_controllers.yaml 2009-09-03 21:35:43 UTC (rev 23790)
@@ -110,8 +110,8 @@
type: JointPositionController
joint: torso_lift_joint
pid:
- p: 1000000
- i: 0.0
- d: 10000
+ p: 100000000
+ i: 10000
+ d: 0.0
i_clamp: 100000.0
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <is...@us...> - 2009-09-04 04:12:09
|
Revision: 23813
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23813&view=rev
Author: isucan
Date: 2009-09-04 04:11:58 +0000 (Fri, 04 Sep 2009)
Log Message:
-----------
removing ogre dependency for robot self filter
Modified Paths:
--------------
pkg/trunk/motion_planning/robot_self_filter/manifest.xml
pkg/trunk/motion_planning/robot_self_filter/src/self_mask.cpp
pkg/trunk/stacks/manipulation_common/geometric_shapes/include/geometric_shapes/shapes.h
pkg/trunk/stacks/manipulation_common/geometric_shapes/src/load_mesh.cpp
Modified: pkg/trunk/motion_planning/robot_self_filter/manifest.xml
===================================================================
--- pkg/trunk/motion_planning/robot_self_filter/manifest.xml 2009-09-04 03:17:59 UTC (rev 23812)
+++ pkg/trunk/motion_planning/robot_self_filter/manifest.xml 2009-09-04 04:11:58 UTC (rev 23813)
@@ -17,7 +17,6 @@
<depend package="geometric_shapes"/>
<depend package="urdf"/>
<depend package="resource_retriever"/>
- <depend package="ogre_tools"/>
<export>
<cpp cflags="-I${prefix}/include `rosboost-cfg --cflags`" lflags="-Wl,-rpath,${prefix}/lib -L${prefix}/lib -lrobot_self_filter" />
Modified: pkg/trunk/motion_planning/robot_self_filter/src/self_mask.cpp
===================================================================
--- pkg/trunk/motion_planning/robot_self_filter/src/self_mask.cpp 2009-09-04 03:17:59 UTC (rev 23812)
+++ pkg/trunk/motion_planning/robot_self_filter/src/self_mask.cpp 2009-09-04 04:11:58 UTC (rev 23813)
@@ -30,7 +30,6 @@
#include "robot_self_filter/self_mask.h"
#include <urdf/model.h>
#include <resource_retriever/retriever.h>
-#include <ogre_tools/stl_loader.h>
#include <ros/console.h>
#include <algorithm>
#include <sstream>
@@ -103,19 +102,8 @@
ROS_WARN("Retrieved empty mesh for resource '%s'", mesh->filename.c_str());
else
{
- ogre_tools::STLLoader loader;
- if (loader.load(res.data.get()))
- {
- std::vector<btVector3> triangles;
- for (unsigned int i = 0 ; i < loader.triangles_.size() ; ++i)
- {
- triangles.push_back(btVector3(loader.triangles_[i].vertices_[0].x, loader.triangles_[i].vertices_[0].y, loader.triangles_[i].vertices_[0].z));
- triangles.push_back(btVector3(loader.triangles_[i].vertices_[1].x, loader.triangles_[i].vertices_[1].y, loader.triangles_[i].vertices_[1].z));
- triangles.push_back(btVector3(loader.triangles_[i].vertices_[2].x, loader.triangles_[i].vertices_[2].y, loader.triangles_[i].vertices_[2].z));
- }
- result = shapes::createMeshFromVertices(triangles);
- }
- else
+ result = shapes::createMeshFromBinaryStlData(reinterpret_cast<char*>(res.data.get()), res.size);
+ if (result == NULL)
ROS_ERROR("Failed to load mesh '%s'", mesh->filename.c_str());
}
}
Modified: pkg/trunk/stacks/manipulation_common/geometric_shapes/include/geometric_shapes/shapes.h
===================================================================
--- pkg/trunk/stacks/manipulation_common/geometric_shapes/include/geometric_shapes/shapes.h 2009-09-04 03:17:59 UTC (rev 23812)
+++ pkg/trunk/stacks/manipulation_common/geometric_shapes/include/geometric_shapes/shapes.h 2009-09-04 04:11:58 UTC (rev 23813)
@@ -237,6 +237,10 @@
recomputed and repeating vertices are identified. */
Mesh* createMeshFromBinaryStl(const char *filename);
+ /** \brief Load a mesh from a binary STL stream. Normals are
+ recomputed and repeating vertices are identified. */
+ Mesh* createMeshFromBinaryStlData(const char *data, unsigned int size);
+
/** \brief Create a copy of a shape */
Shape* cloneShape(const Shape *shape);
Modified: pkg/trunk/stacks/manipulation_common/geometric_shapes/src/load_mesh.cpp
===================================================================
--- pkg/trunk/stacks/manipulation_common/geometric_shapes/src/load_mesh.cpp 2009-09-04 03:17:59 UTC (rev 23812)
+++ pkg/trunk/stacks/manipulation_common/geometric_shapes/src/load_mesh.cpp 2009-09-04 04:11:58 UTC (rev 23813)
@@ -187,10 +187,67 @@
return mesh;
}
+
+ shapes::Mesh* createMeshFromBinaryStlData(const char *data, unsigned int size)
+ {
+ const char* pos = data;
+ pos += 80; // skip the 80 byte header
+
+ unsigned int numTriangles = *(unsigned int*)pos;
+ pos += 4;
+
+ // make sure we have read enough data
+ if ((long)(50 * numTriangles + 84) <= size)
+ {
+ std::vector<btVector3> vertices;
+
+ for (unsigned int currentTriangle = 0 ; currentTriangle < numTriangles ; ++currentTriangle)
+ {
+ // skip the normal
+ pos += 12;
+
+ // read vertices
+ btVector3 v1(0,0,0);
+ btVector3 v2(0,0,0);
+ btVector3 v3(0,0,0);
+
+ v1.setX(*(float*)pos);
+ pos += 4;
+ v1.setY(*(float*)pos);
+ pos += 4;
+ v1.setZ(*(float*)pos);
+ pos += 4;
+
+ v2.setX(*(float*)pos);
+ pos += 4;
+ v2.setY(*(float*)pos);
+ pos += 4;
+ v2.setZ(*(float*)pos);
+ pos += 4;
+
+ v3.setX(*(float*)pos);
+ pos += 4;
+ v3.setY(*(float*)pos);
+ pos += 4;
+ v3.setZ(*(float*)pos);
+ pos += 4;
+
+ // skip attribute
+ pos += 2;
+
+ vertices.push_back(v1);
+ vertices.push_back(v2);
+ vertices.push_back(v3);
+ }
+
+ return createMeshFromVertices(vertices);
+ }
+
+ return NULL;
+ }
shapes::Mesh* createMeshFromBinaryStl(const char *filename)
{
-
FILE* input = fopen(filename, "r");
if (!input)
return NULL;
@@ -204,65 +261,14 @@
fclose(input);
+ shapes::Mesh *result = NULL;
+
if (rd == 1)
- {
- char* pos = buffer;
- pos += 80; // skip the 80 byte header
-
- unsigned int numTriangles = *(unsigned int*)pos;
- pos += 4;
-
- // make sure we have read enough data
- if ((long)(50 * numTriangles + 84) <= fileSize)
- {
- std::vector<btVector3> vertices;
-
- for (unsigned int currentTriangle = 0 ; currentTriangle < numTriangles ; ++currentTriangle)
- {
- // skip the normal
- pos += 12;
-
- // read vertices
- btVector3 v1(0,0,0);
- btVector3 v2(0,0,0);
- btVector3 v3(0,0,0);
-
- v1.setX(*(float*)pos);
- pos += 4;
- v1.setY(*(float*)pos);
- pos += 4;
- v1.setZ(*(float*)pos);
- pos += 4;
-
- v2.setX(*(float*)pos);
- pos += 4;
- v2.setY(*(float*)pos);
- pos += 4;
- v2.setZ(*(float*)pos);
- pos += 4;
-
- v3.setX(*(float*)pos);
- pos += 4;
- v3.setY(*(float*)pos);
- pos += 4;
- v3.setZ(*(float*)pos);
- pos += 4;
-
- // skip attribute
- pos += 2;
-
- vertices.push_back(v1);
- vertices.push_back(v2);
- vertices.push_back(v3);
- }
-
- delete[] buffer;
-
- return createMeshFromVertices(vertices);
- }
- }
+ result = createMeshFromBinaryStlData(buffer, fileSize);
- return NULL;
+ delete[] buffer;
+
+ return result;
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ei...@us...> - 2009-09-04 18:00:34
|
Revision: 23838
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23838&view=rev
Author: eitanme
Date: 2009-09-04 18:00:21 +0000 (Fri, 04 Sep 2009)
Log Message:
-----------
Putting some reasoning about unknown space back into the navigation stack so that now you just set parameters to decide whether or not to take unkown space into account when running
Modified Paths:
--------------
pkg/trunk/highlevel/doors/doors_core/src/move_base_door_action.cpp
pkg/trunk/highlevel/move_base_stage/config/costmap_common_params.yaml
pkg/trunk/nav/people_aware_nav/src/move_base_constrained.cpp
pkg/trunk/sandbox/doors_planner_core/src/move_base_door_action.cpp
pkg/trunk/sandbox/teleop_anti_collision/src/anti_collision_base_controller.cpp
pkg/trunk/sandbox/teleop_anti_collision/src/safe_teleop.cpp
pkg/trunk/stacks/navigation/base_local_planner/src/costmap_model.cpp
pkg/trunk/stacks/navigation/costmap_2d/src/costmap_2d_publisher.cpp
pkg/trunk/stacks/navigation/costmap_2d/src/costmap_2d_ros.cpp
pkg/trunk/stacks/navigation/move_base/src/move_base.cpp
Modified: pkg/trunk/highlevel/doors/doors_core/src/move_base_door_action.cpp
===================================================================
--- pkg/trunk/highlevel/doors/doors_core/src/move_base_door_action.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/highlevel/doors/doors_core/src/move_base_door_action.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -257,7 +257,7 @@
//we'll start our costmap up now that we're active
planner_cost_map_ros_->start();
- planner_cost_map_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
+ planner_cost_map_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
planner_->setDoor(door,getPose2D(global_pose_),door_transformed);//set the goal into the planner
Modified: pkg/trunk/highlevel/move_base_stage/config/costmap_common_params.yaml
===================================================================
--- pkg/trunk/highlevel/move_base_stage/config/costmap_common_params.yaml 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/highlevel/move_base_stage/config/costmap_common_params.yaml 2009-09-04 18:00:21 UTC (rev 23838)
@@ -3,7 +3,7 @@
origin_z: 0.0
z_resolution: 0.2
z_voxels: 10
-unknown_threshold: 10
+unknown_threshold: 9
mark_threshold: 0
#END VOXEL STUFF
transform_tolerance: 0.3
Modified: pkg/trunk/nav/people_aware_nav/src/move_base_constrained.cpp
===================================================================
--- pkg/trunk/nav/people_aware_nav/src/move_base_constrained.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/nav/people_aware_nav/src/move_base_constrained.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -83,8 +83,8 @@
tc_ = new TrajectoryPlannerROS("TrajectoryPlannerROS", &tf_, controller_costmap_ros_);
//initially clear any unknown space around the robot
- planner_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
- controller_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
+ planner_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
+ controller_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
//TODO:spawn planning thread here?
}
Modified: pkg/trunk/sandbox/doors_planner_core/src/move_base_door_action.cpp
===================================================================
--- pkg/trunk/sandbox/doors_planner_core/src/move_base_door_action.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/sandbox/doors_planner_core/src/move_base_door_action.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -256,7 +256,7 @@
//we'll start our costmap up now that we're active
planner_cost_map_ros_->start();
- planner_cost_map_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
+ planner_cost_map_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
planner_->setDoor(door,getPose2D(global_pose_),door_transformed);//set the goal into the planner
Modified: pkg/trunk/sandbox/teleop_anti_collision/src/anti_collision_base_controller.cpp
===================================================================
--- pkg/trunk/sandbox/teleop_anti_collision/src/anti_collision_base_controller.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/sandbox/teleop_anti_collision/src/anti_collision_base_controller.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -73,7 +73,7 @@
ros_node_.param("~min_in_place_vel_th", min_in_place_vel_th_, 0.4);
//initialize the copy of the costmap the controller will use
- costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
+ costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
costmap_ros_->getCostmapCopy(costmap_);
string odom_topic, base_cmd_topic, joy_listen_topic, world_model_type;
Modified: pkg/trunk/sandbox/teleop_anti_collision/src/safe_teleop.cpp
===================================================================
--- pkg/trunk/sandbox/teleop_anti_collision/src/safe_teleop.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/sandbox/teleop_anti_collision/src/safe_teleop.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -108,8 +108,8 @@
//initially clear any unknown space around the robot
- planner_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
- controller_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
+ planner_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
+ controller_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
//if we shutdown our costmaps when we're deactivated... we'll do that now
if(shutdown_costmaps_){
Modified: pkg/trunk/stacks/navigation/base_local_planner/src/costmap_model.cpp
===================================================================
--- pkg/trunk/stacks/navigation/base_local_planner/src/costmap_model.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/stacks/navigation/base_local_planner/src/costmap_model.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -57,8 +57,8 @@
//for circular robots the circumscribed radius will equal the inscribed radius and we can do a point check
if(circumscribed_radius == inscribed_radius){
unsigned char cost = costmap_.getCost(cell_x, cell_y);
- //if(cost == LETHAL_OBSTACLE || cost == INSCRIBED_INFLATED_OBSTACLE || cost == NO_INFORMATION)
- if(cost == LETHAL_OBSTACLE || cost == INSCRIBED_INFLATED_OBSTACLE)
+ //if(cost == LETHAL_OBSTACLE || cost == INSCRIBED_INFLATED_OBSTACLE)
+ if(cost == LETHAL_OBSTACLE || cost == INSCRIBED_INFLATED_OBSTACLE || cost == NO_INFORMATION)
return -1.0;
return 1.0;
}
@@ -189,8 +189,8 @@
double CostmapModel::pointCost(int x, int y){
unsigned char cost = costmap_.getCost(x, y);
//if the cell is in an obstacle the path is invalid
- //if(cost == LETHAL_OBSTACLE || cost == NO_INFORMATION){
- if(cost == LETHAL_OBSTACLE){
+ //if(cost == LETHAL_OBSTACLE){
+ if(cost == LETHAL_OBSTACLE || cost == NO_INFORMATION){
return -1;
}
Modified: pkg/trunk/stacks/navigation/costmap_2d/src/costmap_2d_publisher.cpp
===================================================================
--- pkg/trunk/stacks/navigation/costmap_2d/src/costmap_2d_publisher.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/stacks/navigation/costmap_2d/src/costmap_2d_publisher.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -81,8 +81,8 @@
costmap.mapToWorld(i, j, wx, wy);
std::pair<double, double> p(wx, wy);
- //if(costmap.getCost(i, j) == costmap_2d::LETHAL_OBSTACLE || costmap.getCost(i, j) == costmap_2d::NO_INFORMATION)
- if(costmap.getCost(i, j) == costmap_2d::LETHAL_OBSTACLE)
+ //if(costmap.getCost(i, j) == costmap_2d::LETHAL_OBSTACLE)
+ if(costmap.getCost(i, j) == costmap_2d::LETHAL_OBSTACLE || costmap.getCost(i, j) == costmap_2d::NO_INFORMATION)
raw_obstacles.push_back(p);
else if(costmap.getCost(i, j) == costmap_2d::INSCRIBED_INFLATED_OBSTACLE)
inflated_obstacles.push_back(p);
Modified: pkg/trunk/stacks/navigation/costmap_2d/src/costmap_2d_ros.cpp
===================================================================
--- pkg/trunk/stacks/navigation/costmap_2d/src/costmap_2d_ros.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/stacks/navigation/costmap_2d/src/costmap_2d_ros.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -260,7 +260,7 @@
ros_node_.param("origin_z", map_origin_z, 0.0);
int unknown_threshold, mark_threshold;
- ros_node_.param("unknown_threshold", unknown_threshold, 0);
+ ros_node_.param("unknown_threshold", unknown_threshold, z_voxels);
ros_node_.param("mark_threshold", mark_threshold, 0);
ROS_ASSERT(z_voxels >= 0 && unknown_threshold >= 0 && mark_threshold >= 0);
Modified: pkg/trunk/stacks/navigation/move_base/src/move_base.cpp
===================================================================
--- pkg/trunk/stacks/navigation/move_base/src/move_base.cpp 2009-09-04 17:49:40 UTC (rev 23837)
+++ pkg/trunk/stacks/navigation/move_base/src/move_base.cpp 2009-09-04 18:00:21 UTC (rev 23838)
@@ -110,8 +110,8 @@
make_plan_srv_ = ros_node_.advertiseService("~make_plan", &MoveBase::planService, this);
//initially clear any unknown space around the robot
- planner_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
- controller_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 2, circumscribed_radius_ * 2);
+ planner_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
+ controller_costmap_ros_->clearNonLethalWindow(circumscribed_radius_ * 4, circumscribed_radius_ * 4);
//if we shutdown our costmaps when we're deactivated... we'll do that now
if(shutdown_costmaps_){
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mee...@us...> - 2009-09-04 18:27:47
|
Revision: 23839
http://personalrobots.svn.sourceforge.net/personalrobots/?rev=23839&view=rev
Author: meeussen
Date: 2009-09-04 18:27:37 +0000 (Fri, 04 Sep 2009)
Log Message:
-----------
remove a bunch of undesired deps on pr2_mechanism_control
Modified Paths:
--------------
pkg/trunk/controllers/pr2_mechanism_controllers/manifest.xml
pkg/trunk/controllers/robot_mechanism_controllers/manifest.xml
pkg/trunk/sandbox/experimental_controllers/manifest.xml
pkg/trunk/sandbox/experimental_controllers/src/cartesian_pose_twist_controller.cpp
pkg/trunk/sandbox/experimental_controllers/src/cartesian_tff_controller.cpp
pkg/trunk/sandbox/experimental_controllers/src/cartesian_trajectory_controller.cpp
pkg/trunk/sandbox/experimental_controllers/src/cartesian_twist_controller_ik.cpp
pkg/trunk/sandbox/experimental_controllers/src/head_servoing_controller.cpp
pkg/trunk/sandbox/qualification_controllers/joint_qualification_controllers/manifest.xml
Modified: pkg/trunk/controllers/pr2_mechanism_controllers/manifest.xml
===================================================================
--- pkg/trunk/controllers/pr2_mechanism_controllers/manifest.xml 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/controllers/pr2_mechanism_controllers/manifest.xml 2009-09-04 18:27:37 UTC (rev 23839)
@@ -33,7 +33,6 @@
<depend package="control_toolbox" />
<depend package="filters" />
<depend package="diagnostic_updater" />
- <depend package="pr2_mechanism_control" />
<url>http://pr.willowgarage.com</url>
<repository>http://pr.willowgarage.com/repos</repository>
Modified: pkg/trunk/controllers/robot_mechanism_controllers/manifest.xml
===================================================================
--- pkg/trunk/controllers/robot_mechanism_controllers/manifest.xml 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/controllers/robot_mechanism_controllers/manifest.xml 2009-09-04 18:27:37 UTC (rev 23839)
@@ -8,7 +8,6 @@
<depend package="rospy"/>
<depend package="pr2_controller_interface" />
<depend package="pr2_mechanism_model" />
- <depend package="pr2_mechanism_control" />
<depend package="control_toolbox" />
<depend package="realtime_tools" />
<depend package="roscpp" />
Modified: pkg/trunk/sandbox/experimental_controllers/manifest.xml
===================================================================
--- pkg/trunk/sandbox/experimental_controllers/manifest.xml 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/sandbox/experimental_controllers/manifest.xml 2009-09-04 18:27:37 UTC (rev 23839)
@@ -12,7 +12,6 @@
<depend package="pr2_controller_interface" />
<depend package="sensor_msgs" />
<depend package="pr2_mechanism_model" />
- <depend package="pr2_mechanism_control" />
<depend package="pluginlib" />
<depend package="control_toolbox" />
<depend package="tinyxml" />
Modified: pkg/trunk/sandbox/experimental_controllers/src/cartesian_pose_twist_controller.cpp
===================================================================
--- pkg/trunk/sandbox/experimental_controllers/src/cartesian_pose_twist_controller.cpp 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/sandbox/experimental_controllers/src/cartesian_pose_twist_controller.cpp 2009-09-04 18:27:37 UTC (rev 23839)
@@ -34,7 +34,6 @@
#include <algorithm>
-#include <pr2_mechanism_control/mechanism_control.h>
#include "kdl/chainfksolverpos_recursive.hpp"
#include "experimental_controllers/cartesian_pose_twist_controller.h"
#include "kdl/chainfksolvervel_recursive.hpp"
Modified: pkg/trunk/sandbox/experimental_controllers/src/cartesian_tff_controller.cpp
===================================================================
--- pkg/trunk/sandbox/experimental_controllers/src/cartesian_tff_controller.cpp 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/sandbox/experimental_controllers/src/cartesian_tff_controller.cpp 2009-09-04 18:27:37 UTC (rev 23839)
@@ -33,7 +33,6 @@
#include "experimental_controllers/cartesian_tff_controller.h"
#include <algorithm>
-#include <pr2_mechanism_control/mechanism_control.h>
#include <kdl/chainfksolvervel_recursive.hpp>
#include "pluginlib/class_list_macros.h"
Modified: pkg/trunk/sandbox/experimental_controllers/src/cartesian_trajectory_controller.cpp
===================================================================
--- pkg/trunk/sandbox/experimental_controllers/src/cartesian_trajectory_controller.cpp 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/sandbox/experimental_controllers/src/cartesian_trajectory_controller.cpp 2009-09-04 18:27:37 UTC (rev 23839)
@@ -34,7 +34,6 @@
#include <algorithm>
-#include <pr2_mechanism_control/mechanism_control.h>
#include "kdl/chainfksolverpos_recursive.hpp"
#include "experimental_controllers/cartesian_trajectory_controller.h"
#include "pluginlib/class_list_macros.h"
Modified: pkg/trunk/sandbox/experimental_controllers/src/cartesian_twist_controller_ik.cpp
===================================================================
--- pkg/trunk/sandbox/experimental_controllers/src/cartesian_twist_controller_ik.cpp 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/sandbox/experimental_controllers/src/cartesian_twist_controller_ik.cpp 2009-09-04 18:27:37 UTC (rev 23839)
@@ -34,7 +34,6 @@
#include <experimental_controllers/cartesian_twist_controller_ik.h>
#include <algorithm>
-#include <pr2_mechanism_control/mechanism_control.h>
#include "pluginlib/class_list_macros.h"
#include <kdl/chainfksolvervel_recursive.hpp>
Modified: pkg/trunk/sandbox/experimental_controllers/src/head_servoing_controller.cpp
===================================================================
--- pkg/trunk/sandbox/experimental_controllers/src/head_servoing_controller.cpp 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/sandbox/experimental_controllers/src/head_servoing_controller.cpp 2009-09-04 18:27:37 UTC (rev 23839)
@@ -35,7 +35,6 @@
// Original version: Melonee Wise <mw...@wi...>
#include <experimental_controllers/head_servoing_controller.h>
-#include <pr2_mechanism_control/mechanism_control.h>
#include <cmath>
#include <angles/angles.h>
#include "pluginlib/class_list_macros.h"
Modified: pkg/trunk/sandbox/qualification_controllers/joint_qualification_controllers/manifest.xml
===================================================================
--- pkg/trunk/sandbox/qualification_controllers/joint_qualification_controllers/manifest.xml 2009-09-04 18:00:21 UTC (rev 23838)
+++ pkg/trunk/sandbox/qualification_controllers/joint_qualification_controllers/manifest.xml 2009-09-04 18:27:37 UTC (rev 23839)
@@ -10,7 +10,6 @@
<depend package="control_toolbox" />
<depend package="roscpp" />
<depend package="robot_mechanism_controllers" />
- <depend package="pr2_mechanism_control" />
<depend package="pluginlib" />
<url>http://pr.willowgarage.com/joint_qualification_controllers</url>
<rosdep name="wxwidgets"/>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|