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

绘图程序

开发平台:

Visual C++

  1. #include "stdafx.h"
  2. #include "MyGraphObject.h"
  3. ///////////////////////////////////////////////////////////////////////////////////////////////
  4. //图形对象信息
  5. CGraphObjectInfo::CGraphObjectInfo(int layer, BOOL del, BOOL selected)
  6. {
  7. m_layer = layer;
  8. m_del = del;  
  9. m_selected = selected;
  10. }
  11. ///////////////////////////////////////////////////////////////////////////////////////////////
  12. IMPLEMENT_SERIAL(CMyLine, CObject, 1)
  13. //直线对象
  14. CMyLine::CMyLine(FPOINT startpoint, FPOINT endpoint, int style, COLORREF color)
  15. {
  16. m_start = startpoint;
  17. m_end = endpoint;
  18.     
  19. m_color = color;
  20. m_style = style;
  21. }
  22. void CMyLine::Serialize(CArchive& ar)
  23. {
  24. if(ar.IsStoring())
  25. {
  26. ar << m_start.x << m_start.y << m_end.x << m_end.y << m_color << m_style;
  27. }
  28. else
  29. {
  30.         ar >> m_start.x >> m_start.y >> m_end.x >> m_end.y >> m_color >> m_style;
  31. }
  32. }
  33. ///////////////////////////////////////////////////////////////////////////////////////////////
  34. IMPLEMENT_SERIAL(CMyRect, CObject, 1)
  35. //矩形对象
  36. CMyRect::CMyRect(FPOINT startpoint, FPOINT endpoint, int style, COLORREF color)
  37. {
  38. m_start = startpoint;
  39. m_end = endpoint;
  40.     m_style = style;
  41. m_color = color;
  42. }
  43. void CMyRect::Serialize(CArchive& ar)
  44. {
  45. if(ar.IsStoring())
  46. {
  47. ar << m_start.x << m_start.y << m_end.x << m_end.y << m_style << m_color;
  48. }
  49. else
  50. {
  51.         ar >> m_start.x >> m_start.y >> m_end.x >> m_end.y >> m_style >> m_color;
  52. }
  53. }
  54. ///////////////////////////////////////////////////////////////////////////////////////////////
  55. IMPLEMENT_SERIAL(CMyCircle, CObject, 1)
  56. //圆对象
  57. CMyCircle::CMyCircle(FPOINT originpoint, float radius, int style, COLORREF color)
  58. {
  59. m_origin = originpoint;
  60. m_radius = radius;
  61.     m_style = style;
  62.     m_color = color;
  63. }
  64. void CMyCircle::Serialize(CArchive& ar)
  65. {
  66. if(ar.IsStoring())
  67. {
  68. ar << m_origin.x << m_origin.y << m_radius << m_style << m_color;
  69. }
  70. else
  71. {
  72.         ar >> m_origin.x >> m_origin.y >> m_radius >> m_style >> m_color;
  73. }
  74. }
  75. ///////////////////////////////////////////////////////////////////////////////////////////////
  76. IMPLEMENT_SERIAL(CMyArc, CObject, 1)
  77. CMyArc::CMyArc(FPOINT originpoint, FPOINT startpoint, FPOINT endpoint, float radius,
  78.    int style, COLORREF color)
  79. {
  80. m_origin = originpoint;
  81. m_start = startpoint;
  82.     m_end = endpoint;
  83. m_radius = radius;
  84.     m_style = style;
  85.     m_color = color;
  86. }
  87. void CMyArc::Serialize(CArchive& ar)
  88. {
  89. if(ar.IsStoring())
  90. {
  91. ar << m_origin.x << m_origin.y << m_start.x << m_start.y << m_end.x << m_end.y
  92.    << m_radius << m_style << m_color;
  93. }
  94. else
  95. {
  96. ar >> m_origin.x >> m_origin.y >> m_start.x >> m_start.y >> m_end.x >> m_end.y
  97.    >> m_radius >> m_style >> m_color;
  98. }
  99. }