地图分幅编号实验报告
地图分幅和编号

2.已知图号计算图幅四个角点的经、纬度 坐标
西南图廓点的经纬度坐标:
b3160 d1
a140 40Байду номын сангаасc
a:1:100万图幅所在纬度带的字符的数字码 b:1:100万图幅所在经度带的数字码 c:该比例尺地形图在1:100万地形图编号后的行号 d:该比例尺地形图在1:100万地形图编号后的列号
地图分幅和编号
162 58
168
59
174
60
1
1 80
2
1 74
3
1 68
4
1 62
150 56 15 6 57
5
1 58
6 144
1 50
55
144
7
54
138
8
53
13 2
132 9
52
126
51
120
50
11 4
49
10 6
V U T S R Q P O N M L K
126 10
120 11 114 12 108 13 102 14 96 15
§3.2 地图的分幅与编号
主要内容:
1. 地图分幅的概念和方法 2. 地图编号 3. 我国基本地形图的分幅和编号 4. 地形图编号的计算方法
地图分幅和编号
一、地图的分幅
1.为什么要分幅? 区域表达,编图、印刷、保管和使用
的方便。 2.地图分幅的方法
拼接
矩形分幅
不拼接
经纬线分幅 地图分幅和编号
矩形分幅
三、我国基本地形图的分幅和编号
(一)20世纪70-80年代我国基本比例尺地形图 的分幅和编号
1:100万地图是我国基本比例尺地形图的分幅和编号 的基础。
项目二 普通地图的分幅与编号

任务一
普通地图的分幅与编号
国家基本比例尺地形图 的分幅与编号任务二
任务二
工程用大比例尺地形图 的分幅与编号
任务三
地理图的分幅与编号
黄河水利职业技术学院 测绘工程系
任务一 国家基本比例尺地图的分幅和编号 能力目标
1.能进行国家基本比例尺地形图的分幅与编号 1.能进行国家基本比例尺地形图的分幅与编号
黄河水利职业技术学院 测绘工程系
二、国家基本比例尺地图的分幅和编号
地形图的梯形分幅由国际统一规定的经线为图 地形图的梯形分幅由国际统一规定的经线为图 梯形分幅由国际统一规定的 的东西边界,统一规定的纬线为南北边界 纬线为南北边界。 的东西边界,统一规定的纬线为南北边界。由于各 条经线(子午线)向南、北极收敛, 条经线(子午线)向南、北极收敛,所以整个图形略 呈梯形。其划分方法和编号, 呈梯形。其划分方法和编号,随比例尺的不同而不 同。
黄河水利职业技术学院 测绘工程系
(二)新的国家基本比例尺地形图分幅与编号 (2)1:50万 (2)1:50万~1:5千地形图的编号
1:50万~1:5千比例尺地形图的图号均由五个元素10位 50万 千比例尺地形图的图号均由五个元素10位 五个元素10 构成。编号均以1 100万地形图编号为基础 采用行列编 万地形图编号为基础, 码构成。编号均以1:100万地形图编号为基础,采用行列编 方法。 号方法。
K51 B 002002 K51 C 004004 K51 D 012010 K51 E 020020 K51 F 047039 K51 G 094079 K51 H 187157
黄河水利职业技术学院 测绘工程系
(二)新的国家基本比例尺地形图分幅与编号 3、新编号原则 、 (1)1:100万地形图的编号 (1)1:100万地形图的编号 1991年前编号方法基本相同 只是行和列的 年前编号方法基本相同, 与1991年前编号方法基本相同,只是行和列的 称呼相反。 100万地形图的图号是由该图所在的 称呼相反。1:100万地形图的图号是由该图所在的 行号(字符码)与列号(数字码)组合而成, 行号(字符码)与列号(数字码)组合而成,如北京所 在的1 100万地形图图号的标准写法为J50。 万地形图图号的标准写法为J50 在的1:100万地形图图号的标准写法为J50。
地形图的分幅与编号

实验一地形图的分幅与编号
实验目的:掌握地图分幅编号的原理与计算方法。
实验内容:
1 写出8种国家基本比例尺。
2 每个同学查找出全部包含自己家乡所在不同级别行政单元(省、地区、市(县))的经纬度范围。
3 计算出相应基本比例尺下的地图编号(分两类体系编号:旧编号与新编号)。
4 绘制家乡所在不同级别行政单元的缩略图。
实验要求:
1 熟练掌握不同比例尺要求下,地图的分幅编号。
2 提交实验报告
实验过程:
1 资料收集分析
(1)地图分幅标号理论的复习巩固,写出各比例尺下的经度与纬度差值,并列表。
(2)查找自己家乡各行政级别的经纬度范围,并列表表示。
(3)收集家乡的各种地图。
2 计算不同比例尺下家乡的地图分幅编号。
3 绘制缩略图。
4 提交实验报告。
(内容包括:地图分幅编号的理论知识总结、新旧编号、概略图)。
实验报告

