测绘毕业论文

上传人:1888****888 文档编号:38004506 上传时间:2021-11-05 格式:DOC 页数:37 大小:914.52KB
收藏 版权申诉 举报 下载
测绘毕业论文_第1页
第1页 / 共37页
测绘毕业论文_第2页
第2页 / 共37页
测绘毕业论文_第3页
第3页 / 共37页
资源描述:

《测绘毕业论文》由会员分享,可在线阅读,更多相关《测绘毕业论文(37页珍藏版)》请在装配图网上搜索。

1、摘 要 无论在地图学领域还是测绘学领域,会经常遇到区域经纬度与该区域地形图图幅号之间相互转换的问题,而频繁的人工计算过程会使相关工作繁琐,效率低下。Visual Basic 作为一种可视化、面向对象和采用事件驱动方式的结构化高级程序设计语言,简单易学、效率高并且可以直接用于各类Windows 环境下的应用程序。因此,可以采用Visual Basic编写的应用程序来解决经纬度与图幅号之间相互转换的问题,提高工作效率。 本文详细介绍了我国基本比例尺地形图分幅和编号的具体规定,并在Visual Basic环境下编写应用程序,准确高效地解决了经纬度与图幅号相互转换的问题。关键词:经纬度;地形图图幅号;

2、Visual Basic 目 录1、绪论12、 我国基本比例尺地形图分幅和编号22.1 我国基本比例尺地形图分幅22.2 我国基本比例尺地形图编号32.3 我国基本比例尺地形图编号应用的公式73、Visual Basic 简介123.1 Visual Basic的发展123.2Visual Basic的特点123.3 Visual Basic 开发应用程序的一般步骤144、Visual Basic环境下经纬度与图符号转换程序设计154.1建立用户界面,设置窗口和控件属性154.2 编写程序代码184.3 保存生成可执行文件194.4 程序运行演示19结论21参考文献22致谢23附录24外文翻译

3、原文34外文翻译译文381绪论1.1国家基本地形图的特点(1)具有统一的大地坐标系统和高程系统,我国国家基本地形图统一采用1980年“中国国家大地坐标系统”和“1985年国家高程基准”。(2)具有完整的比例尺系列和分幅编号系统。国家基本地形图按统一规定的经差和纬差进行分幅,每幅图的内图廓都是由经线和纬线构成,在国际百万分之一地图分幅编号基础上,建立了各级比例尺地形图的图幅编号系统。(3)国家基本地形图是依据国家测绘管理部门统一定制的测量与编绘规范和地形图图式完成的,以便能够保证由各地方测绘部门分工完成的地形图,在质量和规格上的完全统一。1.2国家基本地形图分幅的编号地形图分幅编号的方法很多,1

4、990年底之前的国家基本地形图采用的是行列-自然序列的编号方法,我国称为原国家基本地形图编号法。其中1:100万地形图采用的是行列式编号法,而1:50万以下七种比例尺地形图则采用行列-自然序列编号法。1991年之后的国家基本地形图编号一律采用行列式的编号方法,称为新国家基本地形图编号法。 本文所介绍的就是1991年之后的新国家基本地形图编号法。以1993-07-01实施的国家基本比例尺地形图分幅和编号标准(GB/T 13989-92)为依据。 1.3论文主要内容(1)我国基本比例尺地形图分幅和编号a、我国地形图的分幅以及地形图编号方法;b、我国地形图编号应用的公式以及图幅号与经纬度相互转换应用

5、举例;(2)Visual Basic 简介a、Visual Basic编程语言的特点;b、Visual Basic开发应用程序的一般步骤;(3)Visual Basic 环境下经纬度和图符号的相互转换a、Visual Basic编写该程序的步骤;b、经纬度和图符号的相互转换的Visual Basic程序运行演示。 2 我国基本比例尺地形图分幅和编号2.1我国基本比例尺地形图的分幅我国基本比例尺地形图均以1:1000 000地形图为基础,按规定的经差和纬差划分图幅。 1:1000 000地形图的分幅采用国际1:1000 000地图分幅标准。每幅1:1000 000地形图的范围是经差6、纬差4;纬

