|
|
@ -2579,6 +2579,12 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
case 2:
|
|
|
|
case 2:
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
if (m_CircleGuideLayer>=0)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
m_map.ClearDrawing(m_CircleGuideLayer);
|
|
|
|
|
|
|
|
m_CircleGuideLayer = -1;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
CCircleGuidence circleGuidenceDlg;
|
|
|
|
CCircleGuidence circleGuidenceDlg;
|
|
|
|
if (IDOK == circleGuidenceDlg.DoModal())
|
|
|
|
if (IDOK == circleGuidenceDlg.DoModal())
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -2589,12 +2595,19 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
|
|
|
|
|
|
|
|
|
|
|
|
double radius = circleGuidenceDlg.g_radius/abs(2*M_PI*6371000*cos(m_guidePtInfo.guidePtLat*M_PI/180)/360);
|
|
|
|
double radius = circleGuidenceDlg.g_radius/abs(2*M_PI*6371000*cos(m_guidePtInfo.guidePtLat*M_PI/180)/360);
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
|
|
|
double oneUnit[1] = {1};
|
|
|
|
|
|
|
|
CUtils utilsPtr;
|
|
|
|
|
|
|
|
bool b = utilsPtr.ConvertDistance(mapWindow::tkUnitsOfMeasure::umMeters,mapWindow::tkUnitsOfMeasure::umKilometers,oneUnit);*/
|
|
|
|
|
|
|
|
m_map.DrawWideCircleEx(m_CircleGuideLayer,m_guidePtInfo.guidePtLon,m_guidePtInfo.guidePtLat,radius,RGB(248,252,55),false,2);
|
|
|
|
m_map.DrawWideCircleEx(m_CircleGuideLayer,m_guidePtInfo.guidePtLon,m_guidePtInfo.guidePtLat,radius,RGB(248,252,55),false,2);
|
|
|
|
m_map.Redraw();
|
|
|
|
m_map.Redraw();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//×°¶©
|
|
|
|
|
|
|
|
m_struMapOut.cmd = MapCmd_Guide2;
|
|
|
|
|
|
|
|
m_struMapOut.lon = m_guidePtInfo.guidePtLon;
|
|
|
|
|
|
|
|
m_struMapOut.lat = m_guidePtInfo.guidePtLat;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m_struMapOut.height = circleGuidenceDlg.g_alt;
|
|
|
|
|
|
|
|
m_struMapOut.radius = circleGuidenceDlg.g_radius;
|
|
|
|
|
|
|
|
m_struMapOut.direction = circleGuidenceDlg.g_direction;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
::SendMessage(GetParent()->GetSafeHwnd(),MESSAGE_B8MAP, (int)(&m_struMapOut),0);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -2610,16 +2623,6 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
|
|
|
|
//OnRemoveGuidePtDraw();
|
|
|
|
//OnRemoveGuidePtDraw();
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
m_struMapOut.cmd = MapCmd_Guide2;
|
|
|
|
|
|
|
|
m_struMapOut.lon = m_guidePtInfo.guidePtLon;
|
|
|
|
|
|
|
|
m_struMapOut.lat = m_guidePtInfo.guidePtLat;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m_struMapOut.height = circleGuidenceDlg.g_alt;
|
|
|
|
|
|
|
|
m_struMapOut.radius = circleGuidenceDlg.g_radius;
|
|
|
|
|
|
|
|
m_struMapOut.direction = circleGuidenceDlg.g_direction;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
::SendMessage(GetParent()->GetSafeHwnd(),MESSAGE_B8MAP, (int)(&m_struMapOut),0);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
break;
|
|
|
|
default:
|
|
|
|
default:
|
|
|
@ -4739,6 +4742,8 @@ void CGISDlg::OnGuideMode2()
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m_map.SetCursorMode(mapWindow::tkCursorMode::cmNone);
|
|
|
|
|
|
|
|
|
|
|
|
m_guidePtInfo.guideMode = 2;
|
|
|
|
m_guidePtInfo.guideMode = 2;
|
|
|
|
|
|
|
|
|
|
|
|
m_guidePointMode = 2;
|
|
|
|
m_guidePointMode = 2;
|
|
|
|