实验二 地形图分幅编号
地形图分幅与编号方法
![地形图分幅与编号方法](https://img.taocdn.com/s3/m/b7341484d0d233d4b14e69a8.png)
我国基本比例尺地形图分幅与编号,以1:100万地形图为基础,延伸出1:50万、1:25万、1:10万; 再以1:10万为基础,延伸出1:5万、1:2.5万、1:1万三种比例尺。
1:100万从赤道起向两极每纬差4°为一行,至88°,南北半球各分为22横列,依次编号A、B、... V;由经度180°西向东每6°一列,全球60列,以1-60表示。
如北京所在1:100万图在第10行,第50列,其编号为J-50。
在1:100万图上按经差3°纬差2°分成四幅1:50万地形图,编为A、B、C、D,如J-50-A。
按经差1°30′纬差1°分成16幅1:25万地形图,编为[1]、...[16],如J-50-[1]。
按经差30′纬差20′分成144幅1:10万地形图,编为1、...144,如J-50-1。
这三种比例尺各自独立地与1:100万地图的图号联系。
1:10万图上的基础上每经差15′纬差10′分成四幅1:5万地形图,编为A、B、C、D,如J-50-1-A。
1:5万图上每经差7′30″纬差5′分成四幅1:2.5万,编为1、2、3、4,如J-50-1-A-1。
1:10万图上每经差3′45″纬差2′30″分成64幅1:1万地形图,编为(1)、...(64),如J-50-1-(1)。
1:1万图上每经差1′52″纬差1′15″分成四幅1:5000地形图,编为a、b、c、d,如J-50-1-(1)-a。
新标准在100万的基础上划分,比例尺有明确的代号。
×——××——×——××× ×××100万图幅行号字符码——100万图幅列号数字码——比例尺编号——行号数字码列号数字码J-50-G-013020比例尺:ABCDEFGH,分别代表100万、50万、25万、10万、5万、2.5万、1万、5000。
地图分幅编号实验报告
![地图分幅编号实验报告](https://img.taocdn.com/s3/m/d021235f3c1ec5da50e27031.png)
地图学实验报告课程:地图学班级:******学号: ******姓名:******实验目的及要求:1.利用计算机编程实现地图图幅编号的计算。
2.深化对地图图幅编号计算的原理,地图图幅编号的计算的理解,并掌握其计算步骤。
3.提高自己的计算机语言编程能力。
4.实验完成后提交报告,实验总结,编写代码,要独立编程,程序稳定可行。
工具:Visual C++ 6.0实验感悟:此次实验,首先认真学习了书中对地图分幅编号的计算。
首先在数据输入的编辑框中添加了判断语句,以确保编辑框中输入数据的可用性。
在旧的比例尺分幅计算中,有时W计算完成后需要转换成英文大写或小写字母,此处运用了ASCII码进行了转换。
最后根据课件内容对程序进行了调试、验证。
通过这次试验,熟悉了新旧两种地图分幅编号的计算。
程序运行结果:程序代码://地图分幅的计算void CMyDlg::OnCal(){// TODO: Add your control notification handler code hereUpdateData();//字符转换int LDeg = atoi(m_LDeg.Right(m_LDeg.GetLength()-1));double LMin = strtod(m_LSec,NULL);int BDeg = atoi(m_BDeg);double BMin = strtod(m_BSec,NULL);int index;index = ((CComboBox*)GetDlgItem(IDC_COMBO1))->GetCurSel()+1;int i,j,c,d,W,V,n;//W所求比例尺图幅代号n代表划分为该比例尺后的列数c列号d行号CString C,D;double l,b;//l,b分别表示经差和纬差i = (int)(BDeg/4.0)+1;CString s = m_LDeg.Left(1);CString s1;//判断东经西经if(s == "E" || s == "e"){j = (int) (floor(LDeg/6.0))+31;}else if(s == "W" || s == "w"){j = 31-(int)(floor(LDeg/6.0));}else{MessageBox("输入经度错误", "Error", MB_ICONERROR );}//1:100万基本比例尺图幅计算s = "";s.Format(_T("-%d"),j);Old = (int)(i+64);Old+=s;New = (int)(i+64);s.Format(_T(" %d"),j);New+=s;//1:10万基本比例尺计算V=133;l=30.0*60;b=20.0*60;n=12;W = V-(int)((((int)(BDeg*3600+BMin*60))%(4*3600))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(6*3600))/((int)l));s1.Format(_T("-%d"),W);Old1=Old+s1;switch(index){case 1://1:100万m_Old=Old;m_New=New;break;case 2://1:50万V=3;l=3*3600.0;b=2*3600.0;n=2;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(4*3600))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(6*3600))/((int)l));s = (int)(W+64);Old += "-";m_Old=Old+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)/(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New = New + " B"+C+D;break;case 3://1:25万V=13;l=1.5*3600;b=1.0*3600;n=4;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(4*3600))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(6*3600))/((int)l));s.Format(_T("-[%d]"),W);m_Old=Old+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" C"+C+D;break;case 4://1:10万m_Old=Old1;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" C"+C+D;break;case 5://1:5万V=3;l=15.0*60;b=10.0*60;n=2;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(20*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(30*60))/((int)l));s=(int)(W+64);m_Old=Old1+"-"+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" D"+C+D;break;case 6://1:2.5万//1:5万编号计算V=3;l=15.0*60;b=10.0*60;n=2;W = V-(int)((((int)(BDeg*3600+BMin*60))%(20*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(30*60))/((int)l));s=(int)(W+64);m_Old=Old1+"-"+s;V=3;l=7.5*60;b=5*60;n=2;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(10*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(15*60))/((int)l));s.Format(_T("-%d"),W);m_Old+=s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" F"+C+D;break;case 7://1:1万V=57;l=3.75*60;b=2.5*60;n=8;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(20*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(30*60))/((int)l));s.Format(_T("-(%d)"),W);m_Old = Old1+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" G"+C+D;break;case 8://1:5000//1:1万基本比例尺计算V=57;l=3.75*60;b=2.5*60;n=8;W = V-(int)((((int)(BDeg*3600+BMin*60))%(20*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(30*60))/((int)l));s.Format(_T("-(%d)"),W);m_Old = Old1+s;V=3;l=1.875*60;b=1.25*60;n=2;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%150)/((int)b))*n+(int)((((int)(LDeg*3600*60+LMin*60*60))%(225*60))/((int)(l*60)));s=(int)(W+96);m_Old+="-"+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" H"+C+D;break;}if(m_BDeg == "" || m_BSec == "" || m_LSec == "" || m_LDeg == ""){if (m_BDeg == "" && m_BSec == "" && m_LSec == "" &&(m_LDeg == "E" || m_LDeg == "W")){MessageBox("请输入经度、纬度","错误",MB_ICONERROR);m_Old = "";m_New = "";}else{MessageBox("系统将空白处自动赋值为0","提示",MB_ICONEXCLAMATION);}}UpdateData(false);}//对话框的初始设置BOOL CMyDlg::OnInitDialog(){CDialog::OnInitDialog();// Add "About..." menu item to system menu.// IDM_ABOUTBOX must be in the system command range.ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX < 0xF000);CMenu* pSysMenu = GetSystemMenu(FALSE);if (pSysMenu != NULL){CString strAboutMenu;strAboutMenu.LoadString(IDS_ABOUTBOX);if (!strAboutMenu.IsEmpty()){pSysMenu->AppendMenu(MF_SEPARATOR);pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);}}// Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialogSetIcon(m_hIcon, TRUE); // Set big iconSetIcon(m_hIcon, FALSE); // Set small icon// TODO: Add extra initialization hereGetDlgItem(IDC_EDIT5)->EnableWindow(false);GetDlgItem(IDC_EDIT6)->EnableWindow(false);//设置图标m_hIcons[0] =LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON1));m_hIcons[1] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON2));m_hIcons[2] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON3));m_hIcons[3] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON4));m_hIcons[4] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON5));m_hIcons[5] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON6));m_hIcons[6] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON7));SetClassLong(m_hWnd,GCL_HICON,(long)m_hIcons[0]);SetTimer(1,1000,NULL);//列表框((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:100万");((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:50万");((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:25万");((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:10万");((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:5万");((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:2.5万");((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:1万");((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:5000");((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0);//设置字体CFont * f;f = new CFont;f->CreateFont(18, // nHeight0, // nWidth0, // nEscapement0, // nOrientationFW_BOLD, // nWeightFALSE, // bItalicFALSE, // bUnderline0, // cStrikeOutANSI_CHARSET, // nCharSetOUT_DEFAULT_PRECIS, // nOutPrecisionCLIP_DEFAULT_PRECIS, // nClipPrecisionDEFAULT_QUALITY, // nQualityDEFAULT_PITCH | FF_SWISS, // nPitchAndFamily_T("宋体")); // lpszFacGetDlgItem(IDC_STATIC1)->SetFont(f);return TRUE; // return TRUE unless you set the focus to a control }void CMyDlg::OnQuit(){// TODO: Add your control notification handler code herethis->DestroyWindow();}void CMyDlg::OnTimer(UINT nIDEvent){// TODO: Add your message handler code here and/or call defaultstatic int index=1;SetClassLong(m_hWnd,GCL_HICON,(long)m_hIcons[index]);index = ++index%7;CDialog::OnTimer(nIDEvent);}void CMyDlg::OnHelp(){// TODO: Add your control notification handler code hereCAboutDlg dlgAbout;dlgAbout.DoModal();// GotoDlgCtrl((CEdit*)GetDlgItem(IDC_LDeg));}void CMyDlg::OnClear(){// TODO: Add your control notification handler code herem_BDeg = "";m_BSec = "";m_LSec = "";m_LDeg = "E";m_Old = "";m_New = "";((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0);GotoDlgCtrl((CEdit*)GetDlgItem(IDC_LDeg));}void CMyDlg::OnTimer(UINT nIDEvent){// TODO: Add your message handler code here and/or call default static int index=1;SetClassLong(m_hWnd,GCL_HICON,(long)m_hIcons[index]);index = ++index%7;CDialog::OnTimer(nIDEvent);}void CMyDlg::OnHelp(){// TODO: Add your control notification handler code hereCAboutDlg dlgAbout;dlgAbout.DoModal();// GotoDlgCtrl((CEdit*)GetDlgItem(IDC_LDeg));}void CMyDlg::OnClear(){// TODO: Add your control notification handler code herem_BDeg = "";m_BSec = "";m_LSec = "";m_LDeg = "E";m_Old = "";m_New = "";((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0);GotoDlgCtrl((CEdit*)GetDlgItem(IDC_LDeg));}。
关于地形图的分幅及编号
![关于地形图的分幅及编号](https://img.taocdn.com/s3/m/740120375627a5e9856a561252d380eb62942304.png)
关于地形图的分幅及编号四川省煤田地质局—杨长银一、旧的分幅及编号(一)、国际统一分幅及编号1、1:100万地形图的分幅及编号1:100万地形图的分幅是从地球赤道起,向两极每隔纬差4º为一行,依次以拉丁字母A、B、C、D……V表示;由经度180º起从西向东每隔经差6º为一列,依次以数字1、2、3……60表示。
每幅1:100万地形图的编号以它的“横行号—纵列号”表示。
如北京市所在1:100万地形图的编号为J—50。
2、1:10万地形图的分幅及编号1:10万地形图的分幅是以纬差20′,经差30′为一幅。
一幅1:100万地形图划分为144幅1:10万的地形图,即12列12行,分别以数字1、2、3、4、……143、144表示。
如成都市所在1:10万地形图的编号为H—48—77。
3、1:5万地形图的分幅及编号1:5万地形图的分幅是以纬差10′,经差15′为一幅。
一幅1:10万地形图划分为4幅1:5万的地形图, 即2列2行,分别以俄文А、Б、В、Г(现在用A、B、C、D)表示。
如成都市所在1:5万地形图的编号为H—48—77—А。
4、1:1万地形图的分幅及编号1:1万地形图的分幅是以纬差2′30″,经差3′45″为一幅。
一幅1:10万地形图划分为64幅1:1万的地形图,即8列8行,分别以带括号的数字⑴、⑵、⑶、……(64)表示。
如成都市所在1:1万地形图的编号为H—48—77—(9)。
5、1:5000地形图的分幅及编号1:5000地形图的分幅是以纬差1′15″,经差1′52.5″为一幅。
一幅1:10万地形图划分为256幅1:5000的地形图,即16列16行,分别以带括号的数字⑴、⑵、⑶、……(256)表示。
如成都市所在1:5000地形图的编号为H—48—77—(17)。
(二)、正方形分幅及编号1、1:5000地形图的分幅及编号1:5000地形图的分幅是以X坐标每差2km,Y坐标每差2km为一幅。
地形图的分幅与编号
![地形图的分幅与编号](https://img.taocdn.com/s3/m/55c2c2c55fbfc77da269b12b.png)
c = 4° / ΔB − [(B / 4°) / ΔB] d = [(L / 6°) / ΔL] + 1
ΔB: 所求比例尺地形图分幅的纬差 ΔL:所求比例尺地形图分幅的经差
c:所求比例尺地形图在1:100万定型图图号后的行号 d:所求比例尺地形图在1:100万定型图图号后的列号
仍以经度为114°33′45″,纬度为39°22′30″的某 点为例,计算其所在1∶1万地形图的编号。 ΔB = 2′30″, ΔL = 3′45″
例: 某点经度为114°33′45″,纬度为39°22′30″, 计算其所在图幅的编号。 a=[39°22′30″/4]+1=10(字符码为J) b=[114°33′45″/6]+31=50 该点所在1∶100万地形图图幅的图号为J50。
已知图幅内某点的经、纬度或图幅西南图廓点的经、纬 度,也可按下式计算所求比例尺地形图在1∶100万地形图 图号后的行、列号:
赤道: 667*445
一、梯形分幅与编号
1、 1:100万地形图的分幅与编号:经差6°,纬差4° 从赤道起,每纬差4°为一行,至南、北纬88°各分为22 行,依次用大写拉丁字母(字符码)A、B、C、……V表示 其相应行号。 从180°经线起,自西向东每经差6°为一列,共分为60 列,依次用阿拉伯数字(数字码)1,2,3,……60表示其 相应列号。 由于图幅面积随纬度增高而迅速减小,规定:
经 差 纬 差 行 数 列 数
6° 4° 1 1 1
3° 2° 2 2 4
1° 4 4 16
20′ 12 12 144
10′ 24 24 576
5′ 48 48 2304
2′30″ 96 96 9216
1′15″ 192 192 36864
地图分幅编号实验报告
![地图分幅编号实验报告](https://img.taocdn.com/s3/m/618cef1e854769eae009581b6bd97f192279bf23.png)
地图分幅编号实验报告地图学实验报告课程:地图学班级:******学号: ******姓名:******实验⽬的及要求:1.利⽤计算机编程实现地图图幅编号的计算。
2.深化对地图图幅编号计算的原理,地图图幅编号的计算的理解,并掌握其计算步骤。
3.提⾼⾃⼰的计算机语⾔编程能⼒。
4.实验完成后提交报告,实验总结,编写代码,要独⽴编程,程序稳定可⾏。
⼯具:V isual C++ 6.0实验感悟:此次实验,⾸先认真学习了书中对地图分幅编号的计算。
⾸先在数据输⼊的编辑框中添加了判断语句,以确保编辑框中输⼊数据的可⽤性。
在旧的⽐例尺分幅计算中,有时W计算完成后需要转换成英⽂⼤写或⼩写字母,此处运⽤了ASCII码进⾏了转换。
最后根据课件内容对程序进⾏了调试、验证。
通过这次试验,熟悉了新旧两种地图分幅编号的计算。
程序运⾏结果:程序代码://地图分幅的计算void CMyDlg::OnCal(){// TODO: Add your control notification handler code hereUpdateData();//字符转换int LDeg = atoi(m_LDeg.Right(m_LDeg.GetLength()-1));double LMin = strtod(m_LSec,NULL);int BDeg = atoi(m_BDeg);double BMin = strtod(m_BSec,NULL);int index;index = ((CComboBox*)GetDlgItem(IDC_COMBO1))->GetCurSel()+1;int i,j,c,d,W,V,n;//W所求⽐例尺图幅代号n代表划分为该⽐例尺后的列数c列号d⾏号CString C,D;double l,b;//l,b分别表⽰经差和纬差i = (int)(BDeg/4.0)+1;CString s = m_LDeg.Left(1);CString s1;//判断东经西经if(s == "E" || s == "e"){j = (int) (floor(LDeg/6.0))+31;}else if(s == "W" || s == "w"){j = 31-(int)(floor(LDeg/6.0));}else{MessageBox("输⼊经度错误", "Error", MB_ICONERROR );}//1:100万基本⽐例尺图幅计算s = "";s.Format(_T("-%d"),j);Old = (int)(i+64);Old+=s;New = (int)(i+64);s.Format(_T(" %d"),j);New+=s;//1:10万基本⽐例尺计算V=133;l=30.0*60;b=20.0*60;n=12;W = V-(int)((((int)(BDeg*3600+BMin*60))%(4*3600))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(6*3600))/((int)l)); s1.Format(_T("-%d"),W);Old1=Old+s1;switch(index){case 1://1:100万m_Old=Old;m_New=New;break;case 2://1:50万V=3;l=3*3600.0;b=2*3600.0;n=2;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(4*3600))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(6*3600))/((int)l)); s = (int)(W+64);Old += "-";m_Old=Old+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)/(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New = New + " B"+C+D;break;case 3://1:25万V=13;l=1.5*3600;b=1.0*3600;n=4;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(4*3600))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(6*3600))/((int)l)); s.Format(_T("-[%d]"),W);m_Old=Old+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" C"+C+D;break;case 4://1:10万m_Old=Old1;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" C"+C+D;break;case 5://1:5万V=3;l=15.0*60;b=10.0*60;n=2;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(20*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(30*60))/((int)l)); s=(int)(W+64);m_Old=Old1+"-"+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" D"+C+D;break;case 6://1:2.5万//1:5万编号计算l=15.0*60;b=10.0*60;n=2;W = V-(int)((((int)(BDeg*3600+BMin*60))%(20*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(30*60))/((int)l)); s=(int)(W+64);m_Old=Old1+"-"+s;V=3;l=7.5*60;b=5*60;n=2;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(10*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(15*60))/((int)l)); s.Format(_T("-%d"),W);m_Old+=s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" F"+C+D;break;case 7://1:1万V=57;l=3.75*60;b=2.5*60;n=8;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%(20*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(30*60))/((int)l)); s.Format(_T("-(%d)"),W);m_Old = Old1+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b);d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" G"+C+D;case 8://1:5000//1:1万基本⽐例尺计算V=57;l=3.75*60;b=2.5*60;n=8;W = V-(int)((((int)(BDeg*3600+BMin*60))%(20*60))/((int)b))*n +(int)((((int)(LDeg*3600+LMin*60))%(30*60))/((int)l)); s.Format(_T("-(%d)"),W);m_Old = Old1+s;V=3;l=1.875*60;b=1.25*60;n=2;//旧的分幅编号W = V-(int)((((int)(BDeg*3600+BMin*60))%150)/((int)b))*n+(int)((((int)(LDeg*3600*60+LMin*60*60))%(225*60))/((int)(l*60))); s=(int)(W+96);m_Old+="-"+s;//新的分幅编号c=(int)(4*3600/b)-(int)(((int)(BDeg*3600+BMin*60)%(4*3600))/b); d=(int)(((int)(LDeg*3600+LMin*60)%(6*3600))/l)+1;C.Format(_T("%.3d"),c);D.Format(_T("%.3d"),d);m_New=New+" H"+C+D;break;}if(m_BDeg == "" || m_BSec == "" || m_LSec == "" || m_LDeg == "") {if (m_BDeg == "" && m_BSec == "" && m_LSec == "" &&(m_LDeg == "E" || m_LDeg == "W")){MessageBox("请输⼊经度、纬度","错误",MB_ICONERROR);m_Old = "";m_New = "";}else{MessageBox("系统将空⽩处⾃动赋值为0","提⽰",MB_ICONEXCLAMATION);}}UpdateData(false);}//对话框的初始设置BOOL CMyDlg::OnInitDialog(){CDialog::OnInitDialog();// Add "About..." menu item to system menu.// IDM_ABOUTBOX must be in the system command range. ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX < 0xF000);CMenu* pSysMenu = GetSystemMenu(FALSE);if (pSysMenu != NULL){CString strAboutMenu;strAboutMenu.LoadString(IDS_ABOUTBOX);if (!strAboutMenu.IsEmpty()){pSysMenu->AppendMenu(MF_SEPARATOR);pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);}}// Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big iconSetIcon(m_hIcon, FALSE); // Set small icon// TODO: Add extra initialization hereGetDlgItem(IDC_EDIT5)->EnableWindow(false);GetDlgItem(IDC_EDIT6)->EnableWindow(false);//设置图标m_hIcons[0] =LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON1));m_hIcons[1] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON2));m_hIcons[2] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON3));m_hIcons[3] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON4));m_hIcons[4] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON5));m_hIcons[5] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON6));m_hIcons[6] =LoadIcon(AfxGetApp()->m_hInstance,MAKEINTRESOURCE(IDI_ICON7));SetClassLong(m_hWnd,GCL_HICON,(long)m_hIcons[0]);SetTimer(1,1000,NULL);//列表框((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:100万"); ((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:50万"); ((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:25万"); ((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:10万"); ((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:5万"); ((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:2.5万"); ((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:1万"); ((CComboBox*)GetDlgItem(IDC_COMBO1))->AddString("1:5000"); ((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0);//设置字体CFont * f;f = new CFont;f->CreateFont(18, // nHeight0, // nWidth0, // nEscapement0, // nOrientationFW_BOLD, // nWeightFALSE, // bItalicFALSE, // bUnderline0, // cStrikeOutANSI_CHARSET, // nCharSetOUT_DEFAULT_PRECIS, // nOutPrecisionCLIP_DEFAULT_PRECIS, // nClipPrecisionDEFAULT_QUALITY, // nQualityDEFAULT_PITCH | FF_SWISS, // nPitchAndFamily_T("宋体")); // lpszFacGetDlgItem(IDC_STA TIC1)->SetFont(f);return TRUE; // return TRUE unless you set the focus to a control } void CMyDlg::OnQuit(){// TODO: Add your control notification handler code herethis->DestroyWindow();}void CMyDlg::OnTimer(UINT nIDEvent){// TODO: Add your message handler code here and/or call defaultstatic int index=1;SetClassLong(m_hWnd,GCL_HICON,(long)m_hIcons[index]);index = ++index%7;CDialog::OnTimer(nIDEvent);}void CMyDlg::OnHelp(){// TODO: Add your control notification handler code hereCAboutDlg dlgAbout;dlgAbout.DoModal();// GotoDlgCtrl((CEdit*)GetDlgItem(IDC_LDeg));}void CMyDlg::OnClear(){// TODO: Add your control notification handler code herem_BDeg = "";m_BSec = "";m_LSec = "";m_LDeg = "E";m_Old = "";m_New = "";((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0);GotoDlgCtrl((CEdit*)GetDlgItem(IDC_LDeg));}void CMyDlg::OnTimer(UINT nIDEvent){// TODO: Add your message handler code here and/or call default static int index=1; SetClassLong(m_hWnd,GCL_HICON,(long)m_hIcons[index]);index = ++index%7;CDialog::OnTimer(nIDEvent);}void CMyDlg::OnHelp(){// TODO: Add your control notification handler code here CAboutDlg dlgAbout;dlgAbout.DoModal();// GotoDlgCtrl((CEdit*)GetDlgItem(IDC_LDeg));}void CMyDlg::OnClear(){// TODO: Add your control notification handler code herem_BDeg = "";m_BSec = "";m_LSec = "";m_LDeg = "E";m_Old = "";m_New = "";((CComboBox*)GetDlgItem(IDC_COMBO1))->SetCurSel(0); GotoDlgCtrl((CEdit*)GetDlgItem(IDC_LDeg));}。
简述地形图分幅的目的和编号的方法
![简述地形图分幅的目的和编号的方法](https://img.taocdn.com/s3/m/412021d705a1b0717fd5360cba1aa81144318fa7.png)
简述地形图分幅的目的和编号的方法
地形图分幅是按照地理空间范围划分的地形图,也叫地形图拼版。
它既可以把一张范围较大的地形图分割为若干张地形图,也可以把若干张地形图拼成一幅地形图。
地形图分幅的主要目的是为了满足地理信息的可视化要求,使地理信息更直观、更容易理解。
它可以为军事地图、经济地图、气候地图等地理信息的研究和分析提供重要的帮助,对于科学研究和决策制定都具有重要意义。
地形图分幅编号方法一般有三种:一是以经纬度为编号依据,把分幅以经度和纬度划分为若干地形图,每一幅地形图都有统一的编号;二是以地形图编号系统为依据,把分幅以地形图编号系统划分为若干地形图,每一幅地形图都有统一的编号;三是结合经纬度和地形图编号系统两种编号方法,把分幅以经度和纬度划分为若干地形图,并用地形图编号系统为每一幅地形图编号。
无论采用哪种编号方法,都必须注意:地形图分幅的编号应当符合统一的规则,以便实现地形图的有效拼版;同时,编号应当简洁明了,便于识别和记忆;最后,编号应当与地形图的范围、位置和比例尺有关联,以便在解读时能够进行有效的索引和查找。
总之,地形图分幅是地理信息可视化的重要手段,编号是地形图分幅的重要组成部分,它既要满足统一的规则,又要简洁明了,与地形图的范围、位置和比例尺有关联,以便实现有效的索引和查找。
地形图基本知识应用地形图的分幅与编号
![地形图基本知识应用地形图的分幅与编号](https://img.taocdn.com/s3/m/763afd4abe1e650e52ea9946.png)
A
b
c d e
f
g
hB
i
j
k
l
16 15
C
14 13 12 11 10
数字测图原理与方法
(1)在图纸上绘出表示平距的横轴 PQ ;过A点作垂线,作 为纵轴,表示高程。 注意:平距的比例尺与地形图的比例尺一致; 高程比例尺往往比平距比例尺放大10~20倍。
S D A U Q I
50
n
49 48
•
m 1:500
F
数字测图原理与方法
4、确定两点间的坡度 (1)图解法 ◆用坡度尺直接量取
S D A U Q I
(2)解析法
h h i d× M D
i HB H A DAB
d M h D
——图上量得的长度(mm) ——地形图比例尺分母 ——两端点间的高差(m) ——直线实地水平距离(m)
S D A U Q I
6 5 4 3 85 5′
B
6′
2
1 2′ 3′
4′
A
1′
80
数字测图原理与方法
(1)确定线路上最小等高线平距
h 1m d 12.5 m iM 0.04 2000
S D A U Q I
(2)先以A点为圆心,以d为半径,用圆规划弧,交81m等高 线与1点,再以1点为圆心同样以d为半径划弧,交82m等高线 于2点,依次到B点。连接相邻点,便得同坡度路线A—1— 2—…—B。 在选线过程中,如等高线平距大于d,即所作圆弧不能与相 邻等高线相交,说明该处的坡度小于指定的坡度,则以最短 距离定线。 (3)另外,在图上还可以沿另一方向定出第二条线路 A―1′―2′―…―B,可作为方案的比较。
地图学实验报告
![地图学实验报告](https://img.taocdn.com/s3/m/cc44e9f8ba0d4a7302763abf.png)
实验二地图分幅编号处理与分析
一、实验目的
1. 掌握地图分幅编号的方法,具有处理编号数据的能力;
2. 根据地理坐标掌握地图的编号方法或根据地图的编号进行地理坐标定位,培养学生
认识地图和分析地图的能力。
二、实验内容
通过已知地图内容进行数据分析处理,从地图分幅编号的方法入手进行计算,撰写分析报告。
1. 已知某点的经度为东经118°47′32″,纬度为北纬32°2′41″,计算其所在1:
50万、1:25万、1:5万图幅的编号(分别按新旧地图编号方法)。
2. 己知某图幅图号为J49B001002,求其图幅西南图廓点的经、纬度。
3. 1:10万地形图编号中的行列代码为004001,求其所包含的1:2.5万地形图编号的
行列代码。
4. 1:2.5万地形图编号中的行列代码为016004 和013003,求包含该图的1:10万地
形图图号中的行列代码。
5. 已知制图区域的经纬度范围如下,编制该地区的地图时,需收集1:10万地形图作
为编图资料,请算出所需1:10万图号及并将相邻图幅编号填入下表:
三、实验要求
1. 要求撰写详细的计算步骤,可以用图解,也可以直接用公式解析,也可以两者相结
合。
2. 作业内容5,大家可以使用“地图分幅编号计算器”,但要将具体的原理在报告中书
写清楚。
地形图分幅与编号1.
![地形图分幅与编号1.](https://img.taocdn.com/s3/m/9818d94d561252d381eb6e1d.png)
30″
100万
10万 5万 10万
144 1,2, 144 4 A,B,C,D 4 1,2,3,4
64 (1), (64)
1 ′
1 ′
5000
52.7″ 15″
1万
4
a,b,c,d
8.2 地形图的分幅与编号
计算实例
已在某地位于东经120 09 15,北纬30 18 10 则先计算其中1:100万地形图中的编号 横列(由纬度):INT(纬度/4)+1= 8: H 纵行(由经度):INT(经度/6)+1+30=51
H-51
18
8.2 地形图的分幅与编号
二、 矩形分幅(包括正方形分幅)
1:500,1:1000,1:2000,1:5000 以纵横坐标轴的整千米数或整百米数作为分界线 (一)正方形分幅 1:5000图幅:40cm×40cm;对应实地2km×2km 1:500,1:1000,1:2000: 50cm×50cm 1:5000一分为四:1:2000 1:2000一分为四:1:1000 1:1000一分为四:1:500
2
8.2 地形图的分幅与编号
北京某地:北纬39 54 30, 东经116 28 25 则纬度序号:10(J),经度序号:50 图幅编号:J-50
3
8.2 地形图的分幅与编号
J-50
5
8.2 地形图的分幅与编号
1:50万、1:20万、1:10万比例尺地形图
1:50万:1:100万地形图一分为四,用A、B、 C、D表示,即经差3°,纬差2°
19
8.2 地形图的分幅与编号
二、 矩形分幅(包括正方形分幅)
1:5000图幅编号:西南角坐标(以km为单位) 1:2000:1:5000编号 + {I,II,III,IV} 1:1000:1:2000编号 + {I,II,III,IV} 1:500: 1:1000编号 + {I,II,III,IV}
杨再华地形图分幅编号
![杨再华地形图分幅编号](https://img.taocdn.com/s3/m/fa09c8da0740be1e650e9ae4.png)
实习报告班级:09测绘(2)班学号:05309216 姓名:杨再华一、实习名称:地形图分幅编号。
二、实习目的要求:1.通过具体图幅编号的计算,掌握基本比例尺地形图的分幅和编号(91年前和91年后)的方法。
2.已知某地的地理坐标为27°56′(N)112°46′(E)。
用图解法和解析法分别推算出该点所在的1:50万、1:5万、1:1万地形图的分幅和编号(91年前)。
3.已知某地的地理坐标为北纬39°9′,东经116°3′ 。
用解析法推算出该点所在的1:100万、1:50万、1:10万、1:5万、1:1万地形图的分幅和编号(91年后)。
4.已知某地所在的1:25万地形图的编号为J50C002003,求其西南图廓点的经纬度。
5.已知某地地形图的编号为J50G061003,求其东北图廓点的经纬度。
实习原理、方法:1:100万6 °4°144 1:10万30' 20' 1-144 J-50-51:10万30' 20' 4 1:5万15' 10' A、B、C、D J-50-5-B 1:10万30' 20' 64 1:1万3'45" 2'30" (1)…(64)J-50-5-(24) 1:5万15' 10' 4 1:2.5万 7'30" 5' 1、2、3、4 J-50-5-B-4经差、纬差没有变化,分幅均有1:100万地形图划分而成:1.每幅1:100万地形图划分为2行2列,共4幅1:50万地形图。
2.每幅1:100万地形图划分为4行4列,共16幅1:25万地形图。
3.每幅1:100万地形图划分为12行12列,共144幅1:10万地形图。
4.每幅1:100万地形图划分为24行24列,共576幅1:5万地形图。
5.每幅1:100万地形图划分为48行48列,共2304幅1:2.5万地形图。
地形图的分幅及编号PPT学习教案
![地形图的分幅及编号PPT学习教案](https://img.taocdn.com/s3/m/ce66eb89a98271fe900ef94b.png)
1:5万、 1:2.5第万1页、/共43页1:1万、1:5000 等
2021年5月11日星期二
2
1:100万比例尺地图的分幅和编号
•
1:100万地形图分幅与编号采用国际l :100万 地图会 议(1913年, 巴黎)的 规定进 行。标 准分幅 的经差 是6°, 纬差是 4°。
设球面上两点间的距离为S ,其在 高斯投影面上的距离为σ,σ总是比S大, 其改化数值为
S
S
y2 2R2
S
(15 - 6)
y为离开轴子午线的近似距离(可取a、
第8页/共43页
2021年5月11日星期二
9
(二)新的国家基本比例尺地形图的 分幅与编号
1:100万比例尺的编号仍采用国际统一标 准,其余比例尺的编号为1:100万比例尺 地形图编号加比例尺代号加行号加列号, 一幅图的编号共有十位数组成,即
1:100万比例尺编号 比例尺代码 图幅行号 图幅列号
图幅的行号、列号都是从上到下自左往右, 按自然数顺序编号(分别为3位数,不足 时前面加0)。
A-1 A-2 A-3 A-4 A-5 A-6 B-1 B-2 B-3 B-4
C-2 C-3 C-4 C-5 C-6
第18页/共43页
2021年5月11日星期二
19
以最小比例尺图为基础分幅编号
基础图幅编 号为西南角坐 标,其后加罗 马数字Ⅰ、Ⅱ 、Ⅲ…
第19页/共43页
2021年5月11日星期二
20
例:某小测区1:1000地 形图的任意分幅和 编号方法。
◆按原分幅为20幅 ◆按现分幅为12幅
2021年5月11日星期二
2.任意分 幅
实验:地形图分幅编号
![实验:地形图分幅编号](https://img.taocdn.com/s3/m/b6631750d0d233d4b04e69d5.png)
实验五地形图分副编号一、实验目的了解地形图分副编号的原理,掌握常用的地形图分副编号的方法二、实验要求采用新的地形图分幅编号的方法确定某地(38。
35,N,114。
20,E)所在的1:1万、1:5万、1:10万、1:25万、1:50万地形图的编号三、实验工具直尺、三角板、铅笔四、实验步骤1、确定该点所在的1:100万地形图图幅的编号列数=纬度/4 (有余数加1)行数=30+经度/6 (东正余数加1,西负减整数)2、确定其他比例尺地图的编号其余地形图的编号都以1:100万地形图作为基础,采用行列编号法进行编号。
将1:100万中所包括各种比例尺地图的经差和纬差划分为若干行和列,横行从上到下,纵列从左到右,用三位数字表示,如001、002、003等,行在前、列在后,附加在1:100万地形图之后。
中间是各种不同比例尺的代码。
编号组成:五种元素、10位代码五、实验结果六、分幅方法简介地形图的分幅方法有两种:一种是经纬网梯形分幅法或国际分幅法;另一种是坐标格网正方形或矩形分幅法。
前者用于国家基本比例尺地形图,后者用于工程建设大比例尺地形图。
一、经纬网国际分幅法:(一)新的分幅与编号标准92年12月,我国颁布了《国家基本比例尺地形图分幅和编号》新标准,1993年3月开始实施。
新的分幅与编号方法如下。
1、1∶100万图幅的分幅与编号1∶100万地形图分幅是采用国际标准分幅的经差6°、纬差4°为一幅图。
纬度在0°~60°之间,经差6°,纬差4°纬度在60°~76°之间,经差12°,纬差4°纬度在76°~88°之间,经差24°,纬差4°从赤道起向北或向南至纬度88°止,按纬差每4°划作22个横行,依次用A、B、……、V表示;从经度180°起向东按经差每6°划作一纵列,全球共划分为60纵列,依次用1、2、……、60表示。
地形图的分幅和编号
![地形图的分幅和编号](https://img.taocdn.com/s3/m/c83141732bf90242a8956bec0975f46527d3a7cf.png)
廓点旳经纬度计算如下:
X8 X9 X10 1 4 X5 X 6 X 7
计❖ 算如实北京例某地所在1:10000地形图旳图号为H51G018025求它 相应旳地理坐标坐标?
解: 该点所在1:100万图幅旳图号为:H51G018025
66°4272°4378°44
45 84°
F E D C B A 46
90°
47 96°
48 102°
49 108°
50 114°
52 12501°126°
132°
138°
东半球北纬1:100万百分比尺地形图旳国际分幅和编号
124
3
1.我国领土在1:100万地图国际分幅旳编号
北京
★
M L
K J I
(二)矩形分幅和编号
——用纵横坐标网线划分,主要有三种分幅编号法(公里 数编号法,基本图幅编号法,行列编号法)。合用于大 百分比尺地形图。
图幅大小,主要有:
(1)50cm×50cm或 50cm×40cm (正方形 或者矩形分幅) 用于1:500、1:1000、 1:2023 (2)40cm×40cm(正 方形或者矩形分幅) 用于1:5000
另外,根据点所在坐标范围,选定百分比尺,也很轻易 求得该点所在图幅号。
给出某点旳坐标(7650,-4378),求该点所在图幅号?
n1 [int(abs(7650)) / 400] 2 1 39 n2 [int(abs(4378)) / 500] 2 1 17
该点所在图幅号为:H039-017
号,共10个数码构成。
已知某地形图旳图号为:X1X2X3X4X5X6X7X8X9X10
地形图分幅编号
![地形图分幅编号](https://img.taocdn.com/s3/m/1dab4c23af45b307e87197c0.png)
地图分幅编号为了便于地形图的测绘、使用和保管,需要将大范围内的地形图进行分幅,并将分幅的地形图进行系统的编号。
地形图的分幅方法有两大类:一是按经纬线分幅的梯形分幅法,另一种是按坐标格网划分的矩形分幅法。
常见的地图编号方法有自然系数编号法、行列式编号法、行列-自然系数编号法。
一、梯形分幅与编号方法地图的图廓由经纬格网线构成。
我国的基本比例尺地形图是以经纬线分幅制作的,它们都是以1:100万比例尺地形图为基础,按规定的经差和纬差划分图幅,行列数和图幅数成简单的倍数关系,如图6-1所示。
图中虚线表示现已不用。
1:100万比例尺地形图的分幅编号是由国际统一规定的,作法是将整个地球表面用子午线分成60个6︒纵列,由经度180︒起,自西向东用阿拉伯数字1~60编列号数。
同时,由赤道起分别向南向北直至纬度88︒止,每隔4︒的纬圈分成许多横行,这些横行用大写的拉丁字母A、B、C、……V标明,以两极为中心,以纬度88︒为界的圈,则用Z标明。
也就是说,一张1:100万比例尺地形图是有为差4︒的纬圈和经差6︒的子午圈所形成的梯形。
其编号采用行列式编号法,由“横行-纵列”格式组成,图6-2为我国领域的1:100万比例尺地形图图幅编号。
例如甲地位于北纬39︒54'30",东经122︒28'25",则该地所在1:100万图幅编号为J-51。
图6-1 我国基本比例尺地形图的分幅编号系统图图6-2 我国领域的1:100万比例尺地形图图幅编号图基本比例尺地形图之间的划分存在层次关系。
例如1:10万比例尺地形图是将1:100万地形图划分成12行12列,共144幅,代号分别用1,2,3,,144表示。
以上梯形分幅与编号的方法是我国70~80年代的分幅与编号系统。
为便于图幅编号的计算机处理,1991年我国制定订了《国家基本比例尺地形图分幅与编号方法》的国家标准。
其主要特点是:分幅仍然以1:100万地图为基础,经纬差不变,但划分全部由1:100万地形图逐次加密划分而成;编号仍然以1:100万地图编号为基础,由下接相应比例尺的行、列代码所组成,并增加了比例尺代码(表6.2),所有地形图的图号均由五个元素10位编码组成,如图6-3所示。
地图分幅编号 - 实验教学示范中心
![地图分幅编号 - 实验教学示范中心](https://img.taocdn.com/s3/m/891823f7941ea76e58fa04f5.png)
地图分幅编号为了便于地形图的测绘、使用和保管,需要将大范围内的地形图进行分幅,并将分幅的地形图进行系统的编号。
地形图的分幅方法有两大类:一是按经纬线分幅的梯形分幅法,另一种是按坐标格网划分的矩形分幅法。
常见的地图编号方法有自然系数编号法、行列式编号法、行列-自然系数编号法。
一、梯形分幅与编号方法地图的图廓由经纬格网线构成。
我国的基本比例尺地形图是以经纬线分幅制作的,它们都是以1:100万比例尺地形图为基础,按规定的经差和纬差划分图幅,行列数和图幅数成简单的倍数关系,如图6-1所示。
图中虚线表示现已不用。
1:100万比例尺地形图的分幅编号是由国际统一规定的,作法是将整个地球表面用子午线分成60个6︒纵列,由经度180︒起,自西向东用阿拉伯数字1~60编列号数。
同时,由赤道起分别向南向北直至纬度88︒止,每隔4︒的纬圈分成许多横行,这些横行用大写的拉丁字母A、B、C、……V标明,以两极为中心,以纬度88︒为界的圈,则用Z标明。
也就是说,一张1:100万比例尺地形图是有为差4︒的纬圈和经差6︒的子午圈所形成的梯形。
其编号采用行列式编号法,由“横行-纵列”格式组成,图6-2为我国领域的1:100万比例尺地形图图幅编号。
例如甲地位于北纬39︒54'30",东经122︒28'25",则该地所在1:100万图幅编号为J-51。
图6-1 我国基本比例尺地形图的分幅编号系统图图6-2 我国领域的1:100万比例尺地形图图幅编号图基本比例尺地形图之间的划分存在层次关系。
例如1:10万比例尺地形图是将1:100万地形图划分成12行12列,共144幅,代号分别用1,2,3,,144表示。
以上梯形分幅与编号的方法是我国70~80年代的分幅与编号系统。
为便于图幅编号的计算机处理,1991年我国制定订了《国家基本比例尺地形图分幅与编号方法》的国家标准。
其主要特点是:分幅仍然以1:100万地图为基础,经纬差不变,但划分全部由1:100万地形图逐次加密划分而成;编号仍然以1:100万地图编号为基础,由下接相应比例尺的行、列代码所组成,并增加了比例尺代码(表6.2),所有地形图的图号均由五个元素10位编码组成,如图6-3所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
合肥工业大学《地图制图基础》实验报告2
专业班级测绘工程10-1班
姓名胡旭东
学号20104168
实验小组个人
实验日期2010.10.05
实验地点学校宿舍
指导教师张志慧
一、实验目的
1、提高运用计算机编程的能力。
2、加深对地图分幅编号的理解并掌握课本上基本知识及其相关的计算过程;
3、完成地图制图基础课程试验二的相关教学任务。
二、实验内容及要求
1、计算机编程,图解法和解析法地形图分幅和编号的计算;
2、①通过具体图幅编号的计算,掌握基本比例尺地形图的分幅和编号的方法;
②已知某地的地理坐标为φ=27°56′(N), =112°46′(E)。
用图解法和解析法分别推算出该点所在的1:50万、1:5万、1:1万地形图的分幅和编号。
并编写程序实现。
三、实验过程、总结及源代码
1、对MapDong程序的简单介绍
运行后的主界面
主界面还是比较漂亮,插入了一个查看日期及星期的日历,有三个功能,已知经纬度计算新旧图幅的编号,大比例尺图幅换为小比例尺图幅以及小比例尺图幅化为大比例尺图幅(后两个因时间关系计算过程暂未完成,如需要后期再补上);
进入已知经纬度计算新旧图幅编号的界面:
在这里,我给对话框添加了一个漂亮的背景图片,这和对话框的布局刚好能够符合得很好,显得格外的漂亮,整体按钮的布局安排也比较合理,大小适中,符合人的视觉习惯,在对话框上有四个功能,输入
经纬度,点击,正常情况下能够计算出新旧编号;
功能能够清空当前的输入;按钮能够返回到系统的主界面;按钮能够直接退出系统而不用返回到主界面再退出,也可以返回到主界面再关闭对话框。
如果没有选择东经或者西经,则会出现如上图所示的提示;
如果没有选择南纬或者北纬,则会同样会出现如图所示的提示;
如果没有选择比例尺,也会出现提醒用户选择的提示;
当用户选择好了比例尺后,点击就可以计算出新旧编号了。
当用户输入的经度或者纬度的“度”大于180时就会提示用户输入错误;如图所示:
同样当经度或者纬度的“分”大于60时也会出现错误的提示,如图所示:
当用户点击按钮后,就可以清空刚才输入的经纬度,
当用户不输入经纬度时系统默认输入为0,此时同样可以进行计算,结果如下:
2、当φ=27°56′(N), =112°46′(E)时,计算得到的新旧编号为1:50万新编号G49B001002,旧编号G-49-B,1:5万新编号G49E001020,旧编号G-49-10-B,1:1万新编号G49G002077,旧编号G-49-10-(13)。
3、编写MapDong程序的心得
这个计算新旧编号的程序还是比较的简单,一般的同学都不会花很长的时间就能编完计算过程,但要想编得好,界面做得稍微漂亮些就要多花些时间,原计划编写三个,由于时间关系,我只编写了一个“已知经纬度计算新旧图幅的编号”的计算过程,这是本次编程欠佳的地方,还请老师多多谅解!整体来说,做的还是不错的,特别是给用户的提示比较的多,这样更符合人机交流,避免不必要的错误!当然漂亮的界面也只是一个外表而已,永远比不上正确的计算过程。
只是这样做避免了没有做界面的呆板和清一色的灰颜色,能够给用户更好地视觉感受。
整个编程过程中,遇到最大的问题就是计算新编号时需要同时输出新编号,因此就要将新编号每一部分组合起来,组合过程时比较的麻烦,在我自己查了一些函数资料加之以前学习过的资料之后,顺利的解决了这个问题。
在此,我运用到了一些格式化的函数和字符串连接函数,当然可能还有更简单明了的方法来解决这个问题,而我却没能想到,因此还请老师多多指教。