⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shape.h

📁 VC源代码大全(精华版)
💻 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 + -