6、度6076之间为经差12、纬差4;纬度7688之间为经差24、纬差4(由于我国没有纬度60以上的区域。因此本文仅仅介绍经差6、纬差4的分幅情况)。各比例尺地形图的经纬度差、行列数和图幅数所成的倍数关系比例尺图 幅 范 围经差 6 3130 3015730345152.5纬差 4 2 1 20105230115行列数量关系行数12412244896192列数12412244896192图幅数量关系1416144576230492163686414361445762304921619361445762304141664256141664141614表 1.12.2我国基本比例尺地形图的编号2.2.

7、1 1:1000 000地形图的编号 1:1000 000地形图的编号采用国际1:1000 000地图编号标准。从赤道算起,每纬差4为一行,至南、北纬88各分为22行,依次用大写拉丁字母(字符码)A、B、C、V表示其相应符号;从180经线算起,自西向东每经差6为一列,全球分为60列,依次用阿拉伯字母(数字码)1、2、3、60表示其相应列号。由经线和纬线所围成的每一个梯形小格(图1所示)为一幅1:1000000地形图,它们的编号由该图所在的行号与列号组合而成。(如北京所在的1:1000000地形图的图号为J 50)例:北京所在的1:1000000地形图的图号为J 50 J 501:1000 00

8、0地形图图幅列号(数字码)1:1000 000地形图图幅行号(字符码) 图 1.1 北半球东侧1:1000 000地形图分幅编号 我国地处东半球赤道以北(见图2),图幅范围在经度72138、纬度056内,包括行号为A、B、C、N的14行、列号为43、44、53的11列。 图1.2 我国1:1000 000地形图的分幅编号2.2.2 1:500 0001:5000 地形图的编号 1:500 0001:5000 地形图的编号均以1:1000 000 地形图编号为基础,采用行列编号方法(见图3)。即将1:1000 000地形图按照所含比例尺地形图的经差和纬差划分为若干行和列,横行从上到下、纵列从左到

9、右按顺序分别用三位阿拉伯数字(数字码)表示,不足三位者前面补零,取行号在前、列号在后的排列形式标记;各比例尺地形图分别采用不同的字符作为其比例尺代码(见表2); 1:500 0001:5000地形图的图号均由其所在1:1000 000地形图的图号、比例尺代码和各图幅的行、列号,共十位码组成(见图4)。比例尺1:500 0001:250 0001:100 0001:50 0001:25 0001:100001:5000代码BCDEFGH表 1.2 图 1.3XXXXXXXXXX1:1000 000地形图图幅行号(字符码)图幅列号(数字码)图幅行号(数字码)1:1000 000地形图图幅列号(数字

10、码)比例尺代码图 1.4例1:1:500 000地形图编号(见图5)晕线所示图号为J50B001002 图 1.5例2:1:250 000 地形图编号(见图6) 晕线所示的图号为J50C003003 图 1.6例3: 1:100 000 地形图的编号(见图1.7)单晕线所示图号为J50D0100102例4: 1:50 000 地形图的编号(见图1.7) 双晕线所示图号为 J50E017016例5: 1:25 000 地形图的编号(见图1.7) 平行晕线所示图号为J50F042002例6: 1:10 000 地形图的编号(见图1.7) 黑块所示图号为J50G093004例7: 1:5000 地形

11、图的编号(见图1.7)1:1000 000地形图图幅最东南角的1:5000地形图图号为J50H192192 图 1.7 2.3我国基本比例尺地形图编号应用的公式2.3.1已知图幅内某点的经、纬度或图幅西南图廓点的经、纬度计算其编号 A、按下列公式计算1:1000 000地形图图幅编号: a = /4 + 1 1.1 b = /6 +31 1.2式中 -表示取整; a-1:1000 000地形图图幅所在纬度带字符码所对应的数字码; b-1:1000 000地形图图幅所在经度带的数字码; -图幅内某点的经度或图幅西南图廓点的经度; -图幅内某点的纬度或图幅西南图廓点的纬度;例1:某点经度为1143

