📄 shape.h
字号:
// Shape.h: interface for the CShape class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_SHAPE_H__35A41A4E_36EA_11D4_85B6_3ED14D000000__INCLUDED_)
#define AFX_SHAPE_H__35A41A4E_36EA_11D4_85B6_3ED14D000000__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CShape;
class CCircle;
class CSquare;
class CLine;
class CArc;
class CShape
{
public:
CShape(HWND hWnd, HDC hdc);
virtual ~CShape();
virtual void Draw ();
virtual void Show();
protected:
HDC m_hDC;
HWND m_hWnd;
};
class CLine : virtual public CShape
{
public:
void Rotate (int nDegrees, int nWhichEnd);
CLine(HWND hWnd, HDC hdc, POINT & ptStart, POINT ptEnd);
virtual ~CLine();
protected:
POINT m_ptEnd;
POINT m_ptStart;
void Draw();
private:
double m_fRadius;
double m_fCurAngle;
};
class CCircle : virtual public CShape
{
public:
CCircle(HWND hWnd, HDC hdc, POINT & ptCenter, int nRadius = 0);
virtual ~CCircle();
private:
POINT m_ptCenter;
int m_nRadius;
int m_nSide;
protected:
bool m_bDashed;
virtual void Draw ();
};
class CSquare : virtual public CShape
{
public:
CSquare(HWND hWnd, HDC hdc, POINT & ptStart, POINT & ptEnd, int nSquash = 0);
virtual ~CSquare();
virtual void Draw();
protected:
int m_nSquash;
POINT m_ptEnd;
POINT m_ptStart;
};
class CArc : public CShape
{
public:
void Rotate (int nDegrees);
CArc(HWND hWnd, HDC hdc, POINT & ptCenter, int nRadius = 0,
int nStart = 0, int nSubtend = 0);
virtual ~CArc();
virtual void Draw();
protected:
private:
POINT m_ptCenter;
POINT m_ptStart;
POINT m_ptEnd;
double m_fRadius;
double m_fStart;
double m_fEnd;
};
#endif // !defined(AFX_SHAPE_H__35A41A4E_36EA_11D4_85B6_3ED14D000000__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -