You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
2.0 KiB
C++

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

#pragma once
#include "resource.h"
#include "Globe.h"
#include "../Include/8BMapDLL_type.h"
using namespace B8MapDLL;
class CFlyLineDesign: public CDialog
{
public:
CFlyLineDesign(CWnd* pParent = NULL); // 标准构造函数
virtual ~CFlyLineDesign();
// 对话框数据
enum { IDD = IDD_DIALOG_FLYLINE_DESIGN};
public:
//清除已有的航线数据,包括界面显示的数据
void ClearCurrentData();
//功能:增加新的航点
//输入经度lon,纬度lat
void AddPoint(const double lon, const double lat);
//功能:增加新的航点
//输入航点数据体ptStruct
void AddPoint(const PtStruct ptStruct);
//功能:移动对话框到给定的显示区域
void MoveToGivenArea(const CRect rcArea);
//功能:编辑航点数据
//输入经度lon,纬度lat
void EditPoint(const double lon, const double lat);
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
DECLARE_MESSAGE_MAP()
private:
double m_ptLon; //航点经度
double m_ptLat; //航点纬度
short m_ptAlt; //航点高度
BYTE m_flySpeed; //航点飞行速度
CComboBox m_comboPt; //航点编号
//当前的航点数据
PtStruct m_curPoint;
//显示区域
CRect m_rcLineDesignArea;
//是否增加新的航点
bool m_bAddNewPoint;
//航线数据集合
PtStruct *m_pLinePts;
//航线的航点个数
int m_linePtNums;
//总的航点个数
int m_totalPtNums;
//航路特征字
int m_ptCarctr;
private:
//初始化所有的变量
void InitiazeAllMembers();
//界面数据赋值
//输入航点数据体pt
void SetWindowMembersValue(const PtStruct pt);
//功能:获得界面输入的数据
//输入航点数据体pt
//输出航点数据体pt
void GetWindowMembersValue(PtStruct &pt);
//功能:往下拉列表框增加一行数据
//输入点号pointID
void InsertComboBox(const int pointID);
public:
afx_msg void OnAddFlyLinePoint();
afx_msg void OnEditFlyLinePoint();
afx_msg void OnDeleteFlyLinePoint();
afx_msg void OnSaveFlyLine();
virtual BOOL OnInitDialog();
afx_msg void OnCbnSelchangeComboPt();
afx_msg void OnBnClickedCancel();
};