12、345,纬度为392230,计算其所在图幅的编号。 a =392230/4 + 1 = 10 (对应字符码为J) b =1143345/6+31 =50 所以,该点所在1:1000 000地形图图号为J 50B、按下式计算所求比例尺地形图在1:1000 000地形图图号后的行、列号: C = 4/-(/4) / 1.3 d = () / + 1 1.4式中:( )-表示商取余; -表示取整; c -所求比例尺地形图在1:1000 000地形图图号后的行号; d-所求比例尺地形图在1: 1000 000地形图图号后的列号; -图幅内某点的经度或图幅西南图廓点的经度; -图幅内某点的纬度或图幅西南

13、图廓点的纬度; -所求比例尺地形图分幅的经差; -所求比例尺地形图分幅的纬差。以经度1143345,纬度392230的某点为例,计算各比例尺地形图的编号。例2:1:500 000地形图的编号 =2 =3 c = 4/2(392230/4)/2 =232230/2 =001 d =(1143345/6)/3 +1 =3345/3 +1 =0011:500 000地形图的编号为J50B001001例3: 1:250 000 地形图的编号 =1 =130 c = 4/1(392230/4)/1 =432230/1 =001 d =(1143345/6)/130 +1 =3345/130 +1 =00

14、11:250 000地形图的编号为J50C001001例4: 1:100 000地形图的编号 =20 =30c =4/20(392230/4)/20 =1232230/20 =002d =(1143345/6)/30 +1 =3345/30 +1=0021:100 000地形图编号为J50D002002例5:1:50 000地形图的编号 =10 =15c =4/10(392230/4)/10=24 (392230/4)/10=004d =(1143345/6)/15 +1 =3345/15 +1 =0031:50 000地形图编号为J50E004003例6:1:25 000地形图的编号 =5

15、=730 c =4/5(392230/4)/5 =48 32230/5 =008 d=(1143345/6)/730 +1 =3345/730 +1 =0051:25 000地形图的编号为J50F008005例7: 1:10 000地形图的编号 =230 =345c =4/230(392230/4)/230 =96 32230/230 =015d =(1143345/6)/345 +1 =3345/345 +1 =0101:10 000地形图的编号为J50G015010例8: 1:5 000地形图的编号 =115 =152.5c =4/115(392230/4)/115 =96 32230/1

16、15 =030d =(1143345/6)/152.5 +1 =3345/152.5 +1 =0191:5 000地形图的编号为J50H0300192.3.2已知图号计算该图幅西南图廓点的经、纬度按下列公式计算该图幅西南图廓点的经、纬度: = (b-31) 6+(d-1) 1.5 = (a-1) 4+(4/-c) 1.6式中: -图幅西南图廓点的经度; -图幅西南图廓点的纬度; a -1:1000 000地形图图幅所在经纬带字符码所对应的数字码; b-1:1000 000地形图图幅所在经纬带的数字码; c-该比例尺地形图在1:1000 000地形图图号后的行号; d-该比例尺地形图在1:100

17、0 000地形图图号后的列号; -该比例尺地形图分幅的经差; -该比例尺地形图分幅的纬差。例1:图号J50B001001,求其西南图廓点的经、纬度。 a = 10; b = 50; c = 1; d = 1; =2;=3 =(5031)6+(11)3 =114 =(101)4+(4/21)2 =38 该图幅西南图廓点的经、纬度分别为114、38例2:图号J50D002002,求其西南图廓点的经、纬度。 a = 10; b = 50; c = 2; =20;=30 =(5031)6+(21)3 =11430 =(101)4+(4/202)20 =3920 该图幅西南图廓点的经、纬度分别为1143

18、0、39203 Visual Basic 简介3.1 Visual Basic的发展Microsoft(微软)公司在1991年推出Visual Basic 1.0版,获得了巨大成功。从1.0到4.0版,Visual Basic只有英文版,1997年推出的5.0版出现了中文版本,大大方便了中国用户。1998年推出的6.0版,是目前使用的最为广泛的版本。随着版本的改进,Visual Basic已经逐渐发展为简单易学、功能强大的编程工具。Visual Basic 6.0是专门为Microsoft的32位操作系统设计的,可用来建立32位的应用程序。在Windows9x、Windows NT、Windo

