




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、昨天现学现卖,帮小慧写了Mapbasic 的一些小程序主要功能:面积计算,条件查询。虽然第一次写GIS的二次开发程序,不过感觉上手真的很快。也就是用了1个半小时,就把大概的知识点过了一遍,接着就开始对着Mapbasic开始敲键盘。不过毕竟没有基础,写出来的程序很丑陋(不会basic语言,所以很多东西写得特别长在此把代码贴出,希望路过的朋友,可以看看。nclude "mapbasic.def"Include "menu.def"declare Sub 道路declare Sub 高薪产业区declare Sub 工业发展用地declare Sub 教育科研
2、用地declare Sub 居住用地declare Sub 绿地declare Sub 行政办公用地declare Sub 文化娱乐用地declare Sub 面积Declare Sub duihuaDeclare Sub MainDeclare Sub tiaojianDim mianji as FloatDim i as IntegerDim mianji1 as floatDim zongmianji1 as floatDim jilushu as IntegerSub MainCreate Menu "条件查询" as "请输入条件" Calli
3、ng tiaojianAlter Menu Bar Add "条件查询"Create Menu "统计查询" as "面积" Calling duihuaAlter Menu Bar Add "统计查询"Create Menu "分类查询" as "道路" Calling 道路,"高薪产业区" Calling 高薪产业区,"工业发展用地" Calling 工业发展用地,"教育科研用地" Calling 教育科研用地,
4、"居住用地" Calling 居住用地,"绿地" Calling 绿地,"行政办公用地" Calling 行政办公用地,"文化娱乐用地" Calling 文化娱乐用地Alter Menu Bar Add "分类查询"End SubSub tiaojianDim yongdileixing as StringDim xiao,da as IntegerDialogTitle "条件查询"Control StaticTextInto yongdileixingControl St
5、aticTextTitle "查询的用地类型"Control EditTextInto yongdileixingControl StaticTextTitle "面积的最小值"Control EditTextInto xiaoControl StaticTextTitle "面积的最大值"Control EditTextInto daControl OkButtonTitle "确定"Control CancelButtonTitle "取消"Open Table "c:shix&q
6、uot; + yongdileixingIf yongdileixing = "教育科研用地" ThenFetch First From 教育科研用地Do While Not EOT(教育科研用地mianji = Area(教育科研用地.obj,"sq km"If CommandInfo (CMD_INFO_DLG_OK ThenIf mianji>=xiao and mianji<=da Theni = i + 1Print "教育科研用地id:" + i + "面积:" + Str$(mianjiE
7、nd IfElsePrint "没有您要搜索的对象名称"End IfFetch Next From 教育科研用地LoopEnd IfIf yongdileixing = "居住用地" ThenFetch First From 居住用地Do While Not EOT(居住用地mianji = Area(居住用地.obj,"sq km"If CommandInfo (CMD_INFO_DLG_OK ThenIf mianji>=xiao and mianji<=da Theni = i + 1Print "居住用地
8、id:" + i + "面积:" + Str$(mianjiEnd IfElsePrint "没有您要搜索的对象名称"End IfFetch Next From 居住用地LoopEnd IfIf yongdileixing = "道路" ThenFetch First From 道路Do While Not EOT(道路mianji = Area(道路.obj,"sq km"If CommandInfo (CMD_INFO_DLG_OK ThenIf mianji>=xiao and mianji&
9、lt;=da Theni = i + 1Print "道路id:" + i + "面积:" + Str$(mianjiEnd IfElsePrint "没有您要搜索的对象名称"End IfFetch Next From 道路LoopEnd IfIf yongdileixing = "高薪产业区" ThenFetch First From 高薪产业区Do While Not EOT(高薪产业区mianji = Area(高薪产业区.obj,"sq km"If CommandInfo (CMD_IN
10、FO_DLG_OK ThenIf mianji>=xiao and mianji<=da Theni = i + 1Print "高薪产业区id:" + i + "面积:" + Str$(mianjiEnd IfElsePrint "没有您要搜索的对象名称"End IfFetch Next From 高薪产业区LoopEnd IfIf yongdileixing = "文化娱乐用地" ThenFetch First From 文化娱乐用地Do While Not EOT(文化娱乐用地mianji = A
11、rea(文化娱乐用地.obj,"sq km"If CommandInfo (CMD_INFO_DLG_OK ThenIf mianji>=xiao and mianji<=da Theni = i + 1Print "文化娱乐用地id:" + i + "面积:" + Str$(mianjiEnd IfElsePrint "没有您要搜索的对象名称"End IfFetch Next From 文化娱乐用地LoopEnd IfIf yongdileixing = "行政办公用地" Then
12、Fetch First From 行政办公用地Do While Not EOT(行政办公用地mianji = Area(行政办公用地.obj,"sq km"If CommandInfo (CMD_INFO_DLG_OK ThenIf mianji>=xiao and mianji<=da Theni = i + 1Print "行政办公用地id:" + i + "面积:" + Str$(mianjiEnd IfElsePrint "没有您要搜索的对象名称"End IfFetch Next From 行政
13、办公用地LoopEnd IfIf yongdileixing = "工业发展用地" ThenFetch First From 工业发展用地Do While Not EOT(工业发展用地mianji = Area(工业发展用地.obj,"sq km"If CommandInfo (CMD_INFO_DLG_OK ThenIf mianji>=xiao and mianji<=da Theni = i + 1Print "工业发展用地id:" + i + "面积:" + Str$(mianjiEnd IfE
14、lsePrint "没有您要搜索的对象名称"End IfFetch Next From 工业发展用地LoopEnd IfIf yongdileixing = "绿地" ThenFetch First From 绿地Do While Not EOT(绿地mianji = Area(绿地.obj,"sq km"If CommandInfo (CMD_INFO_DLG_OK ThenIf mianji>=xiao and mianji<=da Theni = i + 1Print "绿地id:" + i +
15、"面积:" + Str$(mianjiEnd IfElsePrint "没有您要搜索的对象名称"End IfFetch Next From 绿地LoopEnd IfEnd SubSub duihuaDim search As StringDialogTitle "面积查询"Control StaticTextTitle "输入您要查询的用地类型"Control EditTextInto searchControl OKButtonTitle "确定"Control CancelButtonTit
16、le "取消"Open Table "C:shix" + searchIf search = "教育科研用地" ThenDim i,counter as IntegerFetch First From 教育科研用地Do While Not EOT(教育科研用地mianji1 = Area(教育科研用地.obj,"sq km"i = i + 1If CommandInfo (CMD_INFO_DLG_OK Thenprint "教育科研用地id" + i +":" + Str$
17、(mianji1Else print "没有您要搜索的对象名称" End If zongmianji1 = zongmianji1 + mianji1 Fetch Next From 教育科研用地 Loop print "教育科研用地总面积为:" + Str$(zongmianji1 End If If search = "高薪产业区" Then Dim a as Integer Fetch First From 高薪产业区 Do While Not EOT(高薪产业区 mianji1 = Area(高薪产业区.obj,"s
18、q km" a = a + 1 If CommandInfo (CMD_INFO_DLG_OK Then print "高薪产业区 id" + a + ":"+Str$(mianji1 Else print "没有您要搜索的对象名称" End If zongmianji1 = zongmianji1 + mianji1 Fetch Next From 高薪产业区 Loop print "高薪产业区总面积为:" + Str$(zongmianji1 End If If search = "居住用地
19、" Then Dim b as Integer Fetch First From 居住用地 Do While Not EOT(居住用地 mianji1 = Area(居住用地.obj,"sq km" b = b + 1 If CommandInfo (CMD_INFO_DLG_OK Then print "居住用地 id" +b+ ":" + Str$(mianji1 Else print "没有您要搜索的对象名称" End If zongmianji1 = zongmianji1 + mianji1 F
20、etch Next From 居住用地 Loop print "居住用地总面积为:" + Str$(zongmianji1 End If If search = "行政办公用地" Then Dim c as Integer Fetch First From 行政办公用地 Do While Not EOT(行政办公用地 mianji1 = Area(行政办公用地.obj,"sq km" c = c + 1 If CommandInfo (CMD_INFO_DLG_OK Then print "行政办公用地 id"+c
21、 +":"+ Str$(mianji1 Else print "没有您要搜索的对象名称" End If zongmianji1 = zongmianji1 + mianji1 Fetch Next From 行政办公用地 Loop print "行政办公用地总面积为:" + Str$(zongmianji1 End If If search = "文化娱乐用地" Then Dim d as Integer Fetch First From 文化娱乐用地 Do While Not EOT(文化娱乐用地 mianji1
22、 = Area(文化娱乐用地.obj,"sq km" d = d + 1 If CommandInfo (CMD_INFO_DLG_OK Then print "文化娱乐用地 id" +d+":"+ Str$(mianji1 Else print "没有您要搜索的对象名称" End If zongmianji1 = zongmianji1 + mianji1 Fetch Next From 文化娱乐用地 Loop print "文化娱乐用地总面积为:" + Str$(zongmianji1 En
23、d If If search = "绿地" Then Dim r as Integer Fetch First From 绿地 Do While Not EOT(绿地 mianji1 = Area(绿地.obj,"sq km" r = r + 1 If CommandInfo (CMD_INFO_DLG_OK Then print "绿地 id" +r+":"+ Str$(mianji1 Else print "没有您要搜索的对象名称" End If zongmianji1 = zongmian
24、ji1 + mianji1 Fetch Next From 绿地 Loop print "绿地总面积为:" + Str$(zongmianji1 End If If search = "道路" Then Dim v as Integer Fetch First From 道路 Do While Not EOT(道路 v = v + 1 mianji1 = Area(道路.obj,"sq km" If CommandInfo (CMD_INFO_DLG_OK Then print "道路 id" +v+":" +Str$(mianji1 Else print "没有您要搜索的对象名称" End If
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车抵押借款合同范本
- 基础化学模拟练习题+参考答案
- 植物题库+答案
- 小学五年级数学上册口算能力竞赛测试题
- 小仓鼠作文指导课件
- 简易农业劳动者劳务合同
- 船运公司海上运输合同范本
- 2025年部编版道德与法治四年级下册第四单元复习课教案
- 二手设备买卖合同范本
- 药品管理经验分享
- 2023年高考真题-历史(辽宁卷) 含答案
- 2024年湖北省武汉市中考英语真题(含解析)
- 诺如病毒课件教学课件
- 钢结构廊架工程施工方案
- 2023年北京市初三二模数学试题汇编:新定义(第28题)
- 七年级下册道德与法治第二单元《焕发青春活力》测试卷、答案及解析
- 项目二 物流基本功能活动管理
- 融资借款合同协议书范本(2024版)
- 工程项目审核现场踏勘记录表
- 江苏省仪征市第三中学苏少版八年级下册音乐教案(图片版):第三单元 第二课时 共和国之恋教案1000字
- 2022-2023学年新疆维吾尔自治区喀什地区喀什市人教版六年级下册期中测试数学试卷
评论
0/150
提交评论