diff --git a/GISDlg.cpp b/GISDlg.cpp index 3a5915f..b18a768 100644 --- a/GISDlg.cpp +++ b/GISDlg.cpp @@ -2803,7 +2803,7 @@ void CGISDlg::MouseMoveMap1(short Button, short Shift, long x, long y) //��ע����ͷ�λ AddPointShapeLayer(m_longLabelPlotID,_ptLon, _ptLat, str, _T("��ɫ"), RGB(255,0,0)); } - + //�̷߳���ʱ if (g_bDemAnalysising && g_iDemPointNum>=1 ) { double lon = 0, lat = 0; @@ -2818,20 +2818,15 @@ void CGISDlg::MouseMoveMap1(short Button, short Shift, long x, long y) m_map.RemoveLayer(g_lDemAltLayerID[g_iDemPointNum-1]); //������ͼ�� - CreateEmptyShapfile(g_lDemAltLayerID[g_iDemPointNum-1], 1, RGB(0,0,255)); + CreateEmptyShapfile(g_lDemAltLayerID[g_iDemPointNum-1], 1, RGB(255,255,255)); //�����߶� AddOnePoint2Shapfile(g_lDemAltLayerID[g_iDemPointNum-1], 1, g_dDemPtLon[g_iDemPointNum-1], g_dDemPtLat[g_iDemPointNum-1]); AddOnePoint2Shapfile(g_lDemAltLayerID[g_iDemPointNum-1], 1, lon, lat); - //��ʾ�߶εľ���ͷ�λ -/* - if (g_lDemAltDisLayerID[g_iDemPointNum-1]!=-1) - { - m_map.ClearDrawing(g_lDemAltDisLayerID[g_iDemPointNum-1]); - } - g_lDemAltDisLayerID[g_iDemPointNum-1] = m_map.NewDrawing(1);*/ - //DrawLineLabel(g_lDemAltDisLayerID[g_iDemPointNum-1], g_dDemPtLon[g_iDemPointNum-1], g_dDemPtLat[g_iDemPointNum-1], lon, lat); + //��ʾ�߶εľ���ͷ�λ�����Ʊ�ע�� + DrawLineLabel(g_lDemAltLayerID[g_iDemPointNum-1], g_dDemPtLon[g_iDemPointNum-1], g_dDemPtLat[g_iDemPointNum-1], lon, lat); + } } @@ -2888,20 +2883,16 @@ void CGISDlg::AddTextToPointShapeLayer(long &drawLayerID, const double lon, cons m_map.Redraw(); } -//���ܣ���ʾ���������߶εľ���ͷ�λ +//���ܣ���ʾ���������߶εľ���ͷ�λ��ע��Label�� +// drawLayerID ���Ʊ�ע��ͼ��ID +// ptLon1, ptLat1 ��һ����ľ�γ�� +// ptLon2, ptLat2 �ڶ�����ľ�γ�� void CGISDlg::DrawLineLabel(long &drawLayerID, const double ptLon1, const double ptLat1, const double ptLon2, const double ptLat2) { - //û�м��ص�ͼ������ - if (!m_bHaveAddMap) - { - return; - } - double _dis, _angle; CalculateTwoPtsDistanceAzimuth(_dis, _angle, ptLon1, ptLat1, ptLon2, ptLat2, 3); CString str = _T(""); - if ( _dis < 1000) { str.Format(_T("%.1fm/%.1f��"), _dis, _angle); @@ -2918,45 +2909,22 @@ void CGISDlg::DrawLineLabel(long &drawLayerID, const double ptLon1, const double //�����ע������ TargetPos2LabelPos(textLon, textLat, (ptLon1 + ptLon2)/2, (ptLat1 + ptLat2)/2); - //�жϵ�ʸ��ͼ���Ƿ��Ѿ����ڣ�������ɾ�� - if (drawLayerID > 0) - { - //������ĵ�ʸ��ͼ�� - ClearPointShape(drawLayerID); - drawLayerID = -1; - } - if (_T("") != str) { - //������ͼ�� - CreateEmptyShapfile(drawLayerID, 0, RGB(255,0,0)); //��ɫ - //Label���� CLabels labesPtr; labesPtr = (m_map.GetShapefile(drawLayerID)).GetLabels(); - //labesPtr = m_map.GetDrawingLabels(drawLayerID); - labesPtr.SetFontColor(RGB(255,255,0)); + labesPtr.SetFontColor(RGB(255,127,0)); + labesPtr.SetFrameTransparency(0); labesPtr.SetAlignment(1); labesPtr.SetFontBold(TRUE); labesPtr.SetFontName(_T("Times New Roman")); - labesPtr.SetFontSize(10); + labesPtr.SetFontSize(15); + labesPtr.put_FontSize2(15); - //CLabelCategory labelCategory = labesPtr.AddCategory(_T("")); -/* - labelCategory.SetFontColor(RGB(255,255,0)); - labelCategory.SetAlignment(1); - labelCategory.SetFontBold(TRUE); - labelCategory.SetFontName(_T("Times New Roman")); - labelCategory.SetFontSize(10);*/ - -<<<<<<< HEAD - labesPtr.AddLabel((LPCTSTR)str, textLon, textLat, 0, 0); //4.9�汾�˴������⣬�ᵼ�³������ -======= - //labesPtr.AddLabel(str, textLon, textLat, 0, 0); ->>>>>>> master + labesPtr.AddLabel(str, textLon, textLat, 0, 0); } - //�ػ� m_map.Redraw(); } @@ -6608,13 +6576,17 @@ afx_msg LRESULT CGISDlg::OnZoomToLocation(WPARAM wParam, LPARAM lParam) return 0; } +// �Ҽ��˵�-�̷߳���-�̷߳��� void CGISDlg::OnMenuLightRegion() { /*if (m_dlgLightRegion.GetSafeHwnd()) { m_dlgLightRegion.ShowWindow(TRUE); }*/ - + if(!m_bHaveAddMap){ + AfxMessageBox( _T( "���ȼ��ص�ͼ��")); + return; + } g_bDemAnalysising = true; g_iDemPointNum = 0; }