diff --git a/.gitignore b/.gitignore
index 7c4baa5..cf3fd50 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
 Release/
 Debug/
+*.aps
diff --git a/ExportQBGISCtrlClass.cpp b/ExportQBGISCtrlClass.cpp
index e585fe3..038e294 100644
--- a/ExportQBGISCtrlClass.cpp
+++ b/ExportQBGISCtrlClass.cpp
@@ -235,7 +235,17 @@ extern "C" void WINAPI SetUAVFlyCoordinate(int uavid,const double lon, const dou
 	}
 }
 
-
+//���ܣ���λ��Ŀ���
+//���룺����lon��γ��lat
+extern "C" void WINAPI ZoomToLocation(double lon,double lat)
+{
+	AFX_MANAGE_STATE(AfxGetAppModuleState());
+	if (g_bCreateMap)
+	{
+		//���Ŀ���
+		g_mapShowDlg.ZoomToLocation(lon,lat);
+	}
+}
 
 //���ܣ�����Ŀ��㣬�ڵ�ͼ��ʾ��������
 //���룺Ŀ����ptID������lon��γ��lat
diff --git a/ExportQBGISCtrlClass.h b/ExportQBGISCtrlClass.h
index e88e811..11e4029 100644
--- a/ExportQBGISCtrlClass.h
+++ b/ExportQBGISCtrlClass.h
@@ -44,7 +44,9 @@ extern "C" _declspec(dllexport) void  DeleteGISDlg();
 //      �����yaw���ԡ�Ϊ��λ��
 extern "C" _declspec(dllexport) void  SetUAVFlyCoordinate(const double lon, const double lat, const double yaw);
 
-
+//���ܣ���λ��Ŀ���
+//���룺����lon��γ��lat
+extern "C" _declspec(dllexport) void  ZoomToLocation(double lon,double lat);
 
 //���ܣ�����Ŀ��㣬�ڵ�ͼ��ʾ��������
 //���룺Ŀ����ptID������lon��γ��lat
diff --git a/GISControlDlg.aps b/GISControlDlg.aps
deleted file mode 100644
index 498ea36..0000000
Binary files a/GISControlDlg.aps and /dev/null differ
diff --git a/GISControlDlg.def b/GISControlDlg.def
index b0f7f3c..f700041 100644
--- a/GISControlDlg.def
+++ b/GISControlDlg.def
@@ -34,4 +34,5 @@ EXPORTS
  ShowGISDlg                 @27
  GetMouseWheel				@28
  UpdateDataInfo				@29
- AddAirPt_ADS				@30
\ No newline at end of file
+ AddAirPt_ADS				@30
+ ZoomToLocation             @31
\ No newline at end of file
diff --git a/GISControlDlg.rc b/GISControlDlg.rc
index cf48b73..baf99ec 100644
--- a/GISControlDlg.rc
+++ b/GISControlDlg.rc
@@ -537,6 +537,7 @@ BEGIN
             MENUITEM "��ʾ���ź���",                      IDM_SHOW_LINE3
             MENUITEM "��ʾ�ĺź���",                      IDM_SHOW_LINE4
             MENUITEM "��ʾ��ź���",                      IDM_SHOW_LINE5
+            MENUITEM "��ʾ��Ͷ����",                      IDM_SHOW_LINE14
             MENUITEM SEPARATOR
             MENUITEM "װ��һ�ź���",                      ID_LOAD_MYLINE1
             MENUITEM "װ�����ź���",                      IDM_BINDLINE2
@@ -546,11 +547,11 @@ BEGIN
         END
         POPUP "����Χ����Ӧ������"
         BEGIN
-            MENUITEM "���պ�����ʾ",                      ID_SHOW_PD10
+            MENUITEM "���պ�����ʾ",                      ID_SHOW_BACKLINE
             MENUITEM "Ӧ��������ʾ",                      ID_SHOW_HS11
             MENUITEM "����Χ����ʾ",                      ID_SHOW_TC12
             MENUITEM SEPARATOR
