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

📄 mt.h

📁 CT工作站具有打印报告、病历管理、图像处理专家词库等功能
💻 H
字号:
// MT.h

#if !defined(__MT_H__)
#define __MT_H__

#define PI							3.1415926
#define ARROW_ANGLE					(PI/10)
#define ARROW_LENGTH				20
#define CROSS_LENGTH				5
#define MAX_TEXT_LENGTH				100
#define RECORD_LENGTH				sizeof(item)

#define ACTION_NOTHING				-1

#define ACTION_ARROW				1
#define ACTION_CROSS				2
#define ACTION_TEXT					3
#define ACTION_DELETE				99

#define	ACTION_SETSTANDARDLENGTH	201
#define ACTION_MEASRECTAREA			202
#define ACTION_MEASLINEDIST			203
#define	ACTION_MEASLINEDIST2		204
#define	ACTION_MEASANGLE			205
#define	ACTION_MEASANGLE2			206
#define	ACTION_MEASCHAOSANGLE		207
#define	ACTION_MEASCHAOSANGLE2		208
#define	ACTION_MEASCHAOSAREA		209
#define	ACTION_MEASCHAOSAREA2		210
#define ACTION_MEASDELETE			299

#define	TYPE_NOTHING				500
#define	TYPE_LINE					501
#define	TYPE_START					502
#define	TYPE_END					503
#define	TYPE_ARC					504

/*
typedef struct _CFPOINT
{
	double x;
	double y;
}CFPoint;
*/

//	节点结构
struct item
{
	// 节点数据
	int		type;
	double	x0,y0,x1,y1;
	union	
	{
		double	u_double[4];
		int		u_int[4];
		POINT	u_point[4];
		char	word[MAX_TEXT_LENGTH];
	};

	// 连接指针
	item *next,*last;
};

class MT
{
public:
	bool ReDraw(CDC *dc,long left,long top,double width,double height);
	MT();
	~MT();
	bool Open(char *fn );
	void AddNode(item *nitem);
	void DelNode(item *nitem);
	void Save(char *fn=NULL);
	item *m_itemhead;
	
	bool changed;
	CString filename;
protected:
	// Protected Datas

	// Protected Functions
	bool CleanUp();
	bool GetArrow(CPoint start,CPoint end,CPoint &pa,CPoint &pb);
};

////////////////////////////////////////////////////////////////////////////////////////////////////
//	测量类
////////////////////////////////////////////////////////////////////////////////////////////////////

class MEAS
{
public:
	void	InsertArc(float x0,float y0,float x2,float y2,float x3,float y3);
	BOOL	HasSelected();
	BOOL	EraseSel();
	item*	m_itemhead;
	item*	m_selitem;
	BOOL	m_lighton;
	CString m_FilePathName;
	float	m_left,m_top,m_width,m_height;

	BOOL	SetScale(float left,float top,float width,float  height);
	BOOL	SelectItem(CPoint hp);
	BOOL	SelFlash(CDC *dc,BOOL off = FALSE);
	BOOL	SelectNone();
	BOOL	ReDraw(CDC *dc);
	BOOL	AddNode(item *node);
	void	BeginRecord();			// 开始记录数据
	void	EndRecord();			// 结束记录数据
	void	InsertLine(float x0,float y0,float x1,float y1);
	BOOL	LoadFile(char *argPathName);
	BOOL	SaveFile(char *argPathName = NULL);
	MEAS();
	~MEAS();
protected:
	void CleanUp();
};

#endif	// __MT_H__

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -