ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:5.09MB ,
资源ID:6898107      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6898107.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(超图课程设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

超图课程设计.docx

1、超图课程设计1课题背景 随着网络技术的迅速发展,各种行业纷纷应用网络技术操作和管理。当然大随着网络技术的迅速发展,各种行业纷纷应用网络技术操作和管理。当然学校是一个很大的管理系统,随着学生的大量增加,其管理难度也越来越大,如何将校园导航做好,给予大家提供一定的方便,这就是我们研究这个课题的目的。在计算机迅速发展的今天,将计算机这一信息处理器应用于学生的个人生活之中已是势必所然,而且这也将校园导航带来前所未有的改变。 采用计算机对校园导航是信息科学化和现代化的重要标志,它也给各大高校带来了明显的社会效益。主要体现在:极大地提高了在校师生的方便,给大家对学校的了解,给予了很大的便利。为了能够更好的

2、给在校师生提供一个校园导航,通过对校园各个建筑物进行了解、勘察,同时,我认为本系统会对我们的生活提供极大的便利,具有一定的实际开发价值和使用价值。2需求分析 应用二次开发模式,以Visual Basic为软件环境,运用Super map面向对象的二次开发语言,开发出一个山西农业大学校园电子导航地图。系统应具有以下功能:1校园全貌展示(放大 、缩小、漫游);2普通双向查询,包括图查属性,属性查图功能;3最佳路径分析。2.1地图操作功能 地图显示是地理信息系统的基本模块。在本系统中, 设计了各种地图符号, 使图形简洁而形象。在地图操作功能模块中, 可以快速显示矿大校园地图, 实现地图放大、缩小、全

3、图显示; 二维平面图和三维场景的切换显示; 选择、距离量算、面积量算功能; 模糊查询的实现, 使地图操作更加人性化。2.2信息查询功能 本系统中, 信息查询是一个最主要的功能, 主要实现了区域位置查询、服务信息查询、最近设施查询、路经查询。此项功能帮助用户熟悉校园各类建筑设施的位置及信息, 特别是最优路径查询, 根据用户提供的若干个位置点和选择的交通工具方式, 分析连接各点的最优路径, 在地图上高亮显示, 并且能进行路径导航显示。3.课程设计过程1对校园影响矢量化、专题制作。2实现电子地图的浏览功能3校内单位的查询(地块、建筑物)4导航功能的实现(最佳、最短路径分析)5写出分析、设计报告。4.

4、课程设计任务3.1 专题图制作3.1.1. 总体设计:明确制图目标,搜集专题图制作相关资料与数据,制定专题图技术路线与流程,要求技术路线完整,实施性强; 3.1.2. 详细设计:1)专题图制作所需数据的收集与整理,要求数据的现势性好,精度高;2)地理地图的制作,要求符合国家基本比例尺地形图的要求,内容完整、符合制图规范;3)专题属性信息的整理与编辑,要求信息丰富,现势性好,数据完整准确;4)专题地图的设计与制作,要求制图设计方案合理,颜色协调、符号分级明确;5)专题图的布局与整饰,要求布局合理,要素完善,配置协调。3.2空间分析的应用1. 分析问题,应用GIS空间分析功能设计解决方案;2. 收

5、集必要的数据,进行数据转换、编辑与重分类;3. 依据空间分析模型进行数据的各项空间分析。4. 输出地图、图例及图表等可视化成果;5. 不同分析模型间的成果分析与比较。5.课程设计步骤5.1专题地图的制作 5.1.1 收集山西农业大学遥感地图,可通过稻歌在谷歌地图中进行裁剪,获得底图。图 1 裁剪后农大遥感图 5.1.2 将图片文件转换成shapefile格式导入到Arc map中。图 2 导入5.1.3分别建立底图层、道路层、道路缓冲区层、建筑物层等,进行地图矢量化。图 3 道路层矢量化图 4建筑物层图 5 公共设施层图 6 标记地点名称5.1.4由此,便完成了地理底图的编制。图 7完成地图矢

