mopoint.cpp
上传用户:qinfarui
上传日期:2022-08-10
资源大小:362k
文件大小:4k
源码类别:

GIS编程

开发平台:

Visual C++

  1. // Machine generated IDispatch wrapper class(es) created by Microsoft Visual C++
  2. // NOTE: Do not modify the contents of this file.  If this class is regenerated by
  3. //  Microsoft Visual C++, your modifications will be overwritten.
  4. #include "stdafx.h"
  5. #include "mopoint.h"
  6. // Dispatch interfaces referenced by this interface
  7. #include "mopoints.h"
  8. /////////////////////////////////////////////////////////////////////////////
  9. // CMoPoint properties
  10. double CMoPoint::GetY()
  11. {
  12. double result;
  13. GetProperty(0x1, VT_R8, (void*)&result);
  14. return result;
  15. }
  16. void CMoPoint::SetY(double propVal)
  17. {
  18. SetProperty(0x1, VT_R8, propVal);
  19. }
  20. double CMoPoint::GetX()
  21. {
  22. double result;
  23. GetProperty(0x2, VT_R8, (void*)&result);
  24. return result;
  25. }
  26. void CMoPoint::SetX(double propVal)
  27. {
  28. SetProperty(0x2, VT_R8, propVal);
  29. }
  30. double CMoPoint::GetZ()
  31. {
  32. double result;
  33. GetProperty(0x3, VT_R8, (void*)&result);
  34. return result;
  35. }
  36. void CMoPoint::SetZ(double propVal)
  37. {
  38. SetProperty(0x3, VT_R8, propVal);
  39. }
  40. double CMoPoint::GetMeasure()
  41. {
  42. double result;
  43. GetProperty(0x4, VT_R8, (void*)&result);
  44. return result;
  45. }
  46. void CMoPoint::SetMeasure(double propVal)
  47. {
  48. SetProperty(0x4, VT_R8, propVal);
  49. }
  50. long CMoPoint::GetShapeType()
  51. {
  52. long result;
  53. GetProperty(0x5, VT_I4, (void*)&result);
  54. return result;
  55. }
  56. void CMoPoint::SetShapeType(long propVal)
  57. {
  58. SetProperty(0x5, VT_I4, propVal);
  59. }
  60. /////////////////////////////////////////////////////////////////////////////
  61. // CMoPoint operations
  62. double CMoPoint::DistanceTo(LPDISPATCH shape)
  63. {
  64. double result;
  65. static BYTE parms[] =
  66. VTS_DISPATCH;
  67. InvokeHelper(0x6, DISPATCH_METHOD, VT_R8, (void*)&result, parms,
  68. shape);
  69. return result;
  70. }
  71. double CMoPoint::DistanceToSegment(LPDISPATCH point1, LPDISPATCH point2)
  72. {
  73. double result;
  74. static BYTE parms[] =
  75. VTS_DISPATCH VTS_DISPATCH;
  76. InvokeHelper(0x7, DISPATCH_METHOD, VT_R8, (void*)&result, parms,
  77. point1, point2);
  78. return result;
  79. }
  80. CMoPoints CMoPoint::GetCrossings(LPDISPATCH shape)
  81. {
  82. LPDISPATCH pDispatch;
  83. static BYTE parms[] =
  84. VTS_DISPATCH;
  85. InvokeHelper(0x8, DISPATCH_METHOD, VT_DISPATCH, (void*)&pDispatch, parms,
  86. shape);
  87. return CMoPoints(pDispatch);
  88. }
  89. LPDISPATCH CMoPoint::Union(LPDISPATCH anotherShape, const VARIANT& Extent)
  90. {
  91. LPDISPATCH result;
  92. static BYTE parms[] =
  93. VTS_DISPATCH VTS_VARIANT;
  94. InvokeHelper(0x9, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  95. anotherShape, &Extent);
  96. return result;
  97. }
  98. LPDISPATCH CMoPoint::Xor(LPDISPATCH anotherShape, const VARIANT& Extent)
  99. {
  100. LPDISPATCH result;
  101. static BYTE parms[] =
  102. VTS_DISPATCH VTS_VARIANT;
  103. InvokeHelper(0xa, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  104. anotherShape, &Extent);
  105. return result;
  106. }
  107. LPDISPATCH CMoPoint::Difference(LPDISPATCH anotherShape, const VARIANT& Extent)
  108. {
  109. LPDISPATCH result;
  110. static BYTE parms[] =
  111. VTS_DISPATCH VTS_VARIANT;
  112. InvokeHelper(0xb, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  113. anotherShape, &Extent);
  114. return result;
  115. }
  116. LPDISPATCH CMoPoint::Intersect(LPDISPATCH anotherShape, const VARIANT& Extent)
  117. {
  118. LPDISPATCH result;
  119. static BYTE parms[] =
  120. VTS_DISPATCH VTS_VARIANT;
  121. InvokeHelper(0xc, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  122. anotherShape, &Extent);
  123. return result;
  124. }
  125. LPDISPATCH CMoPoint::Buffer(double distance, const VARIANT& Extent)
  126. {
  127. LPDISPATCH result;
  128. static BYTE parms[] =
  129. VTS_R8 VTS_VARIANT;
  130. InvokeHelper(0xd, DISPATCH_METHOD, VT_DISPATCH, (void*)&result, parms,
  131. distance, &Extent);
  132. return result;
  133. }