rectobj.h
来自「参数化车间设备资源绘制程序」· C头文件 代码 · 共 54 行
H
54 行
//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 + =
减小字号Ctrl + -
显示快捷键?