6、量化5.2查询界面的建立 查询界面阅览5.3 功能实现5.3.1 打开数据并全幅显示关键代码:Private Sub Form_Load() 建立地图窗口与工作空间的联系,用于显示数据 SuperMap1.Connect SuperWorkspace1.Object Dim strAlias As String 数据源别名 Dim nEngineType As seEngineType 数据源引擎类型 Dim strDataSourceName As String 数据源所在路径 Dim objDataSource As soDataSource 数据源对象,指向打开的数据源 Dim bRea

7、dOnly As Boolean 数据源是否只读打开 Dim objLayer As soLayer 图层对象变量,指向将要打开的图层 Dim bAddToHead As Boolean 是否将数据集加到地图最上一层显示 Dim i As Integer 数据集索引 strAlias = MyDataSource 别名可任意,但建议取数据源文件名相同的名称,便于区分 nEngineType = sceSDBPlus 可打开不同引擎的数据源,此处打开文件型 SDBPlus strDataSourceName = C:Program Files (x86)SuperMapSuperMap Desk

8、pro 6Samplessxausxau.sdb 数据源所在路径,也可以是相对路径 bReadOnly = False 非只读打开 打开数据源 Set objDataSource = SuperWorkspace1.OpenDataSource(strDataSourceName, strAlias, nEngineType, bReadOnly) If objDataSource Is Nothing Then MsgBox 打开数据源失败!, vbInformation Else For i = 1 To objDataSource.Datasets.Count 把数据源中的所有数据集加入

9、到 SuperMap 中显示 bAddToHead = True Set objLayer = SuperMap1.Layers.AddDataset(objDataSource.Datasets.Item(i), bAddToHead) Next End If 刷新地图窗口SuperMap1.Refresh 可定制选中对象风格,或保持默认 SuperMap1.selection.style.PenColor = RGB(231, 77, 0) SuperMap1.selection.style.PenWidth = 1 SuperMap1.selection.style.PenStyle =

10、 1 SuperMap1.selection.style.BrushStyle = 5 SuperMap1.selection.style.BrushColor = RGB(115, 69, 140) SuperMap1.selection.style.BrushBackColor = RGB(239, 150, 255) SuperMap1.selection.style.BrushOpaqueRate = 50 释放内存 Set objDataSource = Nothing Set objLayer = NothingEnd SubPrivate Sub Command6_Click()

11、SuperMap1.ViewEntireEnd Sub5.3.2 长度测量并将结果显示在文本框中关键代码:Private Sub Command1_Click()SuperMap1.Action = scaTrackPolylineEnd SubPrivate Sub SuperMap1_Tracking(ByVal x As Double, ByVal y As Double, ByVal dCurrentLength As Double, ByVal dCurrentAngle As Double, ByVal dTotalLength As Double, ByVal dTotalAre

12、a As Double, ByVal nButtonClicked As Long)Dim jieguo As Stringjieguo = 当期长度= + Str(dCurrentLength) + -总长度= + Str(dTotalLength)Text2.Text = jieguoEnd Sub5.3.3 实现自由缩放功能关键代码:Private Sub Command5_Click()SuperMap1.Action = scaZoomFreeEnd Sub5.3.4 实现地图的缩小功能关键代码:Private Sub Command7_Click()SuperMap1.Action

13、 = scaZoomOutEnd Sub5.3.5 实现地图的放大功能关键代码:Private Sub Command4_Click() SuperMap1.Action = scaZoomIn End Sub5.3.6实现图查属性功能关键代码:Private Sub Command8_Click()SuperMap1.Action = scaSelectEnd Sub5.3.7实现属性查图功能关键代码:Private Sub Command9_Click()SuperMap1.Action = scaSelectDim objDs As soDataSource 数据源Dim objDtVe

14、ctor As soDatasetVector 矢量数据集Dim objRecordset As soRecordset 记录集Dim objSelection As soSelection 选择集 取矢量数据集:取其中面数据集World进行查询Set objDs = SuperWorkspace1.Datasources.Item(MyDataSource)If objDs Is Nothing Then Exit SubSet objDtVector = objDs.Datasets(building)If objDtVector Is Nothing ThenMsgBox 打开数据集错误

