java: add support for MatOfRotatedRect
authorberak <px1704@web.de>
Thu, 1 Nov 2018 14:37:23 +0000 (15:37 +0100)
committerberak <px1704@web.de>
Thu, 1 Nov 2018 14:37:23 +0000 (15:37 +0100)
modules/core/misc/java/gen_dict.json
modules/java/generator/src/cpp/converters.cpp
modules/java/generator/src/cpp/converters.h

index 44505b6..36b2c58 100644 (file)
             "v_type": "Mat",
             "j_import": "org.opencv.core.MatOfRect2d"
         },
+        "vector_RotatedRect": {
+            "j_type": "MatOfRotatedRect",
+            "jn_type": "long",
+            "jni_type": "jlong",
+            "jni_var": "std::vector< RotatedRect > %(n)s",
+            "suffix": "J",
+            "v_type": "Mat",
+            "j_import": "org.opencv.core.MatOfRotatedRect"
+        },
         "vector_String": {
             "j_type": "List<String>",
             "jn_type": "List<String>",
index 1151120..9c4caac 100644 (file)
@@ -107,6 +107,20 @@ void vector_Rect2d_to_Mat(std::vector<Rect2d>& v_rect, Mat& mat)
     mat = Mat(v_rect, true);
 }
 
+//vector_RotatedRect
+
+void Mat_to_vector_RotatedRect(Mat& mat, std::vector<RotatedRect>& v_rect)
+{
+    v_rect.clear();
+    CHECK_MAT(mat.type()==CV_32FC(5) && mat.cols==1);
+    v_rect = (std::vector<RotatedRect>) mat;
+}
+
+void vector_RotatedRect_to_Mat(std::vector<RotatedRect>& v_rect, Mat& mat)
+{
+    mat = Mat(v_rect, true);
+}
+
 //vector_Point
 void Mat_to_vector_Point(Mat& mat, std::vector<Point>& v_point)
 {
index 27c2ded..019d7d6 100644 (file)
@@ -26,6 +26,8 @@ void vector_Rect_to_Mat(std::vector<cv::Rect>& v_rect, cv::Mat& mat);
 void Mat_to_vector_Rect2d(cv::Mat& mat, std::vector<cv::Rect2d>& v_rect);
 void vector_Rect2d_to_Mat(std::vector<cv::Rect2d>& v_rect, cv::Mat& mat);
 
+void Mat_to_vector_RotatedRect(cv::Mat& mat, std::vector<cv::RotatedRect>& v_rect);
+void vector_RotatedRect_to_Mat(std::vector<cv::RotatedRect>& v_rect, cv::Mat& mat);
 
 void Mat_to_vector_Point(cv::Mat& mat, std::vector<cv::Point>& v_point);
 void Mat_to_vector_Point2f(cv::Mat& mat, std::vector<cv::Point2f>& v_point);