|
|
|
|
#pragma once
|
|
|
|
|
#include "Resource.h"
|
|
|
|
|
#include <vector>
|
|
|
|
|
#include "topologicalanalysis.h"
|
|
|
|
|
#include "geocompute.h"
|
|
|
|
|
#include "Globe.h"
|
|
|
|
|
#include "afxwin.h"
|
|
|
|
|
#include "MapPrj.h"
|
|
|
|
|
|
|
|
|
|
// DesignSurveyLineDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
|
|
|
|
|
|
|
|
|
// DesignSurveyLineDlg <20>Ի<EFBFBD><D4BB><EFBFBD>
|
|
|
|
|
class DesignSurveyLineDlg : public CBCGPDialog
|
|
|
|
|
{
|
|
|
|
|
DECLARE_DYNAMIC(DesignSurveyLineDlg)
|
|
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
DesignSurveyLineDlg(CWnd* pParent = NULL); // <20><><EFBFBD><D7BC><EFBFBD>캯<EFBFBD><ECBAAF>
|
|
|
|
|
virtual ~DesignSurveyLineDlg();
|
|
|
|
|
|
|
|
|
|
bool bDrawRegion;
|
|
|
|
|
void SetSurveyRegion(const vector<double>& lons,const vector<double>& lats);
|
|
|
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
vector<double> surveyRegionLons;
|
|
|
|
|
vector<double> surveyRegionLats;
|
|
|
|
|
|
|
|
|
|
// <20>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
enum { IDD = IDD_DLG_DESIGNSURVEYLINE };
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
void calculateSurveyLine(double lineInterval,vector<double>&surveyLineLons,vector<double>& surveyLineLats,double outLength=0);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>溽<EFBFBD><E6BABD>
|
|
|
|
|
void saveSurveyLine(const vector<double>&surveyLineLons,const vector<double>& surveyLineLats,double height); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>溽<EFBFBD><E6BABD>
|
|
|
|
|
bool saveSurveyRegion(const vector<double>&surveyRegionLons,const vector<double>& surveyRegionLats); //<2F><><EFBFBD>溽<EFBFBD><E6BABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
double calculateRouteLength(const vector<double>&surveyLineLons,const vector<double>& surveyLineLats); //<2F><><EFBFBD>㺽<EFBFBD><E3BABD>
|
|
|
|
|
int lineID;
|
|
|
|
|
//<2F><><EFBFBD>溽<EFBFBD><E6BABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
vector<double> surveyLineLons;
|
|
|
|
|
vector<double> surveyLineLats;
|
|
|
|
|
double g_Height;
|
|
|
|
|
double g_RouteLength;
|
|
|
|
|
|
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>·<EFBFBD><C2B7>
|
|
|
|
|
CString g_regionPathName;
|
|
|
|
|
CString g_regionFileName;
|
|
|
|
|
CString g_linePathName;
|
|
|
|
|
CString g_lineFileName;
|
|
|
|
|
|
|
|
|
|
CString extractFileName(CString fileName); //<2F><>ȡû<C8A1>к<EFBFBD><EFBFBD><D7BA><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
|
|
|
|
|
protected:
|
|
|
|
|
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV ֧<><D6A7>
|
|
|
|
|
|
|
|
|
|
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();
|
|
|
|
|
};
|