AffineTransformer.cs 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  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.ShapeModule {
  8. // C++: class AffineTransformer
  9. //javadoc: AffineTransformer
  10. public class AffineTransformer : ShapeTransformer {
  11. protected override void Dispose(bool disposing) {
  12. #if (UNITY_ANDROID && !UNITY_EDITOR)
  13. try {
  14. if (disposing) {
  15. }
  16. if (IsEnabledDispose) {
  17. if (nativeObj != IntPtr.Zero)
  18. shape_AffineTransformer_delete(nativeObj);
  19. nativeObj = IntPtr.Zero;
  20. }
  21. } finally {
  22. base.Dispose(disposing);
  23. }
  24. #else
  25. return;
  26. #endif
  27. }
  28. protected internal AffineTransformer(IntPtr addr) : base(addr) { }
  29. // internal usage only
  30. public static new AffineTransformer __fromPtr__(IntPtr addr) { return new AffineTransformer(addr); }
  31. //
  32. // C++: bool cv::AffineTransformer::getFullAffine()
  33. //
  34. //javadoc: AffineTransformer::getFullAffine()
  35. public bool getFullAffine() {
  36. ThrowIfDisposed();
  37. #if (UNITY_ANDROID && !UNITY_EDITOR)
  38. bool retVal = shape_AffineTransformer_getFullAffine_10(nativeObj);
  39. return retVal;
  40. #else
  41. return false;
  42. #endif
  43. }
  44. //
  45. // C++: void cv::AffineTransformer::setFullAffine(bool fullAffine)
  46. //
  47. //javadoc: AffineTransformer::setFullAffine(fullAffine)
  48. public void setFullAffine(bool fullAffine) {
  49. ThrowIfDisposed();
  50. #if (UNITY_ANDROID && !UNITY_EDITOR)
  51. shape_AffineTransformer_setFullAffine_10(nativeObj, fullAffine);
  52. return;
  53. #else
  54. return;
  55. #endif
  56. }
  57. #if (UNITY_ANDROID && !UNITY_EDITOR)
  58. const string LIBNAME = "opencvforunity";
  59. // C++: bool cv::AffineTransformer::getFullAffine()
  60. [DllImport(LIBNAME)]
  61. private static extern bool shape_AffineTransformer_getFullAffine_10(IntPtr nativeObj);
  62. // C++: void cv::AffineTransformer::setFullAffine(bool fullAffine)
  63. [DllImport(LIBNAME)]
  64. private static extern void shape_AffineTransformer_setFullAffine_10(IntPtr nativeObj, bool fullAffine);
  65. // native support for java finalize()
  66. [DllImport(LIBNAME)]
  67. private static extern void shape_AffineTransformer_delete(IntPtr nativeObj);
  68. #endif
  69. }
  70. }