实验报告地图分幅编号㈠地图分幅编号的基本理论知识:截止1990年地形图的分幅编号系统–图解法:(1)1:100万地形图分幅编号横行:从赤道起向南北至纬度正负88°,用A、B、C……V表示,极地用Z表示。
纵列:用1、2、3、……60表示;从东经180°起,自东向西至0°,以1~30表示;从0°至东经180°,自东向西,以31~60表示。
图号:“行号(h)-列号(l)”表示行:h=[φ/△φ]+1 λ、φ为某点的经纬度列:L=[λ/△λ]+1 △λ、△φ为百万分之一的经纬差(6°、4°)东半球:H不变L=[λE/△λ]+31西半球:H不变L=30-[λW/△λ](2)1:50万、1:25万、1:20万、1:10万地形图分幅编号1:50万——纬差2°,经差3°,2行×2列。
A、B、C、D。
1:50万,J-50-A;1:25万——纬差1°,经差1°30′,4行×4列,[1]……[16]。
1:25万,J-50-[2];1:20万——纬差40′,经差1°,6行×6列,(1)、……(36)。
J-50-(3);1:10万——纬差20′,经差30′,12行×12列,1,2……144。
1:10万,J-50-44;(3)1:5万,1:1万地形图的分幅编号1:5万——纬差10′,经差15′,2行×2列。
A、B、C、D,J-50-5-B ;1:1万——纬差2′30″,经差3′45″,8行×8列。
(1)……(64),J-50-5-(4);(4)1:2.5万、1:5000地形图分幅编号1:2.5万在1:5万基础上,按纬差5′,经差7′30″,2×2,J-50-5-B-21:5000以1:1万为基础,纬差1′15″,经差1′52.5″,2×2列J-50-B-(64)-a。
地图学实验报告

实验二地图分幅编号处理与分析
一、实验目的
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,大家可以使用“地图分幅编号计算器”,但要将具体的原理在报告中书
写清楚。
地图分幅编号和地图比例尺