19、ws98以及以上版本,Visual Basic 6.0的编译器可以自动生成32位应用程序。这样编写的应用程序,在32位操作系统下运行,速度更快、更安全,并且更适合在多任务环境下运行,这也是本课题选择Visual Basic 6.0编写该程序的原因之一。3.2 Visual Basic的特点(选择VB的原因)Visual Basic是在BASIC语言基础上研制而成的,它具有BASIC语言简单而不贫乏的优点,同时又增加了结构化和可视化程序语言功能。总的来看Visual Basic 主要有以下特点:(1) 可视化编程传统的程序设计语言在设计程序时,都是通过编写程序代码来设计用户界面,再设计的过程中是

20、看不到界面的实际显示效果的,必须编译后运行程序才能观察。如果对界面的效果不满意,还要回到程序中去修改。有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发的效率。Visual Basic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量代码程序,只需要按设计要求的屏幕布局,利用系统提供的工具,在屏幕上“画”出各种“部件”,即Visual Basic内部控件,并且设置这些控件的属性。Visual Basic会自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而大大提高了程序设计的效率。(2)面向对象的程序设计

21、 Visual Basic 6.0支持面向对象的程序设计,但它与一般的面向对象程序设计语言(C+)不完全相同。在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而Visual Basic 6.0则是应用面向对象的程序设计方法(00P),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。在对象设计的过程中,不必编写建立和描述每个对象的程序代码,而是用工具“画”在界面上,Visual Basic自动生成对象的程序代码并封装起来。每个对象以图形方式显示在界面上,都是可视的。(3)结构化程序设计语言 Visual Basic是在BASIC和Qui

22、ck BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式,其语句简单易懂;其编辑器支持彩色代码,可以自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。 Visual Basic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并同时判断每个语句的语法错误。在设计Visual Basic程序的过程中,随时可以运行程序,而在整个应用程序设计好之后,可以编译生成可执行(.exe)文件,脱离Visual Basic环境,直接在Windows环境下运行。 (4)事件驱动编程机制 Visual Basic

23、通过事件来执行对象的操作。一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。例如,命令按钮是一个对象,当用户单击该按钮时,会产生一个“单击”(Click)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。 在用Visual Basic编写应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程,这些过程分别面向不同的对象,由用户操作引发某个事件来驱动执行某种特定的功能,或者由事件驱动程序来调用通用过程来执行指定的操作。这样就可以方便编程的过程和提高编程的效率。 随着版本的更新,Visual Basic已成为真正专业化的大型开发语言和环境,不仅功能越来

24、越强,而且更容易使用。Visual Basic 6.0所提供的开发环境与Windows具有完全一致的界面,使用更方便,其代码效率已达到Visual C+的水平。 另外,一个计算机程序通常可以分为三部分,即输入、处理和输出。计算机通过输入操作来接收数据,然后对数据进行处理,并将处理完的数据以完整有效的方式提供给用户。而Visual Basic的输入输出有着十分丰富的内容和形式,它提供了多种手段,并且可以通过各种控件实现输入输出操作,使输入输出灵活、多样、方便、形象直观。基于Visual Basic的以上特点,结合经纬度与图幅号相互转化应用的公式对应用程序中数据输入-处理-输出过程的要求,选择Vi

25、sual Basic 6.0作为程序编译器,能够使程序设计的过程更加方便、快捷、高效,容易掌握;并且能够在任何32位Windows操作系统下更快、更安全地运行设计好的应用程序。3.3 Visual Basic 开发应用程序的一般步骤 Visual Basic的最大特点是以最快的速度和效率开发具有良好用户界面的应用程序。如上所述,Visual Basic的对象已经被抽象为窗体和控件,因而大大简化了程序设计的过程。一般来说,利用Visual Basic开发程序时,需要三个步骤:建立可视化用户界面;设置可视化界面属性;编写事件驱动的代码;保存和运行程序。(1)建立用户界面 用户界面由对象,即窗体和控

