09210104GIS二次开发实验报告_第1页
09210104GIS二次开发实验报告_第2页
09210104GIS二次开发实验报告_第3页
09210104GIS二次开发实验报告_第4页
09210104GIS二次开发实验报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

重庆交通大学测量与空间信息处理实验室第1页共20页一、实验目的和要求1、熟悉VISUALBASIC和MAPOBJECT的基本操作2、学会设计一个简单的页面系统来实现对地图的放大、缩小、平移、视图等各种操作功能。3、分别用COMMAND命令实现SHAPE文件加载、平移、放大、缩小操作;用菜单的方式实现SHAPE文件的加载、平移、放大、缩小等操作;用BUTTON的方式实现对SHAPE文件的放大、缩小、平移、全视图等各项操作用类模块的方式实现对SHAPE文件进行加载二、实验内容1、COMMAND命令实现SHAPE文件加载、平移、放大、缩小操作;2、用菜单的方式实现SHAPE文件的加载、平移、放大、缩小等操作;3、用BUTTON的方式实现对SHAPE文件的放大、缩小、平移、全视图等各项操作4、用类模块的方式实现对SHAPE文件进行加载重庆交通大学测量与空间信息处理实验室第2页共20页三、实验步骤首先打开VB程序,然后在工具栏中加载MO的三个部件、COMMONGDIALOG等6个部件(实验一)、使用COMMAND命令实现对图层的各种操作1、先设计窗体界面MAP1、和5个COMMAND命令、COMMONDIALOG命令2、双击打开图层进行代码编写3、同样对界面上的各个命令进行代码编写,慢慢完成整个界面上代码的编程。DIMIASINTEGERPRIVATESUBCOMMAND1_CLICK重庆交通大学测量与空间信息处理实验室第3页共20页DIMDCONNASNEWMAPOBJECTS2DATACONNECTIONDIMSHPLAYERASNEWMAPOBJECTS2MAPLAYERDIMFILENAMEASSTRINGCOMMONDIALOG1FILTER“文件类型SHP|SHP“COMMONDIALOG1SHOWOPENIFLENCOMMONDIALOG1FILENAME0THENEXITSUBDCONNDATABASECURDIRIFNOTDCONNCONNECTTHENEXITSUBFILENAMELEFTCOMMONDIALOG1FILETITLE,LENCOMMONDIALOG1FILETITLE4SETSHPLAYERGEODATASETDCONNFINDGEODATASETFILENAMEMAP1LAYERSADDSHPLAYERMAP1REFRESHENDSUBPRIVATESUBCOMMAND2_CLICK把放大赋值为1I1MAP1MOUSEPOINTERMOZOOMINENDSUBPRIVATESUBCOMMAND3_CLICK把缩小赋值为2I2MAP1MOUSEPOINTERMOZOOMOUTENDSUBPRIVATESUBCOMMAND4_CLICK把平移赋值为3I3MAP1MOUSEPOINTERMOPANENDSUBPRIVATESUBCOMMAND5_CLICK把全视图赋值为0SETMAP1EXTENTMAP1FULLEXTENTMAP1MOUSEPOINTERMOARROWI0ENDSUB重庆交通大学测量与空间信息处理实验室第4页共20页PRIVATESUBMAP1_MOUSEDOWNBUTTONASINTEGER,SHIFTASINTEGER,XASSINGLE,YASSINGLESELECTCASEICASE1SETMAP1EXTENTMAP1TRACKRECTANGLECASE2SETRMAP1EXTENTRSCALERECTANGLE15MAP1EXTENTRCASE3MAP1PANENDSELECTENDSUB4、然后运行程序,来实现对地图的加载、放大、缩小、平移、全视图等操作重庆交通大学测量与空间信息处理实验室第5页共20页重庆交通大学测量与空间信息处理实验室第6页共20页这样,简单的系统界面就设计出来了。重庆交通大学测量与空间信息处理实验室第7页共20页(实验二)、使用菜单的方法实现地图的各种操作。1、首先在工程界面上右击,选择菜单编辑器对界面进行菜单编辑2、设计好的界面如下3、然后对打开图层的代码进行编写。重庆交通大学测量与空间信息处理实验室第8页共20页效果如下4、分别对视图下面的放大、缩小、平移、全视图的代码进行编写DIMIASINTEGERPRIVATESUBZOOMIN_CLICKI1MAP1MOUSEPOINTERMOZOOMINENDSUBPRIVATESUBZOOMOUT_CLICKI2MAP1MOUSEPOINTERMOZOOMOUTENDSUBPRIVATESUBMOVE_CLICKI3MAP1MOUSEPOINTERMOPAN重庆交通大学测量与空间信息处理实验室第9页共20页ENDSUBPRIVATESUBALLVIEW_CLICKSETMAP1EXTENTMAP1FULLEXTENTMAP1MOUSEPOINTERMOARROWENDSUBPRIVATESUBFILEOPEN_CLICKDIMDCONNASNEWMAPOBJECTS2DATACONNECTIONDIMSHPLAYERASNEWMAPOBJECTS2MAPLAYERDIMFILENAMEASSTRINGCOMMONDIALOG1FILTER“文件类型SHP|SHP“COMMONDIALOG1SHOWOPENIFLENCOMMONDIALOG1FILENAME0THENEXITSUBDCONNDATABASECURDIRIFNOTDCONNCONNECTTHENEXITSUBFILENAMELEFTCOMMONDIALOG1FILETITLE,LENCOMMONDIALOG1FILETITLE4SETSHPLAYERGEODATASETDCONNFINDGEODATASETFILENAMEMAP1LAYERSADDSHPLAYERMAP1REFRESHENDSUBPRIVATESUBMAP1_MOUSEDOWNBUTTONASINTEGER,SHIFTASINTEGER,XASSINGLE,YASSINGLESELECTCASEICASE1SETMAP1EXTENTMAP1TRACKRECTANGLECASE2SETRMAP1EXTENTRSCALERECTANGLE15MAP1EXTENTRCASE3MAP1PANENDSELECTENDSUB5、最后得出一个这样的界面重庆交通大学测量与空间信息处理实验室第10页共20页(实验三)利用TOOLBARBUTTON的命令对地图进行加载、放大、缩小、平移、全视图。1、在第二个实验的基础上,在界面添加TOOLBAR控件、COMMONDIALOG、IMAGELIST控件。右击IMAGELIST属性,选择图像插入图片重庆交通大学测量与空间信息处理实验室第11页共20页2、右击TOOLBAR中得属性选项,选择通用图像列表中得IMAGELIST,在按钮选项中插入按钮,索引对应相应的图像。重庆交通大学测量与空间信息处理实验室第12页共20页3、双击TOOLBAR1、进行代码的编写DIMIASINTEGERPRIVATESUBALLVIEW_CLICKSETMAP1EXTENTMAP1FULLEXTENTMAP1MOUSEPOINTERMOARROWENDSUBPRIVATESUBFILEOPEN_CLICKDIMDCONNASNEWMAPOBJECTS2DATACONNECTIONDIMSHPLAYERASNEWMAPOBJECTS2MAPLAYERDIMFILENAMEASSTRINGCOMMONDIALOG1FILTER“文件类型SHP|SHP“COMMONDIALOG1SHOWOPENIFLENCOMMONDIALOG1FILENAME0THENEXITSUBDCONNDATABASECURDIRIFNOTDCONNCONNECTTHENEXITSUBFILENAMELEFTCOMMONDIALOG1FILETITLE,LENCOMMONDIALOG1FILETITLE4SETSHPLAYERGEODATASETDCONNFINDGEODATASETFILENAMEMAP1LAYERSADDSHPLAYERMAP1REFRESHENDSUBPRIVATESUBMAP1_MOUSEDOWNBUTTONASINTEGER,SHIFTASINTEGER,XASSINGLE,YASSINGLE重庆交通大学测量与空间信息处理实验室第13页共20页SELECTCASEICASE1SETMAP1EXTENTMAP1TRACKRECTANGLECASE2SETRMAP1EXTENTRSCALERECTANGLE15MAP1EXTENTRCASE3MAP1PANENDSELECTENDSUBPRIVATESUBMOVE_CLICKI3MAP1MOUSEPOINTERMOPANENDSUBPRIVATESUBTOOLBAR1_BUTTONCLICKBYVALBUTTONASMSCOMCTLLIBBUTTONSELECTCASEBUTTONKEYCASE“ZOOMIN“CALLZOOMIN_CLICKCASE“ZOOMOUT“CALLZOOMOUT_CLICKCASE“MOVE“CALLMOVE_CLICKCASE“VIEW“CALLALLVIEW_CLICKENDSELECTENDSUBPRIVATESUBZOOMIN_CLICKI1MAP1MOUSEPOINTERMOZOOMINENDSUBPRIVATESUBZOOMOUT_CLICK重庆交通大学测量与空间信息处理实验室第14页共20页I2MAP1MOUSEPOINTERMOZOOMOUTENDSUB4、运行结果如下重庆交通大学测量与空间信息处理实验室第15页共20页(实验四)、使用类模块对SHAPE文件进行加载。1、首先右击窗体添加类模块,2、对类模块进行编码DIMIASINTEGERDIMCASASCLASS1PRIVATESUBFILEOPEN_CLICKSETCNEWCLASS1ENDSUBPRIVATESUBALLVIEW_CLICKSETMAP1EXTENTMAP1FULLEXTENTMAP1MOUSEPOINTERMOARROWENDSUBPRIVATESUBMAP1_MOUSEDOWNBUTTONASINTEGER,SHIFTASINTEGER,XASSINGLE,YASSINGLESELECTCASEICASE1SETMAP1EXTENTMAP1TRACKRECTANGLECASE2SETRMAP1EXTENTRSCALERECTANGLE15重庆交通大学测量与空间信息处理实验室第16页共20页MAP1EXTENTRCASE3MAP1PANENDSELECTENDSUBPRIVATESUBMOVE_CLICKI3MAP1MOUSEPOINTERMOPANENDSUBPRIVATESUBTOOLBAR1_BUTTONCLICKBYVALBUTTONASMSCOMCTLLIBBUTTONSELECTCASEBUTTONKEYCASE“IN“CALLZOOMIN_CLICKCASE“OUT“CALLZOOMOUT_CLICKCASE“VE“CALLMOVE_CLICKCASE“EW“CALLALLVIEW_CLICKENDSELECTENDSUBPRIVATESUBZOOMIN_CLICKI1MAP1MOUSEPOINTERMOZOOMINENDSUB3、打开效果如下重庆交通大学测量与空间信息处理实验室第17页共20页重庆交通大学测量与空间信息处理实验室第18页共20页四、实验总结41、实验中遇到的困难1、在做第一个实验一的时候,由于文件的保存路径不一样,导致加载图层的时候出现错误2、在第二个实验中,程序时的代码出错,导致程序无法运行3、在第三个实验中,无法加载图标或者加载按钮图像的时候,没有显示图像;在加载SHAPE文件后按按钮进行放大、缩小的操作的时候,无法对图像进行放大缩小等操作。42、处理方法和技巧1、处理的方法,在MO的源文件中找到所需要加载的SHAPE文件,然后将整个文件拖到存储VB程序的目录下,这样产生相同的路径,就可以打开,类似FPROGRAMFILESESRIMAPOBJECTS2SAMPLESDATAMEXICO。这样就可运行程序了2、在这个地方出错是因为缺少控件COMMONDIALOG,而导致程序出错。这里只需要加载COMMONDIALOG控件就可以使程序运行3、在第三个实验中,那个按钮图像在加载过程中因为索引号与所要加载的图像号不一样,导致按钮图像无法显示,还有按钮无法运行,是因为在按钮选项中的按钮关键字没有加进去。重庆交通大学测量与空间信息处理实验室第19页共20页43、经验体会和收获在整个实验过程中,我们对于VB和MO程序的基本操作有了一定的了解。各种各样的困难让我们知道了,我们对于VB程序的基本操作不是很熟悉,在代码的编写过程中我们感觉没什么问题,但是在程序运行的的时候,程序总是提示出错,无法运行。有时候向同学请教也无法得到解答,只有自己慢慢的摸索,其中MO的教材中的示例程序。在我们照猫画符的过程中也是出现这样或者那样的错误。很是无奈。出现这样的情况主要是我们对于程序的编写不熟悉,基础不是很牢固,没能简单快速地有效地完成程序,完成老师布置的任务。还有我的心态不够好,在遇到困难的时候总是唉声叹气,而不知道找程序出错的原因。其实程序出错的原因就有一下的几种1、在照搬教材上的程序时不注意自己程序的命名,导致程序出错无法运行。2、自己在编

温馨提示

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

评论

0/150

提交评论