|
|
@ -919,17 +919,29 @@ void CGISDlg::OnMapSelect()
|
|
|
|
//m_bLineDesign=FALSE;
|
|
|
|
//m_bLineDesign=FALSE;
|
|
|
|
m_bPtDel=FALSE;
|
|
|
|
m_bPtDel=FALSE;
|
|
|
|
m_bPtEdit=FALSE;
|
|
|
|
m_bPtEdit=FALSE;
|
|
|
|
m_map.SetCursorMode(3);
|
|
|
|
m_map.SetCursorMode(mapWindow::tkCursorMode::cmSelection);
|
|
|
|
|
|
|
|
|
|
|
|
m_bLDSetPoint = FALSE;
|
|
|
|
m_bLDSetPoint = FALSE;
|
|
|
|
|
|
|
|
|
|
|
|
if (!m_bEditLine) //非航线编辑模式下可选
|
|
|
|
if (!m_bEditLine || !m_bLineDesign) //非航线编辑模式下可选
|
|
|
|
{
|
|
|
|
{
|
|
|
|
m_bSelectFeatureFlag = true; // by Wu
|
|
|
|
if (!m_bSelectFeatureFlag)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
m_bSelectFeatureFlag = true; // by Wu
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
m_map.SetCursorMode(mapWindow::tkCursorMode::cmNone);
|
|
|
|
|
|
|
|
ClearHighLightLine();
|
|
|
|
|
|
|
|
m_bSelectFeatureFlag = false;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
m_map.SetCursorMode(5);
|
|
|
|
m_map.SetCursorMode(mapWindow::tkCursorMode::cmNone);
|
|
|
|
|
|
|
|
//ClearHighLightLine();
|
|
|
|
|
|
|
|
//m_bSelectFeatureFlag = false;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -942,7 +954,7 @@ void CGISDlg::OnMapFullScreen()
|
|
|
|
m_bPtDel=FALSE;
|
|
|
|
m_bPtDel=FALSE;
|
|
|
|
m_bPtEdit=FALSE;
|
|
|
|
m_bPtEdit=FALSE;
|
|
|
|
m_map.ZoomToMaxExtents();
|
|
|
|
m_map.ZoomToMaxExtents();
|
|
|
|
m_map.SetCursorMode(4);
|
|
|
|
m_map.SetCursorMode(mapWindow::tkCursorMode::cmNone);
|
|
|
|
|
|
|
|
|
|
|
|
m_bLDSetPoint = FALSE;
|
|
|
|
m_bLDSetPoint = FALSE;
|
|
|
|
|
|
|
|
|
|
|
@ -2064,6 +2076,7 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
|
|
|
|
m_designLinePointNum--;
|
|
|
|
m_designLinePointNum--;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
DrawLineDesign();
|
|
|
|
DrawLineDesign();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -2120,12 +2133,11 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
|
|
|
|
//鼠标右键点击时,弹出快捷菜单
|
|
|
|
//鼠标右键点击时,弹出快捷菜单
|
|
|
|
if (Button == 2 && !m_bLineDesign)
|
|
|
|
if (Button == 2 && !m_bLineDesign)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
//删除已经标绘的直线
|
|
|
|
//删除已经标绘的直线
|
|
|
|
m_map.ClearDrawing(m_tempLayerID);
|
|
|
|
m_map.ClearDrawing(m_tempLayerID);
|
|
|
|
m_map.Redraw();
|
|
|
|
m_map.Redraw();
|
|
|
|
|
|
|
|
|
|
|
|
//显示快捷菜单
|
|
|
|
//显示快捷菜单
|
|
|
|
|
|
|
|
|
|
|
|
CMenu menu;
|
|
|
|
CMenu menu;
|
|
|
|
|
|
|
|
|
|
|
|
POINT pt;
|
|
|
|
POINT pt;
|
|
|
@ -2341,12 +2353,18 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
//像素坐标转经纬度坐标
|
|
|
|
//像素坐标转经纬度坐标
|
|
|
|
m_map.PixelToProj(x, y, &m_guidePtInfo.guidePtLon, &m_guidePtInfo.guidePtLat);
|
|
|
|
m_map.PixelToProj(x, y, &m_guidePtInfo.guidePtLon, &m_guidePtInfo.guidePtLat);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (Button == 2 && m_bLineDesign) //航线编辑时,停止编辑
|
|
|
|
if (Button == 2 && m_bLineDesign) //航线编辑时,停止编辑
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
//删除已经标绘的直线(追踪线和距离标注)
|
|
|
|
|
|
|
|
m_map.ClearDrawing(m_tempLayerID);
|
|
|
|
|
|
|
|
m_map.Redraw();
|
|
|
|
|
|
|
|
|
|
|
|
CMenu tmenu;
|
|
|
|
CMenu tmenu;
|
|
|
|
tmenu.LoadMenu(IDR_FLOATINGMENU);
|
|
|
|
tmenu.LoadMenu(IDR_FLOATINGMENU);
|
|
|
|
CRect rc=CRect(0,0,x,y);
|
|
|
|
CRect rc=CRect(0,0,x,y);
|
|
|
@ -3215,6 +3233,10 @@ LRESULT CGISDlg::OnCloseShowDistanceDialog(WPARAM wParam, LPARAM lParam)
|
|
|
|
//功能:进行航线设计,弹出航线数据对话框
|
|
|
|
//功能:进行航线设计,弹出航线数据对话框
|
|
|
|
void CGISDlg::OnFlyLineDesign()
|
|
|
|
void CGISDlg::OnFlyLineDesign()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
m_tempLayerID = -1;
|
|
|
|
|
|
|
|
m_designLineLayerID = -1;
|
|
|
|
|
|
|
|
m_designLineLayerID2 = -1;
|
|
|
|
|
|
|
|
|
|
|
|
//return;
|
|
|
|
//return;
|
|
|
|
//已经加载地图
|
|
|
|
//已经加载地图
|
|
|
|
if (m_bHaveAddMap)
|
|
|
|
if (m_bHaveAddMap)
|
|
|
@ -3362,7 +3384,7 @@ void CGISDlg::ClearDrawingInLineDesign()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
m_map.RemoveLayer(m_designLineLayerID2);
|
|
|
|
m_map.RemoveLayer(m_designLineLayerID2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
m_map.ClearLabels(m_designLineLayerID);
|
|
|
|
//m_map.ClearLabels(m_designLineLayerID);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -5146,6 +5168,7 @@ void CGISDlg::OnAddpoint() //
|
|
|
|
m_bDesignFirstPoint = false;
|
|
|
|
m_bDesignFirstPoint = false;
|
|
|
|
|
|
|
|
|
|
|
|
//设计航线时,清除已显示的航线
|
|
|
|
//设计航线时,清除已显示的航线
|
|
|
|
|
|
|
|
/*
|
|
|
|
if(m_bLineDesign)
|
|
|
|
if(m_bLineDesign)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
for(int i=0;i<sizeof(m_pHaveDrawLineFlag) / sizeof(m_pHaveDrawLineFlag[0]);i++)
|
|
|
|
for(int i=0;i<sizeof(m_pHaveDrawLineFlag) / sizeof(m_pHaveDrawLineFlag[0]);i++)
|
|
|
@ -5157,6 +5180,7 @@ void CGISDlg::OnAddpoint() //
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|