26、件组成,所有的控件都放在窗体上(一个窗体最多可容纳255个控件),程序中的所有信息都要通过窗体显示出来,它是应用程序的最终用户界面。在应用程序中要用到哪些控件,就在窗体建立相应的控件。程序运行后,将在屏幕上显示由窗体和控件组成的用户界面。(2)设置窗体和控件的属性 建立界面后,就可以设置窗体和每个控件的属性。在实际的应用程序设计中,建立界面和设置属性可以同时进行,每画完一个控件,接着就设置该控件的属性。也可以在所有的对象都建立完成后,再统一设置对象的属性。具体方法依个人习惯而定。(3)编写程序代码Visual Basic采用事件驱动编程机制,因此大部分程序都是针对窗体中各个控件所能支持的方法或

27、事件编写的,这样的程序称为事件过程。例如,命令按钮可以接受鼠标事件,如果单击该按钮,鼠标事件就调用相应的事件过程来做出响应。多数情况下,特别是小型应用程序,所编写的程序通常都由事件过程组成,即针对控件或窗体的事件编写代码。(4)保存和运行程序 在Visual Basic中,应用程序是以工程文件的形式保存在磁盘上的。选择相应的磁盘路径保存应用程序。运行程序则有解释和编译两种模式,编译模式需要生成相应的可执行文件,需要时,调用即可,是脱离了Visual Basic环境的;而解释模式,则必须在Visual Basic环境下打开该工程,而后单击“启动”按钮或者选择“运行”菜单中的“启动”命令。4 Vi

28、sual Basic环境下经纬度与图符号转换程序设计 该应用程序包括两大部分功能,即1、已知经纬度而求地形图的图幅号;2、已知地形图图幅号求该图幅西南图廓点的经纬度。如果将两部分功能都放在一个用户界面上,将会产生过多的控件而使窗口显得凌乱,影响用户界面的美观;所以,为了使界面看起来简洁美观,操作简单快捷,将程序设计为多重窗口(一个主窗口form1,两个子窗口form2、form3)模式,通过主窗口的操作来打开其子窗口。 下面就按照Visual Basic 开发应用程序的步骤来详细介绍该程序设计的过程:4.1 建立用户界面,设置窗口和控件属性 Form1(经纬度与图符号相互转换)的界面设计如下:

29、Image 1Label 1Command 1Command3Command 2Frame 1 图3.1Form1窗体和控件的属性设置:对象属性设置值Form1Border Style1-FixedSingleOption1Fore Color红色(调色板)Option2Fore Color蓝色(调色板)Command1Caption确定DefaultTrue Command2Caption退出CancelTrue Frame1Caption 模式选择: 表 3.1Form2(已知经纬度求图幅号)的界面设计如下:Text 2Text 1Text 3Command 3Command 4Comma

30、nd 5Command 1Image 1 图3.2Form2窗体和控件的属性设置:对象属性设置值Form1Border Style1-FixedSingleLabel 1-label 4Fore Color红色(调色板)Text1、Text2Enabled True Text3Enabled FalseCommand1Caption 转换Default True Command2Caption 刷新Command3caption输入说明Command4Caption 返回Cancel True Command5Caption 退出Image1Picture (自定义)Frame1Caption

31、 选择比例尺: 表 3.2Form3(已知图幅号求经纬度)界面设计如下:Text 11Text 6Command 4Command 3Command 1 图3.3Form3窗体和控件的属性设置:对象属性设置值Form1Border Style1-FixedSingleLabel1-label4Fore Color 蓝色(调色板)Text1-Text5Enabled True Text6-Text11Enabled FalseCommand1Caption 转换Default True Command3Caption 返回DefaultTrue 表 3.34.2 编写程序代码4.2.1设计思路(

32、1)Form1(图3.1) 该窗口的主要作用是来选择计算的模式,通过选择Option1或者Option2,单击“确定”按钮来打开相应的窗口进行运算。单击“返回”按钮就会结束程序的运行。另外,单击“关于”按钮,会弹出一个消息框,来提示用户本软件的使用范围。 如果没有对模式进行选择就单击“确定”按钮,应该弹出一个提示性质的消息框,提醒用户选择需要的计算模式。(2)Form2 (图3.2) 该窗口是已知经纬度来求图幅号的运算界面,要求用户输入图幅某点或者图幅西南图廓点的经纬度,来计算(转换)求得该图幅的图幅编号。 用户在相应文本框输入经纬度,并且选择比例尺之后,单击“转换”按钮,就会在下面的文本框内

