www.pudn.com > DEM_TDS.rar > DEMView.h, change:2007-06-21,size:5767b


// DEMView.h : interface of the CDEMView class 
// 
///////////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_MYMDOPENGLVIEW_H__127960DD_48CD_46AE_8514_722C40289CF3__INCLUDED_) 
#define AFX_MYMDOPENGLVIEW_H__127960DD_48CD_46AE_8514_722C40289CF3__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
//////////////////////////////////////////////////////////////////////////////// 
//包含类CGLEnabledView的说明文件 
#include "GLEnabledView.h" 
#include "DEMDoc.h" 
#include "MapViewAttrib.h" 
#include "ViewPort.h" 
#include "PointAttribData.h" 
 
//////////////////////////////////////////////////////////////////////////////// 
class CDEMView : public CGLEnabledView 
{ 
	friend class CPointAttrib; 
////////////////////////////////////////////////////////////////////////////////////// 
	GLdouble fx,fy;//鼠标所在点的单位坐标 
	bool showpath; 
	bool setflylist; 
	CPoint point; 
	PointAttribData pointattrib; 
	CBitmap MemBitmap; 
	bool clickenlarge; 
	bool clickdrag; 
	bool mousepick; 
	bool mousedrag; 
	bool buttondown; 
	bool enlarge; 
protected: // create from serialization only 
	CDEMView(); 
	DECLARE_DYNCREATE(CDEMView) 
// Attributes 
public:	 
	bool inittoolbar; 
	bool stop; 
	CDC *MemDC; 
	DEMdata *demdata; 
	MapViewAttrib mapview; 
	ViewPort viewport; 
	CDEMDoc* GetDocument(); 
	void SetOperateStatusBar(char*index); 
// Operations 
public: 
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CDEMView) 
	public: 
	virtual	void OnDraw(CDC* pDC); 
	protected: 
	virtual BOOL OnPreparePrinting(CPrintInfo* pInfo); 
	virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo); 
	virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo); 
	//}}AFX_VIRTUAL 
 
// Implementation 
public: 
	void DrawPath(); 
	void KeyEvent(UINT nChar); 
	void Draw_3DHead(CRect rect); 
	int speed; 
	void Drawtext(); 
	bool showskirt; 
	void Updata3DCoor(CPoint point); 
	void UpDataDemDraw(); 
	CRect GetMapRect(); 
	bool showframe; 
	bool maploadok; 
	bool autofly; 
	bool drawlengend; 
	void DrawLengend(); 
	DEMdata* GetDEMdata(); 
	MapViewAttrib & Getmapview(); 
	void MapOpen(DEMdata *demdata); 
	virtual ~CDEMView(); 
	void OnDrawGL();	//改写CGLEnabledView类的场景绘制虚函数 
#ifdef _DEBUG 
	virtual void AssertValid() const; 
	virtual void Dump(CDumpContext& dc) const; 
#endif 
 
protected: 
 
// Generated message map functions 
protected: 
	//{{AFX_MSG(CDEMView) 
	afx_msg BOOL OnMouseWheel(UINT nFlags, short zDelta, CPoint pt); 
	afx_msg void ZoomIn(); 
	afx_msg void ZoomOut(); 
	afx_msg void ReFlesh(); 
	afx_msg void OnClickEnlarge(); 
	afx_msg void OnMouseDrag(); 
	afx_msg void OnUpdateZoomin(CCmdUI* pCmdUI); 
	afx_msg void OnUpdateZoomout(CCmdUI* pCmdUI); 
	afx_msg void OnUpdateReflesh(CCmdUI* pCmdUI); 
	afx_msg void OnUpdateClickEnlarge(CCmdUI* pCmdUI); 
	afx_msg void OnUpdateMouseDrag(CCmdUI* pCmdUI); 
	afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message); 
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point); 
	afx_msg void OnMouseMove(UINT nFlags, CPoint point); 
	afx_msg void OnRButtonUp(UINT nFlags, CPoint point); 
	afx_msg void OnLButtonUp(UINT nFlags, CPoint point); 
	afx_msg void OnRButtonDown(UINT nFlags, CPoint point); 
	afx_msg void OnUpdateShowscale(CCmdUI* pCmdUI); 
	afx_msg void OnUpdateMapColor(CCmdUI* pCmdUI); 
	afx_msg void OnSize(UINT nType, int cx, int cy); 
	afx_msg void OnPick(); 
	afx_msg void OnUpdatePick(CCmdUI* pCmdUI); 
	afx_msg void OnShowframe(); 
	afx_msg void OnUpdateShowframe(CCmdUI* pCmdUI); 
	afx_msg void OnColor1(); 
	afx_msg void OnUpdateColor1(CCmdUI* pCmdUI); 
	afx_msg void OnColor2(); 
	afx_msg void OnUpdateColor2(CCmdUI* pCmdUI); 
	afx_msg BOOL OnEraseBkgnd(CDC* pDC); 
	afx_msg void On2d(); 
	afx_msg void OnUpdate2d(CCmdUI* pCmdUI); 
	afx_msg void On3d(); 
	afx_msg void OnUpdate3d(CCmdUI* pCmdUI); 
	afx_msg void OnMoving(); 
	afx_msg void OnUpdateMoving(CCmdUI* pCmdUI); 
	afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags); 
	afx_msg void OnTimer(UINT nIDEvent); 
	afx_msg void OnAutofly(); 
	afx_msg void OnUpdateAutofly(CCmdUI* pCmdUI); 
	afx_msg void OnAutoheight(); 
	afx_msg void OnUpdateAutoheight(CCmdUI* pCmdUI); 
	afx_msg void OnAppAbout(); 
	afx_msg void OnStop(); 
	afx_msg void OnUpdateStop(CCmdUI* pCmdUI); 
	afx_msg void OnKeya(); 
	afx_msg void OnKeyadd(); 
	afx_msg void OnKeyc(); 
	afx_msg void OnKeyd(); 
	afx_msg void OnKeydown(); 
	afx_msg void OnKeye(); 
	afx_msg void OnKeyf(); 
	afx_msg void OnKeyq(); 
	afx_msg void OnKeyr(); 
	afx_msg void OnKeyreduse(); 
	afx_msg void OnKeys(); 
	afx_msg void OnKeyup(); 
	afx_msg void OnKeyw(); 
	afx_msg void OnKeyx(); 
	afx_msg void OnSmooth(); 
	afx_msg void OnUpdateSmooth(CCmdUI* pCmdUI); 
	afx_msg void OnSetflylist(); 
	afx_msg void OnUpdateSetflylist(CCmdUI* pCmdUI); 
	afx_msg void OnShowpath(); 
	afx_msg void OnUpdateShowpath(CCmdUI* pCmdUI); 
	//}}AFX_MSG 
	DECLARE_MESSAGE_MAP() 
private: 
	bool firstdrag; 
	CPoint oldoffset; 
	CPoint oldpoint; 
/////////////////////////////////////////////////////////////////////////////// 
//添加私有成员变量 
private: 
	bool firstdraw; 
	CPoint MouseDownPoint; 
	double earthrotate; 
	double moonrotate; 
 	double bothrotate; 
//////////////////////////////////////////////////////////////////////////////// 
}; 
 
#ifndef _DEBUG  // debug version in DEMView.cpp 
inline CDEMDoc* CDEMView::GetDocument() 
   { return (CDEMDoc*)m_pDocument; } 
#endif 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_MYMDOPENGLVIEW_H__127960DD_48CD_46AE_8514_722C40289CF3__INCLUDED_)