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

📄 polyobj.h

📁 参数化车间设备资源绘制程序
💻 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 + -