-            MENUITEM "���պ���װ��",                      ID_32855
+            MENUITEM "���պ���װ��",                      ID_BIND_BACKLINE
             MENUITEM "Ӧ������װ��",                      ID_BIND_HS11
             MENUITEM "����Χ��װ��",                      ID_BIND_TC12
         END
@@ -560,7 +561,7 @@ BEGIN
             MENUITEM "�̷߳���",                        ID__MENU_LIGHTREGION
             MENUITEM "�߳�����",                        ID_MENU_PLOTDEMAREA
         END
-        MENUITEM "�Զ�����",                        IDM_BINDLINE10
+        MENUITEM "�Զ�����",                        IDM_AUTO_MOVE
         POPUP "������"
         BEGIN
             MENUITEM "Ӧ�����Ϣ��ʾ",                     ID_MENU_ADSB
diff --git a/GISControlDlg.vcxproj b/GISControlDlg.vcxproj
index e8e276f..837ea0e 100644
--- a/GISControlDlg.vcxproj
+++ b/GISControlDlg.vcxproj
@@ -377,6 +377,7 @@
     <ClInclude Include="DlgDemAlt.h" />
     <ClInclude Include="DlgLightRegion.h" />
     <ClInclude Include="DlgMarker.h" />
+    <ClInclude Include="ExportQBGISCtrlClass.h" />
     <ClInclude Include="extents.h" />
     <ClInclude Include="field.h" />
     <ClInclude Include="FlyLineDesign.h" />
diff --git a/GISControlDlg.vcxproj.filters b/GISControlDlg.vcxproj.filters
index 6cd21e9..9adca69 100644
--- a/GISControlDlg.vcxproj.filters
+++ b/GISControlDlg.vcxproj.filters
@@ -418,5 +418,8 @@
     <ClInclude Include="SaveLineEditSetting.h">
       <Filter>Header Files</Filter>
     </ClInclude>
+    <ClInclude Include="ExportQBGISCtrlClass.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/GISDlg.cpp b/GISDlg.cpp
index f2ca033..daba843 100644
--- a/GISDlg.cpp
+++ b/GISDlg.cpp
@@ -502,8 +502,8 @@ BEGIN_MESSAGE_MAP(CGISDlg, CBCGPDialog)
 	//	ON_WM_MOUSEHWHEEL()
 	ON_COMMAND(ID_NLINEDESIGN, &CGISDlg::OnNlinedesign)
 	ON_UPDATE_COMMAND_UI(ID_NLINEDESIGN, &CGISDlg::OnUpdateNlinedesign)
-	ON_COMMAND(ID_SHOW_PD10, &CGISDlg::OnShowPd10)
-	ON_UPDATE_COMMAND_UI(ID_SHOW_PD10, &CGISDlg::OnUpdateShowPd10)
+	ON_COMMAND(ID_SHOW_BACKLINE, &CGISDlg::OnShowBackLine)
+	ON_UPDATE_COMMAND_UI(ID_SHOW_BACKLINE, &CGISDlg::OnUpdateShowBackLine)
 	ON_COMMAND(ID_SHOW_HS11, &CGISDlg::OnShowHs11)
 	ON_UPDATE_COMMAND_UI(ID_SHOW_HS11, &CGISDlg::OnUpdateShowHs11)
 	ON_COMMAND(ID_BIND_HS11, &CGISDlg::OnBindHs11)
@@ -511,7 +511,7 @@ BEGIN_MESSAGE_MAP(CGISDlg, CBCGPDialog)
 	ON_COMMAND(ID_BIND_TC12, &CGISDlg::OnBindTc12)
 	ON_UPDATE_COMMAND_UI(ID_SHOW_TC12, &CGISDlg::OnUpdateShowTc12)
 	ON_WM_SIZE()
