📄 rectobj.h
字号:
//rectobj.h 矩形类声明文档
#pragma once
#include "figureobj.h"
class CRectObj :
public CFigureObj
{
protected:
DECLARE_SERIAL(CRectObj);
CRectObj(void);
//下面是构造/析构函数
public:
CRectObj(const CRect& position);
virtual ~CRectObj(void);
//下面是实现函数
//绘制矩形图元
virtual void Draw(CVisDrawView* pView, CDC* pDC);
//系列化矩形图元
virtual void Serialize(CArchive& ar);
//下面是操作函数
//点point到直线nStartPt,nEndPt之间的距离
double PointToLine(CPoint nStartPt,CPoint nEndPt, CPoint pt);
//图元被选择判断
virtual BOOL IsSelected(CVisDrawView* pView, const CPoint& point);
//手柄操作函数
virtual int GetHandleCount();
virtual CPoint GetHandle(CVisDrawView* pView, int nHandle);
virtual void MoveHandleTo(int nHandle, CPoint point, CVisDrawView* pView = NULL);
void MoveTo( CPoint delta, CVisDrawView* pView);
//下面是属性成员变量
private:
//矩形坐标点
double m_ltx, m_lty, m_rbx, m_rby;
public:
//设定坐标点
void SetPoint(int ptNumber, double x, double y);
void GetPoint(int ptNumber, double& x, double& y);
virtual CRect CalcBounds(CVisDrawView* pView);
//区分直线图元和矩形图元类别的变量
enum Shape { lineshape,rectshape};
Shape m_nShape;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -