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. int  m_layer;      //图形对象所在图层
  11. BOOL m_del;           //图形对象被暂时删除标记
  12. BOOL m_selected;      //图形对象被选中标记
  13. public:
  14. CGraphObjectInfo(int layer, BOOL del, BOOL selected);
  15. };
  16. // 直线对象
  17. class CMyLine : public CObject
  18. {
  19. public:
  20. FPOINT m_start;
  21. FPOINT m_end;
  22.     int m_style;
  23. COLORREF m_color;
  24. CMyLine()
  25. {}
  26. DECLARE_SERIAL(CMyLine)
  27. public:
  28. CMyLine(FPOINT startpoint, FPOINT endpoint, int style, COLORREF color);
  29. void Serialize(CArchive& ar);
  30.     
  31. };
  32. //矩形对象
  33. class CMyRect: public CObject
  34. {
  35. public:
  36. FPOINT m_start;
  37. FPOINT m_end;
  38.     int m_style;
  39. COLORREF m_color;
  40. CMyRect()
  41. {}
  42. DECLARE_SERIAL(CMyRect)
  43. public:
  44. CMyRect(FPOINT startpoint, FPOINT endpoint, int style, COLORREF color);
  45. void Serialize(CArchive& ar);
  46. };
  47. //圆对象
  48. class CMyCircle: public CObject
  49. {
  50. public:
  51.     FPOINT m_origin;
  52. float m_radius;
  53.     int m_style;
  54.     COLORREF m_color;
  55. CMyCircle()
  56. {}
  57. DECLARE_SERIAL(CMyCircle)
  58. public:
  59. CMyCircle(FPOINT originpoint, float radius, int style, COLORREF color);
  60. void Serialize(CArchive& ar);
  61. };
  62. //圆弧对象
  63. class CMyArc: public CObject
  64. {
  65. public:
  66. //圆心坐标
  67.     FPOINT m_origin;
  68. //起点坐标
  69. FPOINT m_start;
  70. //终点坐标
  71. FPOINT m_end;
  72.     float m_radius;
  73.     int m_style;
  74.     COLORREF m_color;
  75. CMyArc()
  76. {}
  77. DECLARE_SERIAL(CMyArc)
  78. public:
  79. CMyArc(FPOINT originpoint, FPOINT startpoint, FPOINT endpoint, float radius,
  80.    int style, COLORREF color);
  81. void Serialize(CArchive& ar);
  82. };