-	ON_COMMAND(ID_32855, &CGISDlg::On32855)
+	ON_COMMAND(ID_BIND_BACKLINE, &CGISDlg::OnBindBackLine)
 	ON_WM_MOVE()
 	ON_MESSAGE(WM_SEL_UAV, &CGISDlg::OnSelUav)
 	ON_COMMAND(ID_ADD_TARGET, &CGISDlg::OnAddTarget)
@@ -578,6 +578,9 @@ BEGIN_MESSAGE_MAP(CGISDlg, CBCGPDialog)
 	ON_UPDATE_COMMAND_UI(IDM_SHOW_LINE10, &CGISDlg::OnUpdateShowLine10)
 	ON_COMMAND(IDM_BINDLINE9, &CGISDlg::OnBindline9)
 	ON_COMMAND(IDM_BINDLINE10, &CGISDlg::OnBindline10)*/
+	//��Ͷ����
+	ON_COMMAND(IDM_SHOW_LINE14, &CGISDlg::OnShowLine14)
+	ON_UPDATE_COMMAND_UI(IDM_SHOW_LINE14, &CGISDlg::OnUpdateShowLine14)
 	END_MESSAGE_MAP()
 
 /////////////////////////////////////////////////////////////////////////////
@@ -905,6 +908,7 @@ void CGISDlg::OnMapMove()
 	m_bLDSetPoint = FALSE;
 
 	m_bSelectFeatureFlag = false;
+
 }
 
 
@@ -1375,36 +1379,86 @@ void CGISDlg::OnShowRMenu()
 		}
 		*/
 
-		//����14  ���պ���
-		if (m_pHaveDrawLineFlag[13])
-		{
-			menu.CheckMenuItem( ID_SHOW_PD10, MF_BYCOMMAND | MF_CHECKED );
-		}
-		else
+		if (g_b981ADesktop || g_b981APad)
 		{
-			menu.CheckMenuItem( ID_SHOW_PD10, MF_BYCOMMAND | MF_UNCHECKED );
-		}
+			//����14  ���պ���
+			if (m_pHaveDrawLineFlag[13])
+			{
+				menu.CheckMenuItem( ID_SHOW_BACKLINE, MF_BYCOMMAND | MF_CHECKED );
+			}
+			else
+			{
+				menu.CheckMenuItem( ID_SHOW_BACKLINE, MF_BYCOMMAND | MF_UNCHECKED );
+			}
 
-		//����11  Ӧ������
-		if (m_pHaveDrawLineFlag[10])
-		{
-			menu.CheckMenuItem( ID_SHOW_HS11, MF_BYCOMMAND | MF_CHECKED );
-		}
-		else
-		{
-			menu.CheckMenuItem( ID_SHOW_HS11, MF_BYCOMMAND | MF_UNCHECKED );
-		}
+			//����11  Ӧ������
+			if (m_pHaveDrawLineFlag[10])
+			{
+				menu.CheckMenuItem( ID_SHOW_HS11, MF_BYCOMMAND | MF_CHECKED );
+			}
+			else
+			{
+				menu.CheckMenuItem( ID_SHOW_HS11, MF_BYCOMMAND | MF_UNCHECKED );
+			}
 
-		//����12  ������
-		if (m_pHaveDrawLineFlag[11])
-		{
-			menu.CheckMenuItem( ID_SHOW_TC12, MF_BYCOMMAND | MF_CHECKED );
+			//����12  ������
+			if (m_pHaveDrawLineFlag[11])
+			{
+				menu.CheckMenuItem( ID_SHOW_TC12, MF_BYCOMMAND | MF_CHECKED );
+			}
+			else
+			{
+				menu.CheckMenuItem( ID_SHOW_TC12, MF_BYCOMMAND | MF_UNCHECKED );
+			}
 		}
