fix: 修复自主着陆点0号飞机连线无效问题

pull/45/head
cbwu 9 months ago
parent 81a4f36aff
commit 43b2ed009b

@ -97,7 +97,7 @@
<Culture>0x0804</Culture> <Culture>0x0804</Culture>
</ResourceCompile> </ResourceCompile>
<Link> <Link>
<OutputFile>..\Release/GISControlDlgUAV.dll</OutputFile> <OutputFile>..\Release/GISControlDlg.dll</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner> <SuppressStartupBanner>true</SuppressStartupBanner>
<ModuleDefinitionFile>.\GISControlDlg.def</ModuleDefinitionFile> <ModuleDefinitionFile>.\GISControlDlg.def</ModuleDefinitionFile>
<ProgramDatabaseFile>.\Release/GISControlDlg.pdb</ProgramDatabaseFile> <ProgramDatabaseFile>.\Release/GISControlDlg.pdb</ProgramDatabaseFile>
@ -149,7 +149,7 @@
<Culture>0x0804</Culture> <Culture>0x0804</Culture>
</ResourceCompile> </ResourceCompile>
<Link> <Link>
<OutputFile>..\Debug/GISControlDlgUAV.dll</OutputFile> <OutputFile>..\Debug/GISControlDlg.dll</OutputFile>
<SuppressStartupBanner>true</SuppressStartupBanner> <SuppressStartupBanner>true</SuppressStartupBanner>
<ModuleDefinitionFile>.\GISControlDlg.def</ModuleDefinitionFile> <ModuleDefinitionFile>.\GISControlDlg.def</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation> <GenerateDebugInformation>true</GenerateDebugInformation>

@ -1393,9 +1393,9 @@ void CGISDlg::OnShowRMenu()
{ {
pSubMenu->CheckMenuItem( ID_SHOW_BACKLINE, MF_BYCOMMAND | MF_UNCHECKED ); 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 ); 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 lineID = lineData.lineID-1;
//子航线索引号 //子航线索引号(飞机ID)
int sublineID = lineData.pts[0].nV-1; int sublineID = lineData.pts[0].nV;
//没有目标标绘SHP图层创建该图层 //没有目标标绘SHP图层创建该图层
if (m_subLineLayerID[lineID][sublineID] ==-1) if (m_subLineLayerID[lineID][sublineID] ==-1)
@ -5101,6 +5101,18 @@ void CGISDlg::SetFlyLineShowStatus(const int lineID)
bMulti = true; 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]) if (m_pHaveDrawLineFlag[lineIndex])
@ -5246,20 +5258,23 @@ void CGISDlg::OnShowGivenLine(const CString strLineFileName)
} }
m_lineFullPathName[lineDataGroup.lineID] = strLineFileName; m_lineFullPathName[lineDataGroup.lineID] = strLineFileName;
if (g_b981AMulti && lineDataGroup.pts[0].nV>0) //多机ID号 if (g_b981AMulti) //多机ID号
{ {
if (lineDataGroup.lineID==14) if (lineDataGroup.lineID==14)
{ {
m_line14FlyID = lineDataGroup.pts[0].nV; m_line14FlyID = lineDataGroup.pts[0].nV;
SetBindLine14Coordinate(lineDataGroup.pts[0].nV,lineDataGroup.pts[0].dX,lineDataGroup.pts[0].dY); SetBindLine14Coordinate(lineDataGroup.pts[0].nV,lineDataGroup.pts[0].dX,lineDataGroup.pts[0].dY);
} }
if (lineDataGroup.pts[0].nV > 0 || (lineDataGroup.lineID==14))
{
//清除标绘的航线 //清除标绘的航线
ClearDrawedCopyLine(lineDataGroup.lineID-1,lineDataGroup.pts[0].nV-1); ClearDrawedCopyLine(lineDataGroup.lineID-1,lineDataGroup.pts[0].nV);
//标绘航线 //标绘航线
DrawCopyFlyLine(lineDataGroup); DrawCopyFlyLine(lineDataGroup);
return; return;
} }
}
int ch = lineDataGroup.linePts[lineDataGroup.pointNum-1].ch1; int ch = lineDataGroup.linePts[lineDataGroup.pointNum-1].ch1;
/***************************测绘区域处理************************************/ /***************************测绘区域处理************************************/
@ -6280,9 +6295,9 @@ void CGISDlg::OnUpdateShowBackLine(CCmdUI *pCmdUI)
// TODO: 在此添加命令更新用户界面处理程序代码 // TODO: 在此添加命令更新用户界面处理程序代码
if (g_b981ADesktop || g_b981APad) 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; return;
} }
pCmdUI->SetCheck(m_pHaveDrawLineFlag[13]); pCmdUI->SetCheck(m_pHaveDrawLineFlag[13]);

Loading…
Cancel
Save