radioview.h

来自「VC&Matlab混合编程实现无线电导航指示器」· C头文件 代码 · 共 179 行

H
179
字号
/*
This project was created using the Top Studio AppWizard
Radio Navigation Simulator
Project: RADIO
Author : GPS Center
Date : 星期二, 三月 21, 2006
*/
 
// RADIOView.h : interface of the CRADIOView class
//
/////////////////////////////////////////////////////////////////////////////

#if !defined(AFX_RADIOVIEW_H__E7639B14_7CA4_4311_B108_48F2AE414A00__INCLUDED_)
#define AFX_RADIOVIEW_H__E7639B14_7CA4_4311_B108_48F2AE414A00__INCLUDED_

#include "GUI\TabSheet.h"	// Added by ClassView
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "DlgSheet1.h"
#include "DlgSheet2.h"
#include "air.h"
#include "TrajFileAccess.h"
#include "matlab.hpp"
#include "libmwsglm.hpp"
#include "Traj3DShow.h"
#include "BeaconManage.h"	// Added by ClassView
#include "DlgBeacon.h"
#include "BeaconSimu.h"
class CRADIOView : public CScrollView
{

friend class CTraj3DShow;
protected: // create from serialization only
	CRADIOView();
	DECLARE_DYNCREATE(CRADIOView)

// Attributes
public:
	CRADIODoc* GetDocument();

// Operations
public:
// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CRADIOView)
	public:
	virtual void OnDraw(CDC* pDC);  // overridden to draw this view
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
	virtual void OnInitialUpdate();
	protected:
	virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
	virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
	virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
	virtual void OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint);
	virtual LRESULT DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam);
	virtual void OnActivateView(BOOL bActivate, CView* pActivateView, CView* pDeactiveView);
	//}}AFX_VIRTUAL

// Implementation
public:
	virtual ~CRADIOView();
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

protected:

// Generated message map functions
public:
	void Stop();
	mwArray m_mwhBeacon;
	CBeaconManage* GetBeaconManage();
	BOOL m_bTracePlane;
	void MakeMatlabFiguresVisible();
	void DockMatlabFigure(mwArray mwhFigure,CWnd* pParentWnd);
	void RefreshMeters();
	void SetCurSheetRect(int nSheet);
	CRect Size2Rect(const CSize& size);
	void RefreshCurSheet(int nSheet);
	void GenAxis();
    afx_msg void OnRotate3d();
    BOOL m_bIsMatlabFigureShowing;
    CTrajFileAccess m_fileAccess;
	mwArray m_mwhAxis;//matlab轴
	CDlgBeacon * m_pDlgBeacon;
	CTraj3DShow m_traj3dShow;
	BOOL m_bSimuStarted;
	CBeaconSimu* m_pBeaconSimu;
	BOOL m_bInitState;

protected:
	double m_dRadioFileTime;
	
	CBeaconManage m_beaconManage;


	COLORREF m_colorAxisColor;
	COLORREF m_colorLineTrajColor;
	BOOL m_bIsZooming;
	BOOL m_bIsRotating3D;

	mwArray m_mwhFigure;//matlab的Figure
	mwArray m_mwhLineTraj;//matlab的line(航迹曲线)
	CImageList m_imageListTabSheets;
	void RefreshAirPointer();
	CAir* m_pAirAttitude;
	CAir* m_pAirAlt;
	CAir* m_pAirSpeed;
	CAir* m_pAirRms;



	void RefreshScroll(int nSheet);
	CTabSheet m_tabSheet;//整个sheet
	CDlgSheet1 m_dlgSheet1;
	CDlgSheet2 m_dlgSheet2;
	int m_nCurSheet;//当前的sheet
	CRect m_rectCurSheet;//当前的sheet大小.
	CRect m_rectSheetOffset;//sheet的偏置,在构造函数里设
	//{{AFX_MSG(CRADIOView)
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
	afx_msg void OnTimer(UINT nIDEvent);
	afx_msg void OnStart();
	afx_msg void OnUpdateStart(CCmdUI* pCmdUI);
	afx_msg void OnStop();
	afx_msg void OnUpdateStop(CCmdUI* pCmdUI);
	afx_msg void OnChoosecolor();
	afx_msg void OnDrawItem(int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct);
	afx_msg void OnDestroy();
	afx_msg void OnUpdateRotate3d(CCmdUI* pCmdUI);
	afx_msg void OnZoom();
	afx_msg void OnUpdateZoom(CCmdUI* pCmdUI);
	afx_msg void OnRotate2d();
	afx_msg void OnUpdateRotate2d(CCmdUI* pCmdUI);
	afx_msg void OnAxiscolor();
	afx_msg void OnUpdateAxiscolor(CCmdUI* pCmdUI);
	afx_msg void OnUpdateAxistype(CCmdUI* pCmdUI);
	afx_msg void OnAxisauto();
	afx_msg void OnAxisequal();
	afx_msg void OnAxismanual();
	afx_msg void OnAxisnormal();
	afx_msg void OnAxison();
	afx_msg void OnAxissquare();
	afx_msg void OnAxistight();
	afx_msg void OnBoxon();
	afx_msg void OnFigurecolor();
	afx_msg void OnXyzcolor();
	afx_msg void OnAxisbackcolor();
	afx_msg void OnTrajlinecolor();
	afx_msg void OnGrid();
	afx_msg void OnAxislimit();
	afx_msg void OnView3d();
	afx_msg void OnUpdateView3d(CCmdUI* pCmdUI);
	afx_msg void OnTraceplane();
	afx_msg void OnUpdateTraceplane(CCmdUI* pCmdUI);
	afx_msg void OnSetbeacon();
	afx_msg void OnInitstate();
	afx_msg void OnUpdateInitstate(CCmdUI* pCmdUI);
	afx_msg void OnUpdateFilesetting(CCmdUI* pCmdUI);
	afx_msg void OnUpdateSetbeacon(CCmdUI* pCmdUI);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

#ifndef _DEBUG  // debug version in RADIOView.cpp
inline CRADIODoc* CRADIOView::GetDocument()
   { return (CRADIODoc*)m_pDocument; }
#endif

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

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

#endif // !defined(AFX_RADIOVIEW_H__E7639B14_7CA4_4311_B108_48F2AE414A00__INCLUDED_)

⌨️ 快捷键说明

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