-		else
+
+
+		if (g_b98CADesktop)
 		{
-			menu.CheckMenuItem( ID_SHOW_TC12, MF_BYCOMMAND | MF_UNCHECKED );
+			//����14  ���պ���
+			if (m_pHaveDrawLineFlag[10])
+			{
+				menu.CheckMenuItem( ID_SHOW_BACKLINE, MF_BYCOMMAND | MF_CHECKED );
+			}
+			else
+			{
+				menu.CheckMenuItem( ID_SHOW_BACKLINE, MF_BYCOMMAND | MF_UNCHECKED );
+			}
+			//����6 ��
+			if (m_pHaveDrawLineFlag[5])
+			{
+				//menu.CheckMenuItem( ID_SHOW_WEILAN, MF_BYCOMMAND | MF_CHECKED );
+				menu.CheckMenuItem( ID_SHOW_TC12, MF_BYCOMMAND | MF_UNCHECKED );
+			}
+			else
+			{
+				//menu.CheckMenuItem( ID_SHOW_WEILAN, MF_BYCOMMAND | MF_UNCHECKED );
+				menu.CheckMenuItem( ID_SHOW_TC12, MF_BYCOMMAND | MF_UNCHECKED );
+			}
+
+			//����7 Ӧ��
+			if (m_pHaveDrawLineFlag[6])
+			{
+				//menu.CheckMenuItem( ID_SHOW_LINE_YINGJI, MF_BYCOMMAND | MF_CHECKED );
+				menu.CheckMenuItem( ID_SHOW_HS11, MF_BYCOMMAND | MF_CHECKED );
+			}
+			else
+			{
+				//menu.CheckMenuItem( ID_SHOW_LINE_YINGJI, MF_BYCOMMAND | MF_UNCHECKED );
+				menu.CheckMenuItem( ID_SHOW_HS11, MF_BYCOMMAND | MF_CHECKED );
+			}
+			//����14,��Ͷ����
+			if (m_pHaveDrawLineFlag[13])
+			{
+				menu.CheckMenuItem( IDM_SHOW_LINE14, MF_BYCOMMAND | MF_CHECKED );
+			}
+			else
+			{
+				menu.CheckMenuItem( IDM_SHOW_LINE14, MF_BYCOMMAND | MF_UNCHECKED );
+			}
 		}
 
+
 		if (m_bAutoMove)
 		{
 			menu.CheckMenuItem( IDM_AUTO_MOVE, MF_BYCOMMAND | MF_CHECKED );
@@ -2102,6 +2156,9 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
 			return;
 		}
 
+
+		OnShowRMenu();
+		/*
 		//�����ڻط�ģʽʱ�����á���������������װ���Ӳ˵����Ȼ�ɫ
 		menu.LoadMenu(IDR_MENU2);	
 
@@ -2155,7 +2212,7 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
 			menu.CheckMenuItem( IDM_SHOW_LINE5, MF_BYCOMMAND | MF_UNCHECKED );
 		}
 
-/*
+		
 		//����6
 		if (m_pHaveDrawLineFlag[5])
 		{
@@ -2201,7 +2258,7 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
 		else
 		{
 			menu.CheckMenuItem( IDM_SHOW_LINE10, MF_BYCOMMAND | MF_UNCHECKED );
-		}*/
+		}
 
 
 		//����14  ���պ���
@@ -2281,7 +2338,7 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
 
 		//������ݲ˵�
 		menu.GetSubMenu( 0 )->TrackPopupMenu( TPM_LEFTALIGN | TPM_RIGHTBUTTON, pt.x, pt.y, this );
-
+		*/
 		//��������ת��γ������
 		m_map.PixelToProj(x, y, &m_guidePtInfo.guidePtLon, &m_guidePtInfo.guidePtLat);
 	}
