Map.cs 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. 
  2. using OpenCVForUnity.CoreModule;
  3. using OpenCVForUnity.UtilsModule;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Runtime.InteropServices;
  7. namespace OpenCVForUnity.RegModule
  8. {
  9. // C++: class Map
  10. //javadoc: Map
  11. public class Map : DisposableOpenCVObject
  12. {
  13. protected override void Dispose (bool disposing)
  14. {
  15. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  16. try {
  17. if (disposing) {
  18. }
  19. if (IsEnabledDispose) {
  20. if (nativeObj != IntPtr.Zero)
  21. reg_Map_delete (nativeObj);
  22. nativeObj = IntPtr.Zero;
  23. }
  24. } finally {
  25. base.Dispose (disposing);
  26. }
  27. #else
  28. return;
  29. #endif
  30. }
  31. protected internal Map (IntPtr addr)
  32. : base (addr)
  33. {
  34. }
  35. public IntPtr getNativeObjAddr ()
  36. {
  37. return nativeObj;
  38. }
  39. // internal usage only
  40. public static Map __fromPtr__ (IntPtr addr)
  41. {
  42. return new Map (addr);
  43. }
  44. //
  45. // C++: Ptr_Map cv::reg::Map::inverseMap()
  46. //
  47. //javadoc: Map::inverseMap()
  48. public virtual Map inverseMap ()
  49. {
  50. ThrowIfDisposed ();
  51. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  52. Map retVal = Map.__fromPtr__ (reg_Map_inverseMap_10 (nativeObj));
  53. return retVal;
  54. #else
  55. return null;
  56. #endif
  57. }
  58. //
  59. // C++: void cv::reg::Map::compose(Ptr_Map map)
  60. //
  61. //javadoc: Map::compose(map)
  62. public virtual void compose (Map map)
  63. {
  64. ThrowIfDisposed ();
  65. if (map != null)
  66. map.ThrowIfDisposed ();
  67. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  68. reg_Map_compose_10 (nativeObj, map.getNativeObjAddr ());
  69. return;
  70. #else
  71. return;
  72. #endif
  73. }
  74. //
  75. // C++: void cv::reg::Map::inverseWarp(Mat img1, Mat& img2)
  76. //
  77. //javadoc: Map::inverseWarp(img1, img2)
  78. public virtual void inverseWarp (Mat img1, Mat img2)
  79. {
  80. ThrowIfDisposed ();
  81. if (img1 != null)
  82. img1.ThrowIfDisposed ();
  83. if (img2 != null)
  84. img2.ThrowIfDisposed ();
  85. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  86. reg_Map_inverseWarp_10 (nativeObj, img1.nativeObj, img2.nativeObj);
  87. return;
  88. #else
  89. return;
  90. #endif
  91. }
  92. //
  93. // C++: void cv::reg::Map::scale(double factor)
  94. //
  95. //javadoc: Map::scale(factor)
  96. public virtual void scale (double factor)
  97. {
  98. ThrowIfDisposed ();
  99. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  100. reg_Map_scale_10 (nativeObj, factor);
  101. return;
  102. #else
  103. return;
  104. #endif
  105. }
  106. //
  107. // C++: void cv::reg::Map::warp(Mat img1, Mat& img2)
  108. //
  109. //javadoc: Map::warp(img1, img2)
  110. public void warp (Mat img1, Mat img2)
  111. {
  112. ThrowIfDisposed ();
  113. if (img1 != null)
  114. img1.ThrowIfDisposed ();
  115. if (img2 != null)
  116. img2.ThrowIfDisposed ();
  117. #if ((UNITY_ANDROID || UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR) || UNITY_5 || UNITY_5_3_OR_NEWER
  118. reg_Map_warp_10 (nativeObj, img1.nativeObj, img2.nativeObj);
  119. return;
  120. #else
  121. return;
  122. #endif
  123. }
  124. #if (UNITY_IOS || UNITY_WEBGL) && !UNITY_EDITOR
  125. const string LIBNAME = "__Internal";
  126. #else
  127. const string LIBNAME = "opencvforunity";
  128. #endif
  129. // C++: Ptr_Map cv::reg::Map::inverseMap()
  130. [DllImport (LIBNAME)]
  131. private static extern IntPtr reg_Map_inverseMap_10 (IntPtr nativeObj);
  132. // C++: void cv::reg::Map::compose(Ptr_Map map)
  133. [DllImport (LIBNAME)]
  134. private static extern void reg_Map_compose_10 (IntPtr nativeObj, IntPtr map_nativeObj);
  135. // C++: void cv::reg::Map::inverseWarp(Mat img1, Mat& img2)
  136. [DllImport (LIBNAME)]
  137. private static extern void reg_Map_inverseWarp_10 (IntPtr nativeObj, IntPtr img1_nativeObj, IntPtr img2_nativeObj);
  138. // C++: void cv::reg::Map::scale(double factor)
  139. [DllImport (LIBNAME)]
  140. private static extern void reg_Map_scale_10 (IntPtr nativeObj, double factor);
  141. // C++: void cv::reg::Map::warp(Mat img1, Mat& img2)
  142. [DllImport (LIBNAME)]
  143. private static extern void reg_Map_warp_10 (IntPtr nativeObj, IntPtr img1_nativeObj, IntPtr img2_nativeObj);
  144. // native support for java finalize()
  145. [DllImport (LIBNAME)]
  146. private static extern void reg_Map_delete (IntPtr nativeObj);
  147. }
  148. }