From cc23a58866186ae34b7fb3441401451ba592f40a Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 25 Jun 2014 16:58:20 -0430 Subject: [PATCH] Finally fixed the marker rotation problem. --- jni/marker.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/jni/marker.cpp b/jni/marker.cpp index 07a410a..79941ac 100644 --- a/jni/marker.cpp +++ b/jni/marker.cpp @@ -127,7 +127,7 @@ void getAllMarkers(markers_vector & valid_markers, cv::Mat & img){ // so that the orientation calculations always use the correct top of the marker. if(rotations > 0){ while(rotations > 0){ - for(int r = 0; r < 3; r++){ + for(int r = 0; r < 1; r++){ point = markers[i].points.at(markers[i].points.size() - 1); markers[i].points.pop_back(); markers[i].points.insert(markers[i].points.begin(), point); @@ -137,6 +137,13 @@ void getAllMarkers(markers_vector & valid_markers, cv::Mat & img){ } } + // Rotate 180 degrees. + for(int r = 0; r < 2; r++){ + point = markers[i].points.at(markers[i].points.size() - 1); + markers[i].points.pop_back(); + markers[i].points.insert(markers[i].points.begin(), point); + } + valid_markers.push_back(markers[i]); } }