@@ -2338,18 +2395,19 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
 	//�̷߳���ѡ��
 	if (g_bDemAnalysising && (Button == 1))
 	{
+		
 		g_iDemPointNum++;
 
 		//��������ת��γ������
 		double _ptLon = 0.0, _ptLat = 0.0;
 		m_map.PixelToProj(x, y, &_ptLon, &_ptLat);
-
+		
 		g_dDemPtLon[g_iDemPointNum-1] = _ptLon;
 		g_dDemPtLat[g_iDemPointNum-1] = _ptLat;
-
+		return;
 		CString str;
 		str.Format(_T("%d"), g_iDemPointNum);
-
+		
 		//��ʾ�����ű�ע
 		AddTextToPointShapeLayer(g_lDemPtNumLayerID[g_iDemPointNum-1], _ptLon, _ptLat, str, _T(""), RGB(255,0,0));
 
@@ -2366,6 +2424,7 @@ void CGISDlg::MouseDownMap1(short Button, short Shift, long x, long y)
 				m_DlgDemAlt.ShowWindow(TRUE);
 			}
 		}
+
 	}
 
 	//ѡ������
@@ -2744,8 +2803,8 @@ 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)
+
+	if (g_bDemAnalysising && g_iDemPointNum>=1 )
 	{
 		return;
 		double lon = 0, lat = 0;
@@ -2768,6 +2827,14 @@ void CGISDlg::MouseMoveMap1(short Button, short Shift, long x, long y)
 
 			//��ʾ�߶εľ���ͷ�λ�����Ʊ�ע��
 			DrawLineLabel(g_lDemAltLayerID[g_iDemPointNum-1], g_dDemPtLon[g_iDemPointNum-1], g_dDemPtLat[g_iDemPointNum-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);
 		}
 	}
 
@@ -2850,17 +2917,42 @@ void CGISDlg::DrawLineLabel(long &drawLayerID, const double ptLon1, const double
 
 	//�����ע������
 	TargetPos2LabelPos(textLon, textLat, (ptLon1 + ptLon2)/2, (ptLat1 + ptLat2)/2);
-	TRACE(str);
-	//Label����
-	CLabels labesPtr;
-	labesPtr = (m_map.GetShapefile(drawLayerID)).GetLabels();
-	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);
-	// labesPtr.AddLabel(str, textLon, textLat, 0, 0);
+
+	//�жϵ�ʸ��ͼ���Ƿ��Ѿ����ڣ�������ɾ��
+	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.SetAlignment(1);
+		labesPtr.SetFontBold(TRUE);
+		labesPtr.SetFontName(_T("Times New Roman"));
+		labesPtr.SetFontSize(10);
+
+		//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);*/
+
+		//labesPtr.AddLabel(str, textLon, textLat, 0, 0);
+
+	}
 
 	//�ػ�
 	m_map.Redraw();
@@ -4558,6 +4650,12 @@ void CGISDlg::OnShowLine10()
 	SetFlyLineShowStatus(10);
 }
 
+//���ܣ���ʾ��Ͷ
+void CGISDlg::OnShowLine14()
+{
+	SetFlyLineShowStatus(14);
+}
+
 //���ܣ�����Ѿ����ĺ���
 //���룺���߱��lineID����0��ʼ����
 void CGISDlg::ClearDrawedLine(const int lineID)
@@ -4665,6 +4763,11 @@ void CGISDlg::OnUpdateShowLine10(CCmdUI *pCmdUI)
 	pCmdUI->SetCheck(m_pHaveDrawLineFlag[9]);
 }
 
+void CGISDlg::OnUpdateShowLine14(CCmdUI *pCmdUI)
+{
+	pCmdUI->SetCheck(m_pHaveDrawLineFlag[13]);
+}
+
 //���ܣ���ʾ����
 //���룺�����ļ�����strLineFileName
 void CGISDlg::OnShowGivenLine(const CString strLineFileName)
@@ -5596,59 +5699,118 @@ BOOL CGISDlg::ReadLine(int iLine,PTLIST *pList)
 }
 
 //��ʾ���պ��ߣ�14��
-void CGISDlg::OnShowPd10()
+void CGISDlg::OnShowBackLine()
 {
 	// TODO: �ڴ�����������������
-	SetFlyLineShowStatus(14);
+	if (g_b981ADesktop || g_b981APad)
+	{
+		SetFlyLineShowStatus(14);
+	}
+	if (g_b98CADesktop)
+	{
+		SetFlyLineShowStatus(11);
+	}
 }
 
 
