MyGraphObject.h
上传用户:netltd
上传日期:2013-02-12
资源大小:7234k
文件大小:2k
源码类别:

绘图程序

开发平台:

Visual C++

  1. //浮点型点坐标
  2. struct FPOINT 
  3. {
  4. float x;
  5. float y;
  6. };
  7. class CGraphObjectInfo: public CObject
  8. {
  9. public:
  10. BOOL  m_del;           //图形对象被暂时删除标记
  11. BOOL  m_selected;      //图形对象被选中标记
  12.     CRect m_rect;          //图形对象所占的逻辑区域
  13. public:
  14.     CGraphObjectInfo(); 
  15. CGraphObjectInfo(CRect rect, BOOL del, BOOL selected);
  16. void Initialize(CRect rect, BOOL del, BOOL selected);
  17. };
  18. // 直线对象
  19. class CMyLine : public CObject
  20. {
  21. public:
  22. FPOINT   m_start;
  23. FPOINT   m_end;
  24. CString     m_layer;      //图形对象所在图层
  25.     int      m_style;
  26. COLORREF m_color;
  27. CMyLine()
  28. {}
  29. DECLARE_SERIAL(CMyLine)
  30. public:
  31. CMyLine(CString layer, FPOINT startpoint, FPOINT endpoint, int style, COLORREF color);
  32. void Serialize(CArchive& ar);
  33. public:
  34. int GetObjectType();
  35. };
  36. //矩形对象
  37. class CMyRect: public CObject
  38. {
  39. public:
  40. FPOINT    m_start;
  41. FPOINT    m_end;
  42. CString   m_layer;      //图形对象所在图层
  43.     int       m_style;
  44. COLORREF  m_color;
  45. CMyRect()
  46. {}
  47. DECLARE_SERIAL(CMyRect)
  48. public:
  49. CMyRect(CString layer, FPOINT startpoint, FPOINT endpoint, int style, COLORREF color);
  50. void Serialize(CArchive& ar);
  51. public:
  52. int GetObjectType();
  53. };
  54. //圆对象
  55. class CMyCircle: public CObject
  56. {
  57. public:
  58.     FPOINT    m_origin;
  59. float     m_radius;
  60. CString   m_layer;      //图形对象所在图层
  61.     int       m_style;
  62.     COLORREF  m_color;
  63. CMyCircle()
  64. {}
  65. DECLARE_SERIAL(CMyCircle)
  66. public:
  67. CMyCircle(CString layer, FPOINT originpoint, float radius, int style, COLORREF color);
  68. void Serialize(CArchive& ar);
  69. public:
  70. int GetObjectType();
  71. };
  72. //圆弧对象
  73. class CMyArc: public CObject
  74. {
  75. public:
  76. //圆心坐标
  77.     FPOINT    m_origin;
  78. //起点坐标
  79. FPOINT    m_start;
  80. //终点坐标
  81. FPOINT    m_end;
  82.     float     m_radius;
  83. CString   m_layer;      //图形对象所在图层
  84.     int       m_style;
  85.     COLORREF  m_color;
  86. CMyArc()
  87. {}
  88. DECLARE_SERIAL(CMyArc)
  89. public:
  90. CMyArc(CString layer, FPOINT originpoint, FPOINT startpoint, FPOINT endpoint, float radius,
  91.    int style, COLORREF color);
  92. void Serialize(CArchive& ar);
  93. public:
  94. int GetObjectType();
  95. };