diff --git a/GISControlDlg.vcxproj b/GISControlDlg.vcxproj index 0eaefd5..a7f3bfa 100644 --- a/GISControlDlg.vcxproj +++ b/GISControlDlg.vcxproj @@ -97,7 +97,7 @@ 0x0804 - ..\Release/GISControlDlgUAV.dll + ..\Release/GISControlDlg.dll true .\GISControlDlg.def .\Release/GISControlDlg.pdb @@ -149,7 +149,7 @@ 0x0804 - ..\Debug/GISControlDlgUAV.dll + ..\Debug/GISControlDlg.dll true .\GISControlDlg.def true diff --git a/GISDlg.cpp b/GISDlg.cpp index ed33573..51cb1ef 100644 --- a/GISDlg.cpp +++ b/GISDlg.cpp @@ -1393,9 +1393,9 @@ void CGISDlg::OnShowRMenu() { pSubMenu->CheckMenuItem( ID_SHOW_BACKLINE, MF_BYCOMMAND | MF_UNCHECKED ); }*/ - if (g_b981AMulti && m_line14FlyID >0) + if (g_b981AMulti && m_line14FlyID >=0) { - if (m_pHaveDrawCopyLineFlag[13][m_line14FlyID-1]) + if (m_pHaveDrawCopyLineFlag[13][m_line14FlyID]) { menu.CheckMenuItem( ID_SHOW_BACKLINE, MF_BYCOMMAND | MF_CHECKED ); } @@ -4683,8 +4683,8 @@ void CGISDlg::DrawCopyFlyLine(const DrawLineDataStruct lineData) //航线索引号 int lineID = lineData.lineID-1; - //子航线索引号 - int sublineID = lineData.pts[0].nV-1; + //子航线索引号(飞机ID) + int sublineID = lineData.pts[0].nV; //没有目标标绘SHP图层,创建该图层 if (m_subLineLayerID[lineID][sublineID] ==-1) @@ -5101,6 +5101,18 @@ void CGISDlg::SetFlyLineShowStatus(const int lineID) bMulti = true; } } +/* + if (lineID==14) //清除连线 + { + for (auto it=m_TempLine14LayerID.begin();it!=m_TempLine14LayerID.end();) + { + if ((*it).second!=-1) + { + m_map.ClearDrawing((*it).second); + m_TempLine14LayerID.erase(it++); + } + } + }*/ } //已经标绘,清除航线 if (m_pHaveDrawLineFlag[lineIndex]) @@ -5246,19 +5258,22 @@ void CGISDlg::OnShowGivenLine(const CString strLineFileName) } m_lineFullPathName[lineDataGroup.lineID] = strLineFileName; - if (g_b981AMulti && lineDataGroup.pts[0].nV>0) //多机ID号 + if (g_b981AMulti) //多机ID号 { if (lineDataGroup.lineID==14) { m_line14FlyID = lineDataGroup.pts[0].nV; SetBindLine14Coordinate(lineDataGroup.pts[0].nV,lineDataGroup.pts[0].dX,lineDataGroup.pts[0].dY); } - //清除标绘的航线 - ClearDrawedCopyLine(lineDataGroup.lineID-1,lineDataGroup.pts[0].nV-1); + if (lineDataGroup.pts[0].nV > 0 || (lineDataGroup.lineID==14)) + { + //清除标绘的航线 + ClearDrawedCopyLine(lineDataGroup.lineID-1,lineDataGroup.pts[0].nV); - //标绘航线 - DrawCopyFlyLine(lineDataGroup); - return; + //标绘航线 + DrawCopyFlyLine(lineDataGroup); + return; + } } int ch = lineDataGroup.linePts[lineDataGroup.pointNum-1].ch1; @@ -6280,9 +6295,9 @@ void CGISDlg::OnUpdateShowBackLine(CCmdUI *pCmdUI) // TODO: 在此添加命令更新用户界面处理程序代码 if (g_b981ADesktop || g_b981APad) { - if (g_b981AMulti && (m_line14FlyID>0)) //多机 + if (g_b981AMulti && (m_line14FlyID>=0)) //多机 { - pCmdUI->SetCheck(m_pHaveDrawCopyLineFlag[13][m_line14FlyID-1]); + pCmdUI->SetCheck(m_pHaveDrawCopyLineFlag[13][m_line14FlyID]); return; } pCmdUI->SetCheck(m_pHaveDrawLineFlag[13]); diff --git a/res/GISControlDlg.rc2 b/res/GISControlDlg.rc2 index 23dc028..63186b0 100644 --- a/res/GISControlDlg.rc2 +++ b/res/GISControlDlg.rc2 @@ -1,13 +1,13 @@ -// -// GISCONTROLDLG.RC2 - resources Microsoft Visual C++ does not edit directly -// - -#ifdef APSTUDIO_INVOKED - #error this file is not editable by Microsoft Visual C++ -#endif //APSTUDIO_INVOKED - - -///////////////////////////////////////////////////////////////////////////// -// Add manually edited resources here... - -///////////////////////////////////////////////////////////////////////////// +// +// GISCONTROLDLG.RC2 - resources Microsoft Visual C++ does not edit directly +// + +#ifdef APSTUDIO_INVOKED + #error this file is not editable by Microsoft Visual C++ +#endif //APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// Add manually edited resources here... + +/////////////////////////////////////////////////////////////////////////////