-void CGISDlg::OnUpdateShowPd10(CCmdUI *pCmdUI)
+void CGISDlg::OnUpdateShowBackLine(CCmdUI *pCmdUI)
 {
 	// TODO: �ڴ�������������û����洦���������
-	pCmdUI->SetCheck(m_pHaveDrawLineFlag[13]);  
+	if (g_b981ADesktop || g_b981APad)
+	{
+		pCmdUI->SetCheck(m_pHaveDrawLineFlag[13]); 
+	}
+	if (g_b98CADesktop)
+	{
+		pCmdUI->SetCheck(m_pHaveDrawLineFlag[10]); 
+	}
 }
 
 
 void CGISDlg::OnShowHs11()
 {
 	// TODO: �ڴ�����������������
-	SetFlyLineShowStatus(11);
+	if (g_b981ADesktop || g_b981APad)
+	{
+		SetFlyLineShowStatus(11);
+	}
+	if (g_b98CADesktop)
+	{
+		SetFlyLineShowStatus(7);
+	}
 }
 
 //Ӧ������ 11
 void CGISDlg::OnUpdateShowHs11(CCmdUI *pCmdUI)
 {
 	// TODO: �ڴ�������������û����洦���������
-	pCmdUI->SetCheck(m_pHaveDrawLineFlag[10]);
+	if (g_b981ADesktop || g_b981APad)
+	{
+		pCmdUI->SetCheck(m_pHaveDrawLineFlag[10]);
+	}
+
+	if (g_b98CADesktop)
+	{
+		pCmdUI->SetCheck(m_pHaveDrawLineFlag[6]);
+	}
+	
 }
 
 
 void CGISDlg::OnBindHs11()
 {
 	m_struMapOut.cmd=MapCmd_BindLine;
-	m_struMapOut.ID=11;
+	if (g_b981ADesktop || g_b981APad)
+	{
+		m_struMapOut.ID=11;
+	}
+	if (g_b98CADesktop)
+	{
+		m_struMapOut.ID=7;
+	}
 	::SendMessage(GetParent()->GetSafeHwnd(),MESSAGE_B8MAP,(int)(&m_struMapOut),0);
 }
 
 //������ 12
 void CGISDlg::OnShowTc12()
 {
-	SetFlyLineShowStatus(12);
+	if (g_b981ADesktop || g_b981APad)
+	{
+		SetFlyLineShowStatus(12);
+	}
+	if (g_b98CADesktop)
+	{
+		SetFlyLineShowStatus(6);
+	}
+	
 }
 
 
 void CGISDlg::OnBindTc12()
 {
 	m_struMapOut.cmd=MapCmd_BindLine;
-	m_struMapOut.ID=12;
+	if (g_b981ADesktop || g_b981APad)
+	{
+		m_struMapOut.ID=12;
+	}
+	if (g_b98CADesktop)
+	{
+		m_struMapOut.ID=6;
+	}
 	::SendMessage(GetParent()->GetSafeHwnd(),MESSAGE_B8MAP,(int)(&m_struMapOut),0);
 }
 
 
 void CGISDlg::OnUpdateShowTc12(CCmdUI *pCmdUI)
 {
+	if (g_b981ADesktop || g_b981APad)
+	{
 		pCmdUI->SetCheck(m_pHaveDrawLineFlag[11]);
+	}
+	if (g_b98CADesktop)
+	{
+		pCmdUI->SetCheck(m_pHaveDrawLineFlag[5]);
+	}
 }
 
 void CGISDlg::OnSize(UINT nType, int cx, int cy)
@@ -5667,10 +5829,17 @@ void CGISDlg::OnSize(UINT nType, int cx, int cy)
 	
 }
 
