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

📄 maptestdoc.h

📁 gps 可以打开.gps
💻 H
字号:
// MapTestDoc.h : interface of the CMapTestDoc class
//
/////////////////////////////////////////////////////////////////////////////

#if !defined(AFX_MAPTESTDOC_H__2B9F225D_8819_430F_B4F1_556AAD53D8D4__INCLUDED_)
#define AFX_MAPTESTDOC_H__2B9F225D_8819_430F_B4F1_556AAD53D8D4__INCLUDED_
#include "math.h"
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CMapLayer;//

class CMapTestDoc : public CDocument
{
protected: // create from serialization only
	CMapTestDoc();
	DECLARE_DYNCREATE(CMapTestDoc)

	double relfa(double r)
	{
		return log(tan(r*0.0087266 + 0.7853981));  // 0.7853981为45弧度
		                                           //0.0087266我Pi/360度
	}

	double absfa(double s)
	{
		return (atan(exp(s)) - 0.7853981) * 114.59156; // 57.29578*2(57.29578为一弧度)
	}

// Attributes
public:
	CArray<CMapLayer*, CMapLayer*> m_aLayers;//图层数组
	long m_nViewWidth, m_nVeiwHeight;//窗口最大显示范围
	long m_nOffsetX, m_nOffsetY;//当前地图顶点相对屏幕原点偏移量
	double m_fMaxCX, m_fMaxCY;//当前地图最大显示范围(直角坐标)
	double m_fMapjw[4];//当前地图经纬度范围
	long m_nMaxPoint;//地图图元最大端点数
	CDC* m_pMemDC;//绘制位图使用的DC

	double m_fMinX, m_fMinY, m_fMaxX, m_fMaxY;//图元区域顶点坐标


    bool mif_gps;//定义一个布尔变量用于分辨读取的什么文件

	CString m_strMapName;//地图名称
	
	CBitmap *m_pBitmap, *m_pDefaultBitmap;
int ONum;
	long* m_pData;
    CString Nam[10000];   //定义一个数组 用来存储从MID文件中读取的属性信息

// Operations
public:

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CMapTestDoc)
	public:
	virtual BOOL OnNewDocument();
	virtual void Serialize(CArchive& ar);
	//}}AFX_VIRTUAL

// Implementation
public:
	void SetMapReach(double dx,double dy); //设置地图显示的区域
	void InitData();
	double GetDistance(double sx,double sy,double dx,double dy);
	void DisplayJW(CPoint point);
	void MoveOffset(CPoint point);
	void LPtoDP(long& x, long& y); //地图逻辑坐标转换为屏幕坐标
	void LPtoDPs(long* data, int n); //将逻辑坐标转换为显示坐标
	void ConvToXYs(double* jw, long* xy, int n);//经纬度(度)->直角坐标多点转换
	void DrawMap(CDC* pDC);
	void SetCenter(CPoint point);  //设置地图显示的中心
	void Zoom(float scale);
	void ConvToJW(long cx, long cy, double& jing, double& wei); //直角坐标->经纬度(度)
	void ConvToXY(double jing, double wei, long& cx, long& cy); //经纬度(度)->直角坐标
	void DPtoLP(long& x, long& y);  //屏幕坐标转换为地图逻辑坐标
	virtual ~CMapTestDoc();
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

protected:

// Generated message map functions
protected:
	//{{AFX_MSG(CMapTestDoc)
		// NOTE - the ClassWizard will add and remove member functions here.
		//    DO NOT EDIT what you see in these blocks of generated code !
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_MAPTESTDOC_H__2B9F225D_8819_430F_B4F1_556AAD53D8D4__INCLUDED_)

⌨️ 快捷键说明

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