15、, vbInformationExit SubEnd If 使用 SQ L 过滤条件安从数据集中查询出记录集,SQL 条件的 WHERE 子句部分从编辑框中获取。 ( Query 方法只适用于 soDatasetVector 类对象) Set objRecordset = objDtVector.Query(Text1.Text, True) If objRecordset Is Nothing Then Exit Sub Else 将查询结果加入到选择集中,使其高亮显示 Set objSelection = SuperMap1.selection objSelection.FromRecor

16、dset objRecordset SuperGridView1.Connect objRecordset SuperGridView1. 刷新地图窗口 SuperMap1.Refresh End IfSet objDs = SuperWorkspace1.Datasources.Item(MyDataSource)If objDs Is Nothing Then Exit SubSet objDtVector = objDs.Datasets(building)If objDtVector Is Nothing ThenMsgBox 打开数据集错误, vbInformationExit Su

17、bEnd If 使用 SQ L 过滤条件安从数据集中查询出记录集,SQL 条件的 WHERE 子句部分从编辑框中获取。 ( Query 方法只适用于 soDatasetVector 类对象) Set objRecordset = objDtVector.Query(Text1.Text, True) If objRecordset Is Nothing Then Exit Sub Else 将查询结果加入到选择集中,使其高亮显示 Set objSelection = SuperMap1.selection objSelection.FromRecordset objRecordset Supe

18、rGridView1.Connect objRecordset SuperGridView1. 刷新地图窗口 SuperMap1.Refresh End If End Sub5.3.8实现地图的漫游功能漫游前漫游后向右漫游向左漫游关键代码:Private Sub Command3_Click()SuperMap1.Action = scaPanEnd Sub5.3.9闪烁功能与风格设置关键代码:Private Sub Timer1_Timer()Dim selection As soSelectionSet selection = SuperMap1.selectionIf selection

19、.Count = 1 ThenDim recordset As soRecordsetSet recordset = selection.ToRecordset(False)recordset.MoveFirstSet gemtry = recordset.GetGeometryDim style As New soStyle 定义跟踪点风格变量selection.RemoveAllEnd IfIf tm Mod 2 = 0 ThenWith style.PenColor = vbRed.PenWidth = 5.BrushColor = vbYellow.BrushStyle = 10End

20、 WithElseWith style.PenColor = vbGreen.PenWidth = 5.BrushColor = vbRed.BrushStyle = 10End WithEnd IfSuperMap1.TrackingLayer.ClearEventsSuperMap1.TrackingLayer.AddEvent gemtry, style, 闪烁对象SuperMap1.TrackingLayer.Refreshtm = tm + 1End Sub5.3.10 查询最短路径关键代码:Private Sub Command2_Click()Dim objNetAnalyst

21、As New soNetworkAnalyst 网络分析对象 Dim objDTV As soDatasetVector 网络数据集 Dim objSelection As soSelection 网络分析结果的选择集 获得网络数据集) Set objDTV = SuperMap1.Layers(1).Dataset If objDTV Is Nothing Then Exit Sub 进行最佳路径的网络分析,并将结果显示 Set objSelection = objNetAnalyst.FindPathEx(objDTV, objfrompoint, objtopoint, 1000, Tr

22、ue) If objSelection Is Nothing Then MsgBox 分析失败!, vbInformation Exit Sub Else SuperMap1.selection.RemoveAll Set SuperMap1.selection = objSelection End If SuperMap1.Refresh Set objNetAnalyst = Nothing Set objDTV = Nothing Set objfrompoint = Nothing Set objSelection = Nothing Set objtopoint = NothingE

23、nd SubPrivate Sub Command10_Click()qi = TrueSuperMap1.Action = scaSelectEnd SubPrivate Sub Command11_Click()zhong = TrueSuperMap1.Action = scaSelectEnd SubPrivate Sub SuperMap1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If qi = True Then objfrompoint.x = SuperMap1.PixelT

