[摘 要]WebGIS与现代远程教育深度融合,促进了现代远程教育信息化、网络化、智能化和可视化发展。文章从WebGIS和远程教育地图的概念出发,介绍了WebGIS技术在远程教育地图系统开发的需求分析、设计方案、系统结构和功能模块等,并进行了运行测试,最后探讨了位置服务应用在远程教育地图中的意义。
[关键词]WebGIS;远程教育;远程教育地图;数字化学习
[中图分类号]G434 [文献标识码]A [文章编号]1008-7656(2019)03-0022-04
引言
现代远程教育是以网络技术、信息技术为基础的一种新型教育形态或教学模式。推广并使用现代远程教育技术,不仅需要依托强大的信息化基础设施为支撑,也需要雄厚的资金支持才能取得快速发展。远程教育具有普通教育不可比拟的网络优势,比如,电大系统开展的远程教育,其网络技术、学习机构布局,大大突破时空、地域限制;其丰富的学习资源,可以覆盖城乡的各个角落,为社会个体创造“人人可学,时时能学”的机会[1]。在我国教育事业发展过程中,远程教育机构主要包括普通高校的网络教育学院(远程教育学院)、各级开放大学(广播电视大学系统)和社会各类远程教育培训机构等[2]。这些远程教育机构,不但要有完善的教育基础硬件设施,也需要有优良的教育教学师资力量,更离不开现代信息技术的强力支撑。将WebGIS引入到现代远程教育中,既可以共享教育数据信息,也可以方便学习者寻找学習资源,促进学习者之间的沟通和交流,Web教育地图是未来远程教育发展的重要技术手段。研究GIS基础算法,准确判断不同类型空间实体之间的位置关系[3], 能为GIS的Web应用奠定良好基础。文章在参考Web地图和信息技术教育研究的基础上,提出“WebGIS技术在远程教育中的应用”模型,其目的是为了在远程教育中应用Web地图,对“远程教育地图”的理论创新和Web应用提供参考。
一、基本概念
(一)WebGIS
WebGIS是将Web技术应用在GIS信息服务及产品开发中,将Web页面作为GIS服务界面,提供地图数据发布、查询、共享、交流协作和业务处理能力,包括集中模型、C/S模式和B/S模式。
(二)远程教育地图
远程教育地图是现代远程教育理论和方法与GIS地图服务为代表的信息技术相结合的产物,主要为远程学习者提供地图数据查询服务,将地理信息技术应用到远程教育学习模式改革中,创新远程教育学习理论和方法,实现教育资源、社会、地理位置一体化的有效配置和合理安排。
二、需求分析
(一)跨区域学习
随着教育技术的快速发展,对教育信息化提出了更高要求,将人工智能、移动学习、网络技术、位置服务等各类信息技术广泛与远程教育相融合,应用领域越来越趋向智能化、跨地区、同步性和协作发展。但是,传统的数字化学习通常是在平台中学习固定的资源,学科之间和地区之间缺乏必要的联系和沟通,学习资源共享比较困难,造成学习资源的重复建设和浪费,产生数据孤岛。
(二)社区参与建设
现代远程教育更多的是服务开放教育教学和学习,很少让社区居民参与到数字化学习资源建设中,其主要原因是由于部分教育资源未真正面向社会开放和位置服务信息不够方便,信息传递的可达性较差,较多社区居民未听说过远程数字化教育相关内容。另一方面,要让社区居民参与远程教育数字化建设,不得不有意识地提高居民的文化素质,这就要求系统为注册用户提供学习规则和知识推荐等。
(三)系统业务规划
系统业务涉及到功能模块、服务对象和服务流程等内容,是远程数字化学习的核心内容。支持位置信息的远程学习服务不仅在远程教育模式创新中有着重要作用,还可为社区学习者和开放教育学生提供空间位置服务。
(四)个性化在线学习
社区教育和开放教育面向的服务对象大多是非全日制学习者,学习时间和学习地点都不确定,传统模式的固定面授无疑会带来教学进度缓慢、学习效率低等不足,同时也给教学管理者和教师带来时间方面的不便。在线学习不仅可以缓解教学管理者的压力,也可以方便学习者在任意空闲时间找到最邻近的学习点,查询自己最感兴趣的学习资料,通过各类终端进行个性化学习。
(五)信息共享
利用WebGIS技术,选择基于B/S架构的标准三层结构体系,结合Web地图路线规划和数据分析模块,改变传统的C/S地图数据处理和访问固定的学习资源,从根本上解决空间数据共享与互操作,降低产生信息孤岛的可能性,实现跨区域资源共享,学习者查询和统计学习概况更加方便。
三、远程教育地图系统设计方案
1.支持Web地图服务的远程教育学习平台采用B/S三层架构WebGIS模型,利用中间件技术框架(如图1所示)将GIS应用系统转换为Web服务[4], 结合.Net、Web和百度地图,运行在微软IIS组件服务器上,提供空间信息管理、查询及输出结果的网络访问服务。
图1 GIS中间件结构示意图
2.使用面向对象的分析和设计方法,借助UML进行系统的功能结构设计。
3.借助RSRI公司的ArcIMS和Visual Studio .Net为开发环境。
4.ArcXML请求Application服务器和百度地图API数据访问接口。
5.使用JavaScript脚本语言在客户端进行界面和功能设计。
6.借助微信web开发者工具V.02.1901230,利用微信小程序完成远程教育地图移动端的开发与设计。
四、系统模型结构及功能
(一)模型的结构
支持地理位置服务的远程教育地图系统结构原理包括用户使用浏览器访问系统授权的数据和信息,提供了直接访问方式和间接访问方式,直接访问方式就是充分利用GIS构件,再通过GIS服务器访问GIS数据库,获取所需的信息,完成空间分析功能。间接方式是将数据处理请求提交到Web服务器,再通过构件访问GIS服务器获得空间数据库的地理数据。远程教育地图系统结构功能见下页图2。
(二)系统主要功能介绍
远程教育地图系统主要包括如下功能模块。
1.空间信息、属性信息的双向查询。在WebGIS地图上,可以根据地图实体的属性查询实体的空间信息,也可以根据实体的空间信息查询实体的属性(详细地址、联系电话和基本简介)等,还可查询实体周围的环境、酒店、餐馆、银行、医院和公交站等便利数据,进行最近路线规划及查询,可以将二维平面实体图与卫星影像无缝切换,实现卫星遥感数据和场景要素的动态显示。
2.地图实体属性管理。在系统中,可以设置地理实体的名称、所属类别、联系电话、地理位置(经纬度)、详细地址、开放时间等信息。
3.用户管理。主要是设置用户的账号和密码、所属部门、用户权限分组等信息。
4.功能模型及应用管理。该模块可以实现系统功能的无限扩展,可任意添加功能模型,自定义模型的数据表,完成数据表的结构设计,定义数据字段(单行文本、多行文本、下拉列表、复选框、单选框、日期、日期+时间、文件、绑定其他单个模型、上传多图、密码、组织架构、身份证文本、地理经纬度、绑定其他多个模型等),定义字段类型(输入项、检索项、必填项和管理项),字段状态等。
5.标签及数据接口。可自定义数据接口、自定义数据标签、自定义SQL数据查询,实现功能模块的二次开发。
6.空间分析。可在平面地图上进行欧几里得的空间距离分析,完成空间实体的缓冲区分析、实体的非直线距离测算等功能,并将专题地图加载完成后,联合显示地图数据。
7.学习资源库。通过系统功能定义学习资源模型,包括学习资源标题、发布者、資源类型、形式和内容,按一定的标准添加的系统中。学习者利用学习资源模块使用关键词能快速检索到所需学习资源。
8.移动端微信小程序。在移动终端采用html5技术通过调用百度API对地图数据进行访问,在申请访问百度地图密钥和相关信息的前提下,地图开发者可以免费调用百度API数据访问接口。本系统以南宁市中心经纬度为固定地位坐标,具体实现代码如下:
<view style=‘height:{{screenHeight}}px’>
<map id=“myMap”show-location longitude=“108.297233556”latitude=“22.8064929356”markers=“{{markers}}”/>
</view>
远程教育地图系统的核心是显示整个南宁市地图,装入微信小程序以后,主要是将用户的位置实时定位在地图上,定位功能主要调用geolocation.getCurrentPosition函数,实现代码:
<script>
var map=new BMap.Map(“allmap”);
var point=new BMap.Point(经度,纬度);
map.centerAndzoom(point,12);
var geolocation=new BMap.Geolocation();
geolocation.getcurrentPosition(function(r){
if(this.getStatus()=BMAP_STATUS_SUCCESS){
var mk=new BMap.Marker(r.point);
map.addOverlay(mk);
map.panTo(r.point);}
else {alert(’failed’+this.getStatus());}
},{enableHighAccuracy:true})
</script>
为学习者规划步行路线,实现核心代码:
var map = new BMap.Map(“allmap”);
map.centerAndZoom(new BMap.Point(经度, 纬度), 11);
var walking = new BMap.WalkingRoute(map, {renderOptions:{map: map, autoViewport: true}});
walking.search(“起点”,“终点”);
</script>
通过BMap.DrivingRoute函数还可以为学习者提供驾驶路线的时间和最短距离。
在Utils文件夹中,主要包括app.js,app.json,app.wxss[5]。其中app.js文件中data类的locurl: 主要是设置网络访问地址;app.json文件,主要是定义pages和Window属性。在Index文件夹中,主要包括map.js,map.json,map.wxml,map.wxss,qqmap-wx-jssdk.js文件,其中map.js主要是对页面初始设置,wx.getLocation定义页面地图位置,wx.setNavigationBarTitle定义地图主题,onReady:初次监听页面完成,onShow:页面显示,onHide:监听页面隐藏,onUnload监听页面卸载;map.wxml初始化定义地图实体,并设置地图中心位置的经纬度。qqmap-wx-jssdk.js中getWXLocation使用微信接口进行定位,getLocationParam获取位置参数,calculateDistance用于单起点到多终点的路线距离(非直线距离)计算,getDistrictByCityId获取对应城市ID的区县列表,geocoder地址解析,reverseGeocoder逆地址解析,getSuggestion用于模糊检索,search用于POI周边检索。
五、结语
支持地理位置服务的远程教育地图系统,可以从不同层次、不同角度为不同需求的用户提供高效、丰富的空间位置信息和学习支持服务,从而满足各种信息查询需求,学习者既可以从系统获取必要的知识和教学资源,也可以为学习者步行或驾驶提供智能的路线规划服务,满足社区居民和远程教育学习者获取咨询的能力。将WebGIS与远程数字化学习进行深度融合,开发设计远程教育地图,在开发过程中使用地图API访问接口,设计者只需了解获取和转换地理坐标的方法,熟悉创建流程和必要的类,结合自定义模型开发设计,可高效创建地图交互应用。在应用过程中,学习者只需打开手机微信小程序或者PC就可以快速利用远程教育地图系统相关资源。经过实践开发,将WebGIS信息服务引入到远程教育中,不仅提供了新的教育信息化手段,也使学习者能快速查询到最邻近的学习资源并通过智慧交通规划出最短的路程,提高学习者的学习效率。
[参考文献]
[1]段然.现代远程教育促进教育公平的功能探究[J].继续教育研究,2017(4).
[2]朱静.现代远程教育中新技术应用的反思[J].成人教育,2018(4).
[3]向俊,王静,夏幼明.判断点与多边形拓扑关系的改进算法[J].计算机工程与设计,2014(5).
[4]冯晋军,王颖.基于Web服务的WebGIS 技术研究[J].华北电力大学学报,2006(2).
[5]武思怡,解佺.微信小程序开发研究[J].无线互联科技,2018(11).