-void CGISDlg::On32855()
+void CGISDlg::OnBindBackLine()
 {
 	m_struMapOut.cmd=MapCmd_BindLine;
-	m_struMapOut.ID=14;
+	if (g_b981ADesktop || g_b981APad)
+	{
+		m_struMapOut.ID=14;
+	}
+	if (g_b98CADesktop)
+	{
+		m_struMapOut.ID=11;
+	}
 	::SendMessage(GetParent()->GetSafeHwnd(),MESSAGE_B8MAP,(int)(&m_struMapOut),0);
 }
 
diff --git a/GISDlg.h b/GISDlg.h
index 2003256..d7deb35 100644
--- a/GISDlg.h
+++ b/GISDlg.h
@@ -781,8 +781,8 @@ public:
 	//	afx_msg void OnMouseHWheel(UINT nFlags, short zDelta, CPoint pt);
 	afx_msg void OnNlinedesign();
 	afx_msg void OnUpdateNlinedesign(CCmdUI *pCmdUI);
-	afx_msg void OnShowPd10();
-	afx_msg void OnUpdateShowPd10(CCmdUI *pCmdUI);
+	afx_msg void OnShowBackLine();
+	afx_msg void OnUpdateShowBackLine(CCmdUI *pCmdUI);
 	afx_msg void OnShowHs11();
 	afx_msg void OnUpdateShowHs11(CCmdUI *pCmdUI);
 	afx_msg void OnBindHs11();
@@ -790,7 +790,7 @@ public:
 	afx_msg void OnBindTc12();
 	afx_msg void OnUpdateShowTc12(CCmdUI *pCmdUI);
 	afx_msg void OnSize(UINT nType, int cx, int cy);
-	afx_msg void On32855();
+	afx_msg void OnBindBackLine();
 
 	
 	afx_msg void OnMove(int x, int y);
@@ -906,6 +906,9 @@ public:
 	afx_msg void OnUpdateShowLine10(CCmdUI *pCmdUI);
 	afx_msg void OnBindline9();
 	afx_msg void OnBindline10();
+
+	afx_msg void OnShowLine14();
+	afx_msg void OnUpdateShowLine14(CCmdUI *pCmdUI);
 };
 
 //{{AFX_INSERT_LOCATION}}
diff --git a/Globe.cpp b/Globe.cpp
index a31ea08..e2975b0 100644
--- a/Globe.cpp
+++ b/Globe.cpp
@@ -233,5 +233,5 @@ bool    g_bMarkerPlot[g_iMarkerPtNum] = {false};
 ˵������ͬ�ɻ��ͺű��������ڿ����Ƿ����ø��Թ���
 -------------------------------------------------------------------------------------------------------------*/
 bool g_b981ADesktop = false;
-bool g_b981APad = true;
-bool g_b98CADesktop = false;
\ No newline at end of file
+bool g_b981APad = false;
+bool g_b98CADesktop = true;
\ No newline at end of file
diff --git a/resource.h b/resource.h
index 614d514..d8350f3 100644
--- a/resource.h
+++ b/resource.h
@@ -329,14 +329,18 @@
 #define ID__32904                       32904
 #define ID_EDIT                         32905
 #define ID_EDIT_LINEPOINT               32906
+#define ID_32907                        32907
+#define IDM_SHOW_LINE14                 32908
+#define ID_SHOW_BACKLINE                32909
+#define ID_BIND_BACKLINE                32910
 
 // Next default values for new objects
 // 
 #ifdef APSTUDIO_INVOKED
 #ifndef APSTUDIO_READONLY_SYMBOLS
 #define _APS_NEXT_RESOURCE_VALUE        1078
-#define _APS_NEXT_COMMAND_VALUE         32907
-#define _APS_NEXT_CONTROL_VALUE         1051
+#define _APS_NEXT_COMMAND_VALUE         32911
+#define _APS_NEXT_CONTROL_VALUE         1050
 #define _APS_NEXT_SYMED_VALUE           1000
 #endif
 #endif