24、oMapX(ScaleX(x, vbTwips, vbPixels) objfrompoint.y = SuperMap1.PixelToMapY(ScaleY(y, vbTwips, vbPixels) qi = False End IfIf zhong = True Then objtopoint.x = SuperMap1.PixelToMapX(ScaleX(x, vbTwips, vbPixels) objtopoint.y = SuperMap1.PixelToMapY(ScaleY(y, vbTwips, vbPixels) zhong = False End IfEnd Sub

25、6.课程设计总结6.1成员分工 杜会芳:负责专题地图的矢量化处理;高婷、关晓丹:负责地图的功能实现;周小驰:整理分析课程设计总结。6.2心得体会在这次GIS的课程设计中我们小组确实付出很多的努力,以前的实验总是按照书本来操作,但是这次有些不同,虽然有借鉴之处,除此之外自己不仅提高GIS的应用基础,而且在一定程度上更加深层次的了解到GIS的作用及功能,为以后的会提供了很好的基础。通过此次课程设计,使我们更加扎实的掌握了有关ArcGis方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我们在这方面的知识欠缺和经验不足。实践出真知,

26、通过亲自动手操作,使我们掌握的知识不再是纸上谈兵。在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获取。最终的检测调试环节,我们小组组员为每一个错误的修改正确而欢呼。 通过这次课程设计,认识到这个软件的强大及方便。我们巩固了对地理信息系统数据结构理解,基本上掌握了地理信息系统空间数据库的设计思路,掌握了GIS基础平台的使用方法,包括数据的输入、数据的处理、图形的编辑、数据库设计、空间分析和专题地图的输出等,为以后的学习奠定了基础。回顾起此课程设计,至今我们仍感慨颇多,从理论到实践,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。此次设计也让我们明白了思路即

27、出路,有什么不懂不明白的地方要及时请教或上网查询,只要认真钻研,动脑思考,动手实践,就没有弄不懂的知识,收获颇丰。6.3 结语校园导航系统的建立是校园数字化的一种表现。同时为学校日后建立科学、智能、网络一体化的综合校园管理体系奠定了基础。本校园导航系统应用SuperMap Deskpro 6, 实现了图形数据编辑处理, 其为校园导航系统提供了可有效使用的地理底图。利用SuperMap Objects 全面的GIS功能, 使系统实现了属性数据与空间数据双向查询、空间分析、空间数据的数据库存储与管理等功能。7.附录 全体实现代码Public tm As Integer Public gemtry

28、As soGeometryPrivate Sub Command1_Click()SuperMap1.Action = scaTrackPolylineEnd Sub Private Sub Command2_Click() Dim objNetAnalyst As New soNetworkAnalyst 网络分析对象 Dim objDTV As soDatasetVector 网络数据集 Dim objSelection As soSelection 网络分析结果的选择集 Dim objfrompoint As soPoint Dim objtopoint As soPoint 获得网络数

29、据集 Set objDTV = SuperMap1.Layers(1).Dataset If objDTV Is Nothing Then Exit Sub 进行最佳路径的网络分析,并将结果显示 Set objSelection = objNetAnalyst.FindPathEx(objDTV, objfrompoint, objtopoint, 1000, True) If objSelection Is Nothing Then MsgBox 分析失败!, vbInformation Exit Sub Else SuperMap1.selection.RemoveAll Set Supe

30、rMap1.selection = objSelection End If SuperMap1.Refresh Set objNetAnalyst = Nothing Set objDTV = Nothing Set objfrompoint = Nothing Set objSelection = Nothing Set objtopoint = NothingEnd SubPrivate Sub Command3_Click() SuperMap1.Action = scaPanEnd SubPrivate Sub Command4_Click() SuperMap1.Action = scaZoomInEnd SubPrivate Sub Command5_Click()SuperMap1.Action = scaZoomFreeEnd SubPrivate Sub Command6_Click()SuperMap1.ViewEntireEnd SubPrivate Sub Command7_Click() Supe

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1