版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 曹冲称象的故事 第02课时 称重我很行(教学课件)数学人教版三年级上册(新教材)
- 钳工装配竞赛试题及答案
- 磁悬浮与轨道交通
- 2026永宁三沙源上游学校招聘初高中教师、校医9人模拟试卷附答案详解(A卷)
- 南宁中考历史试题及答案
- 心理医生考试试题及答案
- 第4节 澳大利亚
- 出纳费用会计岗面试指南:现金管理与报销审核
- 新型储能系统并网与智能化控制
- 2026年浙江省金华市永康卫生学校雇员制教师招聘8人参考题库含完整答案详解(各地真题)
- 广东2026年三支一扶《综合知识》真题及答案解析
- 2026山东能源集团所属企业招聘笔试历年典型考点题库附带答案详解
- 2026四川成都市锦江发展集团下属锦发展生态公司下属公司项目制员工第一次招聘7人笔试历年典型考点题库附带答案详解
- 2026年4月自考00067财务管理学试题及答案含评分参考
- 2026中国细胞治疗产品审批路径与商业化模式研究报告
- 广东省深圳市南山区2024-2025学年三年级下册期中考试数学试卷(含答案)
- 2025年贵州铜仁市地理生物会考考试真题及答案
- 2026年2年级期末考试卷及答案
- 千年香脉:传统制香非遗技艺的传承与复兴
- 2026年国家开放大学电大本科人文英语期末模拟题库含完整答案详解【必刷】
- 泰安市泰山区2025-2026学年第二学期五年级语文期末考试卷(部编版含答案)
评论
0/150
提交评论