diff --git a/.gitignore b/.gitignore
index 070bb21..6d7d10c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,4 +8,10 @@
*bin
*~
src/ar_track_alvar
-*.user
\ No newline at end of file
+*.user
+*.swp
+GPATH
+GRTAGS
+GTAGS
+GSYMS
+
diff --git a/ar_track_alvar/include/ar_track_alvar/Marker.h b/ar_track_alvar/include/ar_track_alvar/Marker.h
index 0313833..880cef2 100644
--- a/ar_track_alvar/include/ar_track_alvar/Marker.h
+++ b/ar_track_alvar/include/ar_track_alvar/Marker.h
@@ -100,6 +100,8 @@ namespace alvar {
void SetMarkerSize(double _edge_length = 0, int _res = 0, double _margin = 0);
/** \brief Get edge length (to support different size markers */
double GetMarkerEdgeLength() const { return edge_length; }
+ /** \brief Method for Get the marker resolution */
+ int GetMarkerRes(void);
/** \brief Destructor */
~Marker();
/** \brief Default constructor
diff --git a/ar_track_alvar/launch/pr2_bundle.launch b/ar_track_alvar/launch/pr2_bundle.launch
index 69d49da..e02ac2e 100755
--- a/ar_track_alvar/launch/pr2_bundle.launch
+++ b/ar_track_alvar/launch/pr2_bundle.launch
@@ -1,4 +1,5 @@
+
@@ -10,5 +11,5 @@
-
+
diff --git a/ar_track_alvar/launch/pr2_bundle_no_kinect.launch b/ar_track_alvar/launch/pr2_bundle_no_kinect.launch
index c7892dd..f2b4ac4 100755
--- a/ar_track_alvar/launch/pr2_bundle_no_kinect.launch
+++ b/ar_track_alvar/launch/pr2_bundle_no_kinect.launch
@@ -1,4 +1,5 @@
+
@@ -9,5 +10,5 @@
-
+
diff --git a/ar_track_alvar/launch/pr2_indiv.launch b/ar_track_alvar/launch/pr2_indiv.launch
index 27e4689..768ec21 100755
--- a/ar_track_alvar/launch/pr2_indiv.launch
+++ b/ar_track_alvar/launch/pr2_indiv.launch
@@ -1,4 +1,5 @@
+
@@ -12,6 +13,7 @@
+
diff --git a/ar_track_alvar/launch/pr2_indiv_no_kinect.launch b/ar_track_alvar/launch/pr2_indiv_no_kinect.launch
index 4428714..867ead7 100755
--- a/ar_track_alvar/launch/pr2_indiv_no_kinect.launch
+++ b/ar_track_alvar/launch/pr2_indiv_no_kinect.launch
@@ -1,4 +1,5 @@
+
@@ -11,6 +12,7 @@
+
diff --git a/ar_track_alvar/nodes/FindMarkerBundles.cpp b/ar_track_alvar/nodes/FindMarkerBundles.cpp
index e7f83e0..23c1f35 100644
--- a/ar_track_alvar/nodes/FindMarkerBundles.cpp
+++ b/ar_track_alvar/nodes/FindMarkerBundles.cpp
@@ -112,6 +112,8 @@ std::string cam_info_topic;
std::string output_frame;
int n_bundles = 0;
+bool inverse_tf = false;
+
//Debugging utility function
void draw3dPoints(ARCloud::Ptr cloud, string frame, int color, int id, double rad)
{
@@ -527,8 +529,13 @@ void makeMarkerMsgs(int type, int id, Pose &p, sensor_msgs::ImageConstPtr image_
out << id;
std::string id_string = out.str();
markerFrame += id_string;
- tf::StampedTransform camToMarker (t, image_msg->header.stamp, image_msg->header.frame_id, markerFrame.c_str());
- tf_broadcaster->sendTransform(camToMarker);
+ if (inverse_tf) {
+ tf::StampedTransform markerToCam (t.inverse(), image_msg->header.stamp, markerFrame.c_str(), output_frame);
+ tf_broadcaster->sendTransform(markerToCam);
+ } else {
+ tf::StampedTransform camToMarker (t, image_msg->header.stamp, image_msg->header.frame_id, markerFrame.c_str());
+ tf_broadcaster->sendTransform(camToMarker);
+ }
//Create the rviz visualization message
tf::poseTFToMsg (markerPose, rvizMarker->pose);
@@ -771,10 +778,10 @@ int main(int argc, char *argv[])
ros::init (argc, argv, "marker_detect");
ros::NodeHandle n;
- if(argc < 9){
+ if(argc < 10){
std::cout << std::endl;
cout << "Not enough arguments provided." << endl;
- cout << "Usage: ./findMarkerBundles