33、显示运算结果,如果没有按照要求输入经纬度(漏输或者超范围输入)或者没有选择比例尺,都应该弹出提示性消息框,提示用户正确输入经纬度,选择比例尺。单击“输入说明”,会有提示消息框,说明输入数据的范围和格式,从而保证计算结果的正确性。单击“刷新”按钮,就会清除所有文本框内的内容,从而重新输入数据、重新计算结果。单击“返回”,Form2消失,界面返回Form1。而单击“退出”则是退出该应用程序。(3)Form3 (图3.3) 该窗口是已知图幅号求图幅西南图廓点经纬度的运算界面,要求用户输入正确的图幅号,来计算该图幅西南图廓点的经纬度。 用户输入正确的图幅号之后,单击“转换”,会在下面的文本框显示运算结

34、果。如果图幅号输入不正确(超范围,或者漏输),都会有相应的提示,提示用户输入正确的图幅号。为了确保计算的正常进行,单击“输入说明”,就会弹出提示框,来说明图幅号的输入范围以及格式,其余按钮则与Form2中相应的按钮功能一致。此外,为了方便用户输入图幅号,在一个文本框输入相应长度的字符后,下一个文本框应当自动获取焦点(光标位置)。这些都应该在编写的程序代码中得以实现。4.2.2编写程序代码按照上述的设计思路,对每一个窗口和控件编写相应的程序代码,实现各个控件的功能,并保证操作和运算结果的正确性。(具体的程序代码见附录。)4.3 保存并生成可执行(exe.)文件在程序调试运行,确定没有问题之后,为

35、了脱离Visual Basic环境,而直接在Windows环境下运行,就要对编写好的程序生成可执行的文件。执行:“文件”“生成XXX.exe”(其中XXX为可执行文件名)选择文件保存路径。若要使用该应用程序,只需要按照存储路径找到该应用程序,调用即可。4.4 程序运行演示:4.4.1已知经纬度求图幅号:以经度1143345,纬度392230的某点为例,计算1:25000地形图的编号 图 3.4输入“经度:”114.3345,“纬度:”39.2230单击“转换”按钮“图幅号”显示:J 50 F 008 0054.4.2已知图幅号求经纬度:以图幅号J50D002002为例,求其西南图廓点的经、纬度

36、:图 3.5按要求输入“地图图幅号:”J 50 D 002 002单击“转换”按钮显示“经度:”114300,“纬度:”39200结 论本文依据国家基本比例尺地形图分幅和编号 GB/T 13989-92(1993-07-01实施),详细介绍了我国范围内基本比例尺地形图的分幅和编号,以及分幅编号所利用的公式。在诸多地图学和测绘学等地学学科工作中,经纬度与地形图图幅号之间的相互转换是经常遇到的问题,频繁的计算过程会大大降低工作的效率。因此有必要编写应用程序来快速准确的完成该转换,提高工作效率和准确率。由于Visual Basic其自身的特点,非常适合用来编写该应用程序。所以本文就按照Visual

37、Basic开发程序的步骤,具体地介绍利用Visual Basic6.0并结合我国基本比例尺地形图分幅和编号所应用的公式编写该应用程序的详细步骤。按照本文的描述,相关工作人员完全能够编写并使用该应用程序。程序一旦正确无误地编写完成,并生成可执行文件,便可以脱离Visual Basic环境,在Windows环境下直接运行。这样,就可以有效地解决经纬度与图幅号相互转换过程中频繁计算的问题,使得工作效率,准确率大大提高。参考文献1 姜翔鸾、姜支一、吕玉霞,中华人民共和国国家标准-国家基本比例尺地形图分幅和编号 GB/T 13989-92(1993-07-01实施),国家测绘局标准化研究所,19922

