Circle.h
上传用户:ckg1000
上传日期:2013-01-26
资源大小:630k
文件大小:2k
源码类别:

CAD

开发平台:

Visual C++

  1. // Circle.h: interface for the CCircle class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_CIRCLE_H__3824695A_9BBD_4A48_B09F_99A8E6CFCFDD__INCLUDED_)
  5. #define AFX_CIRCLE_H__3824695A_9BBD_4A48_B09F_99A8E6CFCFDD__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include "Shape.h"
  10. enum tagToolState    //鼠标点击次数
  11. {Init_State,FirstHit,SecondHit};
  12. class CCircle : public CShape  
  13. {
  14. public:
  15. void Zoom(CDC *pDC,CPoint point);
  16. void KillMirLine(CDC *pDC);
  17. void DrawMirLine(CDC *pDC,POINT MirBegPt, POINT MirEndPt);
  18. void OnMirLBtnDn(CDC *pDC,CPoint point);
  19. POINT GetMirPt(const POINT& ptBegin, const POINT& ptEnd,POINT ptCur);
  20. void Mirror(CDC *pDC,CPoint point);
  21. void Update(CDC *pDC);
  22. CPoint GetPosEnd();
  23. CPoint GetPosBegin();
  24. void SetPosEnd(CPoint point);
  25. void SetPosBegin(CPoint point);
  26. CCircle();
  27. virtual ~CCircle();
  28. void OnLbuttondown(CDC *pDC,CPoint point);
  29. void Onmousemove(CDC *pDC,CPoint point);
  30. int Distance(POINT ptPos1, POINT ptPos2);
  31. void DrawCircle(HDC hdc,POINT ptCenter,int nRadius);
  32. bool Select(CDC *pDC,CPoint point);
  33. bool pick(POINT pt);
  34. void DrawRect(HDC hdc,POINT m_ptBeginPo,COLORREF m_color = RGB(255,0,0));
  35. void Move(CDC *pDoc,CPoint point);
  36. void Delete(CDC *pDC);
  37. POINT  m_FirstMirPt;   //镜像后的点
  38. POINT  m_ptBeginPos;        // 中心点
  39. POINT  m_ptPrePos;          // 末尾点
  40. tagToolState m_eToolState;  //鼠标状态标记
  41. POINT m_oldpt;
  42. static int nRadius;
  43. bool KILLRECT;
  44. POINT m_pttempbeginpos;
  45. POINT m_MirBegPt;     //镜像直线起点
  46. POINT m_MirEndPt;
  47. bool blncircletemp;
  48. // POINT m_oldpos[8];
  49. //int nRadius;
  50. // POINT    m_ptFirstPos;        // first point
  51. // POINT    m_ptSecondPos;       // second point
  52. };
  53. #endif // !defined(AFX_CIRCLE_H__3824695A_9BBD_4A48_B09F_99A8E6CFCFDD__INCLUDED_)