网站大量收购独家精品文档,联系QQ:2885784924

SuperMap實验报告.doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SuperMap實验报告

实验三:SuperMap数据转化与GIS功能设计 一、数据的制作与文件转换 1、使用上次实验所制作的常熟室数据(行政边界、山、水、储备地块等图层); 2、在SuperMap的桌面范例程序中把上述制作的图层转为.sdb文件; 最终效果: 二、系统界面设计与GIS功能实现 在VB中右击,选择部件,选择 1、在form_load事件中编写代码,打开上述.sdb文件; 2、编写代码实现地图放大、缩小、漫游、选择和全图显示功能; Private Sub Command1_Click() 放大 SuperMap1.Action = scaZoomIn End Sub Private Sub Command2_Click() 缩小 SuperMap1.Action = scaZoomOut End Sub Private Sub Command3_Click() 漫游 SuperMap1.Action = scaPan End Sub Private Sub Command4_Click() 选择 SuperMap1.Action = scaSelect End Sub Private Sub Command5_Click() 全图显示 SuperMap1.ViewEntire End Sub 结果: 1)放大; 2)缩小 3)漫游 4)全图显示; 5)选择 3、系统具有自动滚屏功能; Private Sub Option1_Click() If Option1.Value = True Then SuperMap1.MarginPanEnable = True SuperMap1.MarginPanPercent = 0.2 SuperMap1.MarginPanWidth = 10 End If End Sub Private Sub Option2_Click() SuperMap1.MarginPanEnable = False End Sub 4、当用鼠标选中某一多边形对象时,该对象放大到充满整个地图窗口; 先选择‘选择’按钮进行选择,然后点击‘全屏放大对象’,代码如下: Private Sub Command1_Click() Dim sel As soSelection Dim reset As soRecordset Set sel = SuperMap1.Selection Set reset = sel.ToRecordset(False) SuperMap1.EnsureVisibleRecordset reset SuperMap1.Refresh End Sub 5、编写代码,通过消息框(MsgBox)或其他方式输出本系统数据图层的个数; 代码如下: Private Sub Command2_Click() Dim layers As soLayers Dim laycount As Integer Set layers = SuperMap1.layers laycount = layers.Count MsgBox 地图中共有 + Str(laycount) + 个图层, vbOKOnly Set layers = Nothing End Sub 6、对视图实现锁定功能,防止视图的无限制的缩小和漫游; 代码如下: Private Sub Command3_Click() If SuperMap1.LockMapViewBounds = True Then SuperMap1.LockMapViewBounds = False Else SuperMap1.LockMapViewBounds = True End If End Sub 7、编写代码实现地图的偏移,使地图中心点坐标(X,Y)分别偏移100个单位; Private Sub Command4_Click() Dim dmapx As Double Dim dmayy As Double Dim doffsetx As Double Dim doffsety As Double dmapx = 100 dmapy = 100 doffsetx = dmapx + SuperMap1.ViewBounds.CenterPoint.x doffsety = dmapy + SuperMap1.ViewBounds.CenterPoint.y SuperMap1.Pan2 doffsetx, doffsety SuperMap1.Refresh End Sub

您可能关注的文档

文档评论(0)

fv45ffsjjI + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档