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.
64 lines
2.0 KiB
C++
64 lines
2.0 KiB
C++
#pragma once
|
|
#include "Resource.h"
|
|
#include <vector>
|
|
#include "topologicalanalysis.h"
|
|
#include "geocompute.h"
|
|
#include "Globe.h"
|
|
#include "afxwin.h"
|
|
#include "MapPrj.h"
|
|
|
|
// DesignSurveyLineDlg 对话框
|
|
|
|
// DesignSurveyLineDlg 对话框
|
|
class DesignSurveyLineDlg : public CBCGPDialog
|
|
{
|
|
DECLARE_DYNAMIC(DesignSurveyLineDlg)
|
|
|
|
public:
|
|
DesignSurveyLineDlg(CWnd* pParent = NULL); // 标准构造函数
|
|
virtual ~DesignSurveyLineDlg();
|
|
|
|
bool bDrawRegion;
|
|
void SetSurveyRegion(const vector<double>& lons,const vector<double>& lats);
|
|
//测绘区域坐标
|
|
vector<double> surveyRegionLons;
|
|
vector<double> surveyRegionLats;
|
|
|
|
// 对话框数据
|
|
enum { IDD = IDD_DLG_DESIGNSURVEYLINE };
|
|
|
|
private:
|
|
void calculateSurveyLine(double lineInterval,vector<double>&surveyLineLons,vector<double>& surveyLineLats,double outLength=0);//计算测绘航线
|
|
void saveSurveyLine(const vector<double>&surveyLineLons,const vector<double>& surveyLineLats,double height); //保存测绘航线
|
|
bool saveSurveyRegion(const vector<double>&surveyRegionLons,const vector<double>& surveyRegionLats); //保存航测区域
|
|
double calculateRouteLength(const vector<double>&surveyLineLons,const vector<double>& surveyLineLats); //计算航程
|
|
int lineID;
|
|
//测绘航线坐标
|
|
vector<double> surveyLineLons;
|
|
vector<double> surveyLineLats;
|
|
double g_Height;
|
|
double g_RouteLength;
|
|
|
|
// 测绘区域文件路径
|
|
CString g_regionPathName;
|
|
CString g_regionFileName;
|
|
CString g_linePathName;
|
|
CString g_lineFileName;
|
|
|
|
CString extractFileName(CString fileName); //提取没有后缀名的文件名
|
|
protected:
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
|
|
|
|
DECLARE_MESSAGE_MAP()
|
|
public:
|
|
virtual BOOL OnInitDialog();
|
|
afx_msg void OnBnClickedBtnInputregion();
|
|
afx_msg void OnBnClickedBtnDrawregion();
|
|
afx_msg void OnBnClickedBtnSaveregion();
|
|
afx_msg void OnBnClickedBtnBindline();
|
|
afx_msg void OnBnClickedBtnCalculateline();
|
|
afx_msg void OnClose();
|
|
CBCGPButton m_btnSaveRegion;
|
|
afx_msg void OnBnClickedBtnCalculatetime();
|
|
};
|