38、毛赞猷、朱良、周占鳌、韩雪培,新编地图学教程(第二版),高等教育出版社,2008,23 邬伦、刘瑜、张晶、马修军、韦中亚、田原,地理信息系统-原理、方法和应用,科学出版社,20114 教育部考试中心,全国计算机等级考试二级教程-Visual Basic语言程序设计(2008年版),高等教育出版社,20085沈昭辉,数据库结构与数据库应用基础教程(第三部分 Visual Basic程序设计基础),南开大学出版社,20076 (百度文库)7 (土木工程网)致 谢 转眼间,大学四年就要结束了,感慨时光匆匆的同时,我也完成了自己的毕业设计论文。做毕业设计的过程,其实也是对自己在大学时光所学知识的总结过

39、程,书到用时方恨少,现在我已经意识到了自己专业知识的欠缺和学习习惯的不足,并将在今后的工作学习中不断弥补和提升自己。同时,在完成这篇论文的过程中我得到了多方面的帮助。在此,我要感谢我所有的任课老师,传授给我丰富的专业知识和其他各方面的业务知识,尤其要感谢杨育丽老师,定期对我的毕业论文做出耐心、细致的指导,对我所提出的问题都会认真、全面地解答并提出有用的建议,还提供给我们许多实用的参考资料。还要感谢给我提供帮助,关心我的老师们,室友们,同学们,有你们的帮助,才能使这篇论文顺利地完成。在此期间,我体会到了师生,及室友、同学之间的感情,这些也都是我在大学生活即将结束之际所收获的一份宝贵的财富。希望我

40、能够给老师、同学们交一份满意的答卷,也给自己的大学生活画一个完美的句号。最后,再一次向以上提到的各位老师、同学提出真挚的感谢!谢谢你们! 2012年6月附 录1 Form1(图3.1)程序代码:(1) Command1:Private Sub Command1_Click()If Option1.Value = True Then Form1.Hide Form2.ShowElseIf Option2.Value = True Then Form1.Hide Form3.ShowElseIf Option1.Value = False And Option2.Value = False The

41、n MsgBox 请选择模式!, 48, 错误提示End IfEnd Sub(2) Command2: Private Sub Command2_Click()EndEnd Sub (3) Command3:Private Sub Command3_Click()a = 软件介绍:b = 本软件适用于我国范围内的经纬度与地形图图幅号相互转换c = 联系方式:QQ 497159625d = a + vbCrLf + b + vbCrLf + ce = MsgBox(d, 0, 关于)End Sub2 Form2(图3.2)程序代码:(1)Form:Private Sub Form_Load()T

42、ext3.Enabled = FalseEnd Sub(2)Command1:Private Sub Command1_Click()If Text1.Text = Or Text2.Text = Or Val(Text1.Text) 138 Or Val(Text2.Text) 60 ThenMsgBox 请正确输入经纬度!, 48, 错误提示End Ifj = Val(Text1.Text)w = Val(Text2.Text)jd = Int(j) + (Int(j * 100) Mod 100) / 60 + (j * 10000) Mod 100) / 3600wd = Int(w)

43、 + (Int(w * 100) Mod 100) / 60 + (w * 10000) Mod 100) / 3600x = Int(wd) Mod 4 + wd - Int(wd)y = Int(jd) Mod 6 + jd - Int(jd)a = Chr(Int(wd / 4) + 65)b = Str(Int(jd / 6) + 31)If Option1.Value = True Then Text3.Text = a & bElseIf Option2.Value = True Then c = 2 - Int(x / 2) d = Int(y / 3) + 1 h = Form

