地图基本功能的实现

  • 格式:doc
  • 大小:80.50 KB
  • 文档页数:8

下载文档原格式

  / 8
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

重庆交通大学

学生实验报告实验课程名称地理信息系统软件二次开发开课实验室空间数据处理实验室

学院河海学院年级2008 专业班 1 学生姓名学号08260117 开课时间2011 至2012 学年第 1 学期

目录

实验二地图基本功能的实现 (3)

一、实验内容 (3)

二、实验要求 (3)

三、实验步骤 (3)

1、系统基本界面的设置; (3)

2、打开*.shp格式的文件 (4)

3、地图的放大功能 (7)

4、地图的所缩小功能 (9)

5、地图的漫游功能 (11)

6、地图的全视功能 (13)

7、菜单栏与快捷键的一一对应 (14)

四、实验成果 (16)

五、实验心得 (16)

实验二地图基本功能的实现

一、实验内容

1、学习菜单中事件的编辑;

2、学习Toolbar中添加的快捷键图标与菜单中的对应操作;

3、学习GIS应用系统的基本界面操作。

二、实验要求

1、实现系统只打开*.shp格式文件的功能;、

2、实现地图的放大功能;

3、实现地图的缩小功能;

4、实现地图的漫游功能;

5、实现地图的全视功能;

6、实现菜单栏与快捷键的一一对应功能。

三、实验步骤

1、系统基本界面的设置;

修改工程名,修改窗体名,设置窗体图标,编辑菜单,编辑快捷键图标,添加内容窗口,设置鹰眼窗口,添加基本地图窗口,在代码窗口中进行基本界面的设置,代码为:

Private Sub Form_Load()

boo = False

FrmMain.WindowState = 2

Map1.Width = Screen.Width - 3400

Map1.Height = Screen.Height - 2000

'调整MAP的界面

layercontrol.Width = Screen.Width - 17300

Map2.Width = Screen.Width - 17300

layercontrol.Height = Screen.Height - 6000

Map2.Height = Screen.Height - 8000

'调整内容窗口和鹰眼窗口的界面

End Sub

运行结果后,系统基本界面如图2-1

图2-1

2、打开*.shp格式的文件

点击窗体中“文件-打开”,如图2-1,

图2-1

进入代码窗口,设置如下代码:

Private Sub MnuFileOpen_Click(Index As Integer)

'添加文件

Dim dconn As New MapObjects2.DataConnection

Dim shplayer As New MapObjects2.MapLayer

CommonDialog1.Filter = "ESRI Shapefiles(*.shp)|*.shp" '设置虑通器,只打开*.shp 格式的文件

CommonDialog1.ShowOpen

If Len(CommonDialog1.FileName) = 0 Then Exit Sub

dconn.Database = CurDir

If Not dconn.Connect Then Exit Sub

FileName = Left(CommonDialog1.FileTitle, Len(CommonDialog1.FileTitle)) '为什么此处不减四

dconn.Connect

Set shplayer.GeoDataset = dconn.FindGeoDataset(FileName) '此处不加引号且不能添加固定文件

shplayer

End Sub

运行过程见图2-2,图2-3,图2-4

图2-2

图2-3

图2-4

此图为吉林省行政区划图。

3、地图的放大功能

点击窗体中视图菜单中的“放大”选项,如图2-5,

图2-5

进入代码窗口,输入代码:

Private Sub MnuViewZoomIn_Click()

Dim r As MapObjects2.Rectangle

Set r = Map1.Extent

r.ScaleRectangle 0.5 ' 大于1就是缩小

Map1.Extent = r

boo = True

End Sub

实现地图的放大功能,运行过程,见图2-6图2-7;

图2-5(图像原始大小)

图2-6(图像放大)

经操作后可以看出,此放大功能只能进行固定倍数的放大。

4、地图的所缩小功能

点击窗体中视图菜单中的缩小选项,如图2-7

图2-7

进如代码窗口,输入代码:

Private Sub MnuViewZoomOut_Click()

Dim r As MapObjects2.Rectangle

Set r = Map1.Extent

r.ScaleRectangle 1.5

Map1.Extent = r

End Sub

运行结果如图2-8(图像原始大小),图2-9(图像放大),图2-10(图像缩小),

图2-8(图像原始大小)

图2-9(图像放大)

图2-10(图像缩小)

经操作后可以看出,此缩小功能只能进行固定倍数的缩小。

5、地图的漫游功能

点击窗体中视图菜单中的漫游选项,如图2-11,

图2-11

进如代码窗口,输入代码:

Private Sub MnuViewPan_Click()

'Dim button As Integer, shift As Integer, x As Single, y As Single Map1.Pan

'此处有待改进