②
③
④
地图数学基础
地形图分幅编号的实际应用
图号
地理位置
例2:已知图号为H-51-3,求其地理位置。
N h 8 4 32 0 0 S h 1 7 4 28
0 0 0 0 E l 30 21 6 126 0 0 W l 31 20 6 120
地图数学基础
H-51-3
320 31040’
1200
1210 120030’ 121030’
1230
1260 320 31040’
3
300
300
280 1200 1230
280
0 地图数学基础 126
1. 2. 3.
图解法解算地形图分幅编号,首先要求出某地点 所在 1:100 万地形图的编号,若所求的比例尺为 1:5万、 1:2.5万、 1:1万、1:5000 ,则还要求出 所在的1:10万地形图的编号,然后求出所求比例 尺地形图的带号,即可组合成所求比例尺地形图 的编号。 作用 依据经纬度,求图号,以便索取所需资料。 根据某图号,求其地图的地理位置。 求相邻图幅图号。
地图数学基础
(一)截止1990年地形图的分幅编号系统
图解法分幅编号
地图数学基础
1 : 100万地形图分幅编号
1 : 100万地形图按国际百 万分之一统一分幅后,从 赤道起向南北至纬度 880 , 用拉丁字母 A 、 B 、 C….V 表示 22 个相应的横行号, 极地仅一幅图,用 Z 表示, 行号前分别冠以N和S,以 区别北半球和南半球的地 图;用 1 、 2 、 3….60 表示 纵列号,从东经 1800 起, 自西向东,至经度00,由1 注到 30 ,从经度 00 至东经 1800 , 由 31 注 到 60 。 用 “行号-列号”形式编号。
详解地图分幅编号
(一)截止1990年地形图的分幅编号系统
【一】 图解法分幅编号
地图数学基础
1 : 100万地形图分幅编号
1 : 100万地形图按国际百 万分之一统一分幅后,从 赤道起向南北至纬度 880 , 用拉丁字母 A 、 B 、 C….V 表示 22 个相应的横行号, 极地仅一幅图,用 Z 表示, 行号前分别冠以N和S,以 区别北半球和南半球的地 图;用 1 、 2 、 3….60 表示 纵列号,从东经 1800 起, 自东向西,至经度00,由1 注到 30 ,从经度 00 至东经 1800 , 由 31 注 到 60 。 用 “行号-列号”形式编号。
地图数学基础
(二)自然序数式编号法
自然序数式编号法 系 将分幅地图按自然数的 顺序编号。 矩形分幅的小区域地图 和大区域小比例尺挂图 常采用此种编号法。
地图数学基础
(三)行列-自然序数式编号法
行列-自然序数式编号法 是行列式与自然序数式 相结合的编号方法。 世界各国地形图的编号多采用这种方式,即在行 列式编号的基础上,用自然序数或字母代表详细 划分的较大比例尺地图的代码,两者的结合便构 成分幅图的编号。
将该图幅的序数号与其基础图的图号组合起来, 即得所求的图号。
③
④
地图数学基础
地形图分幅编号的实际应用
经纬度
图号
例 1 :已知某地位于东经 120010’15” ,北纬 30015’10” , 求该地所在的1:1万地形图的图号。
30015'10" h 1 1 7 1 8 0 4 120010'15" l 31 31 20 31 51 0 6
地形图的分幅和编号
廓点旳经纬度计算如下:
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
实验三 地图分幅编号007
实验三高斯投影分带、地图分幅编号与接图表说明:高斯投影分带因高斯投影的最大变形在赤道上,并随经差的增大而增大,因此,限制了投影的经度范围,就可将变形大小控制在所需要的范围内,以满足地图所需精度的要求。
因此确定对该投影采取分带单独进行投影。
即依经线按一定的经差将参考椭球体面分为若干瓜瓣形,每个瓜瓣形的中间经线作为中央经线,进行分别投影,每个瓜瓣形称为一带。
投影分带3º9º69º75º81º87º93º99º105º111º117º123º129º135º6°分带:小于、等于1:2.5万6°分带投影是从零子午线起,由西向东,每6°为一带,全球共分60带,东半球划分30个投影带,从0°至180°,用1、2…30表示。
6°分带投影的带号:n= [λE/6 °] +1,[]取整λE=112°15ˊ03",计算n,该带的经度范围,及该带中央经线的经度。
n=18+1=19,即在高斯6°分带投影中,第19带;经度范围:6*(n-1)~6*n=108°~114°中央经线:6*n-3=111°3°分带:大于、等于1:1万3°分带投影是从东经1°30ˊ,由西向东,每3°为一带,全球共分120带,,用1…120表示。
3°分带投影带号:n= [λE- 1°30ˊ/3 °] +1,[]取整λE=112°15ˊ03",计算n,该带的经度范围,及该带中央经线的经度。
n=36+1=37,即在3°分带投影中,第37带;经度范围:3 °*(n-1)+ 1°30ˊ~3*n+ 1°30ˊ=109.5°~112.5° 中央经线:3 °*n=111°地图分幅编号两种系统,分幅是一样的,所有的分幅经差和纬差均相同;不同的是分幅的基础图和编号形式不一样。
地图的分幅与编号
第二章地图的分幅与编号第一节地图分幅与编号的定义与作用为了不重测、漏测,就需要将地面按一定的规律分成若干块,这就是地图的分幅。
为了科学地反映各种比例尺地形图之间的关系和相同比例尺地图之间的拼接关系,为了能迅速查找到所需要的某种地区某种比例尺的地图,为了便于平时和战时地图的发放、保管和使用,需要将地形图按一定规律进行编号。
一、地图分幅1.矩形分幅矩形分幅又可分为拼接的和不拼接的两种。
拼接使用的矩形分幅是指相邻图幅有共同的图廓线,使用地图时可按其共同边拼接起来。
不拼接的矩形分幅是指图幅之间没有公共边,每个图幅有其相应的制图主区,各分幅图之间常有一定的重叠(图2-1,图2-2),而且有时还可以根据主区的大小变更地图的比例尺。
图2-2不拼接分幅图示例2.经纬线分幅图廓线由经线和纬线组成,大多数情况下表现为上下图廓为曲线的梯形。
是当前世界各国地形图和大区域的小比例尺分幅地图所采用的主要分幅形式,我国基本比例尺地图就是以经纬线分幅制作的。
二、地图编号编号就是将划分的图幅,按比例尺大小和所在的位置,用文字符号和数字符号进行编号。
编号是每个图幅的数码标记,它们应具备系统性、逻辑性和唯一性。
常用的地图编号有行列式、自然序数式、行列-自然序数式和西南角图廓点坐标公里数编号等。
三、地图分幅编号的作用地图的分幅编号,在地图的生产、管理和使用方面都有重要意义。
首先是测制地图的需要,就测制某种比例尺地图而言,按每一分幅地图的范围和图号下达任务,不仅可以避免测制地图过程中遗漏或重复,节资增效,而且还能使所测地图的幅面控制在适当范围内,避免因幅面过大使绘图作业难以操作,影响绘图质量。
其次是印制地图的需要,若不分幅,地图幅面过大,一般印刷设备难以满足要求,势必要增加成本,而在复照时会给图面带来较大的边缘误差,影响地图的几何精度。
第三是管理和发行的需要,地图分幅编号后,便于分类分区有序地存贮;大小规格一致,易于包装。
运输和存放;统一编号,有利于快速检索和发行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
地图学实验报告课程:地图学班级:******学号: ******姓名:******实验目的及要求: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));}。