44、at(c, 000) l = Format(d, 000)Text3.Text = a & b & B & h & & lElseIf Option3.Value = True Then c = 4 - Int(x / 1) d = Int(y / 1.5) + 1 h = Format(c, 000) l = Format(d, 000) Text3.Text = a & b & C & h & & lElseIf Option4.Value = True Then c = 12 - Int(x / (1 / 3) d = Int(y / 0.5) + 1 h = Format(c, 000

45、) l = Format(d, 000) Text3.Text = a & b & D & h & & lElseIf Option5.Value = True Then c = 24 - Int(x / (1 / 6) d = Int(y / 0.25) + 1 h = Format(c, 000) l = Format(d, 000) Text3.Text = a & b & E & h & & lElseIf Option6.Value = True Then c = 48 - Int(x / (1 / 12) d = Int(y / (1 / 8) + 1 h = Format(c,

46、000) l = Format(d, 000) Text3.Text = a & b & F & h & & lElseIf Option7.Value = True Then c = 96 - Int(x / (1 / 24) d = Int(y / (23 / 400) + 1 h = Format(c, 000) l = Format(d, 000) Text3.Text = a & b & G & h & & lElseIf Option8.Value = True Then c = 192 - Int(x / (1.25 / 60) d = Int(y / (0.03125) + 1

47、 h = Format(c, 000) l = Format(d, 000) Text3.Text = a & b & H & h & & lElseMsgBox 请先选择比例尺!, 48, 错误提示End IfEnd Sub(2)Command2:Private Sub Command2_Click()Text1.Text = Text2.Text = Text3.Text = End Sub(3)Command3:Private Sub Command3_Click()a = 我国经度范围 72138b = 我国纬度范围052c = 请输入我国范围内的经纬度:d = 例:392230则输入

48、:39.2230e = a + vbCrLf + b + vbCrLf + c + vbCrLf + df = MsgBox(e, 0, 输入说明:)End Sub(4)Command4:Private Sub Command4_Click()Form2.HideForm1.ShowEnd Sub(5)Command5:Private Sub Command5_Click()EndEnd Sub3 Form3(图3.3)程序代码:(1) Command1:If Text1.Text = A Or Text1.Text = a Then a = 1ElseIf Text1.Text = B Or

49、 Text1.Text = b Then a = 2ElseIf Text1.Text = C Or Text1.Text = c Then a = 3ElseIf Text1.Text = D Or Text1.Text = d Then a = 4ElseIf Text1.Text = E Or Text1.Text = e Then a = 5ElseIf Text1.Text = F Or Text1.Text = f Then a = 6ElseIf Text1.Text = G Or Text1.Text = g Then a = 7ElseIf Text1.Text = H Or

50、 Text1.Text = h Then a = 8ElseIf Text1.Text = I Or Text1.Text = i Then a = 9ElseIf Text1.Text = J Or Text1.Text = j Then a = 10ElseIf Text1.Text = K Or Text1.Text = k Then a = 11ElseIf Text1.Text = L Or Text1.Text = l Then a = 12ElseIf Text1.Text = M Or Text1.Text = m Then a = 13ElseIf Text1.Text =

51、N Or Text1.Text = n Then a = 14Else MsgBox 请输入我国范围内的图幅行号!, 48, 错误提示End IfIf Val(Text2.Text) 53 Or Text1.Text = Or Text2.Text = Or Text4.Text = Or Text5.Text = Then MsgBox 请输入我国范围内的图幅列号!, 48, 错误提示End If b = Val(Text2.Text)h = Format(Text4.Text, #)l = Format(Text5.Text, #)c = Val(h)d = Val(l) If Text3

52、.Text = A Or Text3.Text = a Then jd = (b - 31) * 6 + (d - 1) * 6 wd = (a - 1) * 4 + (4 / 4 - c) * 4 Text6.Text = Int(jd) Text7.Text = Int(jd - Int(jd) * 60) Text8.Text = CInt(jd - Int(jd) * 60 - Val(Text7.Text) Text9.Text = Int(wd) Text10.Text = Int(wd - Int(wd) * 60) Text11.Text = CInt(wd - Int(wd)

53、 * 60 - Val(Text10.Text) ElseIf Text3.Text = B Or Text3.Text = b Then jd = (b - 31) * 6 + (d - 1) * 3 wd = (a - 1) * 4 + (4 / 2 - c) * 2 Text6.Text = Int(jd) Text7.Text = Int(jd - Int(jd) * 60) Text8.Text = CInt(jd - Int(jd) * 60 - Val(Text7.Text) Text9.Text = Int(wd) Text10.Text = Int(wd - Int(wd) * 60) Text11.Text = CInt(wd - Int(wd) * 60 - Val(Text10.Text) ElseIf Text3.Text = C Or Text3.Text = c Then jd = (b - 31) * 6 + (d - 1) * 1.5 wd = (a - 1) * 4 + (4 / 1 - c) * 1 Text6.Text = Int(jd) Text7.Text = Int(jd - Int(jd) * 60) Text8.Text = CInt(jd - Int(jd) * 60 - Va

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!