📄 polyobj.h
字号:
#pragma once
#include "figureobj.h"
class CFloatPoint
{
public:
CFloatPoint(void);
virtual ~CFloatPoint(void);
public:
double pointx, pointy;
};
class CPolyObj :
public CFigureObj
{
protected:
DECLARE_SERIAL(CPolyObj);
CPolyObj(void);
public:
CPolyObj(const CRect& position);
virtual ~CPolyObj(void);
//下面是实现函数
//绘制矩形图元
virtual void Draw(CVisDrawView* pView, CDC* pDC);
virtual void Serialize(CArchive& ar);
//计算多边形图元的边界
virtual CRect CalcBounds(CVisDrawView* pView = NULL);
void AddPoint(const CPoint& point, CVisDrawView* pView);
//手柄操作函数
virtual int GetHandleCount();
virtual CPoint GetHandle(CVisDrawView* pView, int nHandle);
void MoveHandleTo(int nHandle, CPoint point, CVisDrawView* pView);
void MoveTo( CPoint delta, CVisDrawView* pView);
//属性
protected:
int m_nPoints; //多边形点的个数
int m_nAllocPoints; //多边形点的个数
CPoint* m_points; //多边形点
CFloatPoint* m_floatpoints; //多边形世界坐标点集
friend class CPolyTool;
public:
//区分直线图元和矩形图元类别的变量
enum Shape { polygonshape,polylineshape};
Shape m_nShape;
//BOOL IsSelected(CVisDrawView* pView,const CPoint& point);
//double PointToLine(CPoint nStartPt, CPoint nEndPt, CPoint pt);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -