KmMatch.h
上传用户:hell82222
上传日期:2013-12-19
资源大小:1872k
文件大小:4k
源码类别:

CAD

开发平台:

Visual C++

  1. // KmMatch.h: interface for the KmMatch class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_KMMATCH_H__E584C49D_8C60_4C0E_B610_78706C4D756B__INCLUDED_)
  5. #define AFX_KMMATCH_H__E584C49D_8C60_4C0E_B610_78706C4D756B__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "KmObject.h"
  10. class CMatch1
  11. {
  12. public:
  13. CMatch1();
  14. ~CMatch1();
  15. public:
  16. AD_OBJHANDLE m_handle;
  17. int m_ltype;
  18. double  m_lscale;
  19. short m_index;
  20. };
  21. class CMatch2
  22. {
  23. public:
  24. CMatch2();
  25. ~CMatch2();
  26. public:
  27. AD_OBJHANDLE m_handle;
  28. UINT m_id;
  29. double  m_lscale;
  30. BOOL m_bRef;
  31. BOOL m_bUseful;
  32. };
  33. class CMatch3
  34. {
  35. public:
  36. CMatch3();
  37. ~CMatch3();
  38. public:
  39. AD_OBJHANDLE m_handle;
  40. CString m_layeroutname;
  41. int m_iplotsheet;
  42. };
  43. class CMatch4
  44. {
  45. public:
  46. CMatch4();
  47. ~CMatch4();
  48. public:
  49. AD_OBJHANDLE m_handle;
  50. BOOL m_showmiter;//(show miters)
  51. BOOL m_startline;//(start with a square cap)
  52. BOOL m_startinner;//(start with an inner arc cap)
  53. BOOL m_startouter;//(start with an outer round cap)
  54. BOOL m_endline;//(end with a square cap)
  55. BOOL m_endinner;//(end with an inner arc cap)
  56. BOOL m_endouter;//(end with an outer round cap)
  57. CArray<int,int>segcolor;
  58. CArray<int,int>segltyle;
  59. };
  60. class CShape
  61. {
  62. public:
  63. CShape();
  64. virtual ~CShape();
  65. public:
  66. CString m_strShapefilename;
  67. CString m_strBigFontfilename;
  68. CString m_strShapename;
  69. long m_lShapeCapacity;
  70. UINT m_utShapeflag1;
  71. UINT m_utShapeflag2;
  72. double m_dShapeAngle;
  73. double m_dShapeHeight;
  74. double m_dShapeWidth;
  75. BOOL m_bUseSHX;
  76. UINT m_KmWordStyleID;
  77. };
  78. class CMatch5
  79. {
  80. public:
  81. CMatch5();
  82. ~CMatch5();
  83. public:
  84. AD_OBJHANDLE m_handle;
  85. CShape* m_shape;
  86. };
  87. class CMatch6
  88. {
  89. public:
  90. CMatch6();
  91. ~CMatch6();
  92. public:
  93. AD_OBJHANDLE m_handle;
  94. CString  m_strDicdflt;
  95. };
  96. //匹配链表
  97. class CMatchList1
  98. {
  99. public:
  100. CMatchList1();
  101. virtual ~CMatchList1();
  102. private:
  103. CList<CMatch1*,CMatch1*>m_List;
  104. public:
  105. void ReInit();
  106. void Add(AD_OBJHANDLE handle,int ltype,double lscale,short sindex); //添加到列表中
  107. short Get(AD_OBJHANDLE handle,int &ltype,double &lscale); //添加到列表中
  108. void Get(AD_OBJHANDLE& handle,int ltype); //添加到列表中
  109. int Get(short sindex);
  110. public:
  111. POSITION GetHeadPosition();
  112. CMatch1* GetNext(POSITION& pos);
  113. };
  114. class CMatchList2
  115. {
  116. public:
  117. CMatchList2();
  118. virtual ~CMatchList2();
  119. private:
  120. CList<CMatch2*,CMatch2*>m_List;
  121. public:
  122. void ReInit();
  123. void Add(AD_OBJHANDLE handle,UINT id,double lscale,BOOL bRef); //添加到列表中
  124. void Get(AD_OBJHANDLE handle,UINT &id,double &lscale); //添加到列表中
  125. BOOL Get(AD_OBJHANDLE &handle,UINT id); //添加到列表中
  126. BOOL Get(UINT &id,AD_OBJHANDLE handle); //添加到列表中
  127. public:
  128. POSITION GetHeadPosition();
  129. CMatch2* GetNext(POSITION& pos);
  130. };
  131. class CMatchList3
  132. {
  133. public:
  134. CMatchList3();
  135. virtual ~CMatchList3();
  136. private:
  137. CList<CMatch3*,CMatch3*>m_List;
  138. public:
  139. void ReInit();
  140. void Add(AD_OBJHANDLE handle,CString strlayeroutname,int iplotsheet);//添加到列表中
  141. BOOL IsInList(AD_OBJHANDLE handle);
  142. public:
  143. POSITION GetHeadPosition();
  144. CMatch3* GetNext(POSITION& pos);
  145. };
  146. class CMatchList4
  147. {
  148. public:
  149. CMatchList4();
  150. virtual ~CMatchList4();
  151. private:
  152. CList<CMatch4*,CMatch4*>m_List;
  153. public:
  154. void ReInit();
  155. void Add(AD_OBJHANDLE handle,CMatch4* match); //添加到列表中
  156. BOOL Get(AD_OBJHANDLE handle,CMatch4*& match); //添加到列表中
  157. };
  158. class CMatchList5
  159. {
  160. public:
  161. CMatchList5();
  162. virtual ~CMatchList5();
  163. private:
  164. CList<CMatch5*,CMatch5*>m_List;
  165. public:
  166. void Add(AD_OBJHANDLE handle,CShape* shape); //添加到列表中
  167. BOOL Get(AD_OBJHANDLE handle,CMatch5*& match);
  168. CShape* Get(UINT kmid);
  169. void ReInit();
  170. CShape* GetHead();
  171. };
  172. class CMatchList6
  173. {
  174. public:
  175. CMatchList6();
  176. virtual ~CMatchList6();
  177. private:
  178. CList<CMatch6*,CMatch6*>m_List;
  179. public:
  180. void Add(AD_OBJHANDLE handle,CString strDicdflt); //添加到列表中
  181. BOOL Get(AD_OBJHANDLE handle,CString& strDicdflt);
  182. void ReInit();
  183. };
  184. #endif // !defined(AFX_KMMATCH_H__E584C49D_8C60_4C0E_B610_78706C4D756B__INCLUDED_)