- 浏览: 5172871 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
silence19841230:
先拿走看看
SpringBoot2.0开发WebSocket应用完整示例 -
wallimn:
masuweng 写道发下源码下载地址吧!三个相关文件打了个包 ...
SpringBoot2.0开发WebSocket应用完整示例 -
masuweng:
发下源码下载地址吧!
SpringBoot2.0开发WebSocket应用完整示例 -
masuweng:
SpringBoot2.0开发WebSocket应用完整示例 -
wallimn:
水淼火 写道你好,我使用以后,图标不显示,应该怎么引用呢,谢谢 ...
前端框架iviewui使用示例之菜单+多Tab页布局
时间:2016-02-26,欢迎转载,转载请保留本文地址: http://wallimn.iteye.com/blog/2279201
初学GeoServer、OpenLayers,折腾了几天,终于完成了一个简单的任务:使用GeoServer发布KML数据,WEB页面通过OpenLayers打开,实现显示框选的元素。简单记录一下过程,希望对摸索技术的朋友有所帮助。
GeoServer的版本为:2.7.5,OpenLayers的版本为:3.14.0。
框选的效果与OL的版本有较大关系,注意要使用最新版本。使用GeoServer自带的OL,框选的时候不显示选框。
一、启动GeoServer
使用GeoServer自带的数据做试验,选择一个点元素图层“tiger:poi”,在预览界面生成KML数据文件【All format下拉选框中选择KML(plain)】,将这个文件保存为poi.kml。
二、创建网页文件
进入Tomcat的工程目录,webapps\ROOT目录中,创建bs.html文件。文件内容主要来自于官网的例子,与地图显示相关的部分进行了相应的修改,如坐标系设置、边界、地图大小自适应等。
文件内容如下:
三、设置数据文件
将第一页生成的poi.kml文件,放到bs.html网页文件所在的目录。
四、通过浏览器访问网页
我的地址是http://localhost:8080/bs.html,请根据实际情况进行修改。框选时,按住Ctrl键(MAC系统,使用Command键)。
对不起,浅尝辄止地了解了一下,没有深入研究,也没有实际应用。不能回答你们的问题。
初学GeoServer、OpenLayers,折腾了几天,终于完成了一个简单的任务:使用GeoServer发布KML数据,WEB页面通过OpenLayers打开,实现显示框选的元素。简单记录一下过程,希望对摸索技术的朋友有所帮助。
GeoServer的版本为:2.7.5,OpenLayers的版本为:3.14.0。
框选的效果与OL的版本有较大关系,注意要使用最新版本。使用GeoServer自带的OL,框选的时候不显示选框。
一、启动GeoServer
使用GeoServer自带的数据做试验,选择一个点元素图层“tiger:poi”,在预览界面生成KML数据文件【All format下拉选框中选择KML(plain)】,将这个文件保存为poi.kml。
二、创建网页文件
进入Tomcat的工程目录,webapps\ROOT目录中,创建bs.html文件。文件内容主要来自于官网的例子,与地图显示相关的部分进行了相应的修改,如坐标系设置、边界、地图大小自适应等。
文件内容如下:
<!DOCTYPE html> <html> <head> <title>GeoStudy--by wallimn</title> <link rel="stylesheet" href="http://openlayers.org/en/v3.14.0/css/ol.css" type="text/css"> <script src="http://openlayers.org/en/v3.14.0/build/ol.js"></script> <style> .ol-dragbox { background-color: rgba(255, 255, 255, 0.4); border-color: rgba(100, 150, 0, 1); } </style> </head> <body> <div id="map" class="map" style="border: 1px solid red;"></div> <div id="info">No countries selected</div> <script type="text/javascript"> //by wallimn, http://wallimn.iteye.com, 2016-02-26 //以下两个参数,通过GeoServer,查看图层属性可获取 var projection = ol.proj.get('EPSG:4326'); var bounds = [ -74.0118315772888, 40.70754683896324, -74.00153046439813, 40.719885123828675 ]; var vectorSource = new ol.source.Vector({ //1.通过GeoServer生成的KML文件,保存到此网页文件所在的目录 //2.也可以直接使用生成这个文件的链接,动态生成数据文件 url : 'poi.kml', format : new ol.format.KML() }); var vectorLayer = new ol.layer.Vector({ source : vectorSource }); var map = new ol.Map({ layers : [ vectorLayer ], renderer : 'canvas', target : 'map', view : new ol.View({ projection : projection }) }); map.getView().fit(bounds, map.getSize()); // a normal select interaction to handle click var select = new ol.interaction.Select(); map.addInteraction(select); var selectedFeatures = select.getFeatures(); // a DragBox interaction used to select features by drawing boxes var dragBox = new ol.interaction.DragBox({ condition : ol.events.condition.platformModifierKeyOnly }); map.addInteraction(dragBox); var infoBox = document.getElementById('info'); dragBox.on('boxend', function() { // features that intersect the box are added to the collection of // selected features, and their names are displayed in the "info" // div var info = []; var extent = dragBox.getGeometry().getExtent(); vectorSource.forEachFeatureIntersectingExtent(extent, function( feature) { selectedFeatures.push(feature); info.push(feature.get('name')); }); if (info.length > 0) { infoBox.innerHTML = info.join(', '); } }); // clear selection when drawing a new box and when clicking on the map dragBox.on('boxstart', function() { selectedFeatures.clear(); infoBox.innerHTML = ' '; }); map.on('click', function() { selectedFeatures.clear(); infoBox.innerHTML = ' '; }); </script> </body> </html>
三、设置数据文件
将第一页生成的poi.kml文件,放到bs.html网页文件所在的目录。
四、通过浏览器访问网页
我的地址是http://localhost:8080/bs.html,请根据实际情况进行修改。框选时,按住Ctrl键(MAC系统,使用Command键)。
- src.rar (131.6 KB)
- 下载次数: 70
评论
6 楼
jcrack
2018-01-24
0123456789abcdefghij01234567890123456789abcdefghij0123456789
5 楼
jcrack
2018-01-23
0123456789abcdefghij0123456789
4 楼
yy64566496
2017-11-15
现在使用文件形式可以显示数据,但是第二点您说 使用生成文件的链接,这个是怎么得到链接的?
3 楼
wallimn
2017-03-24
巩大星 写道
就是用官方的例子中的kml文件,可以在openlayers中正常显示。但是用geoserver生成的kml文件,在openlayers中就无法显示。是不是因为geoserver中导出的kml里面的数据是链接形式的呢。
巩大星 写道
提供了一种很好地思路,但是为啥tomcat里面访问后,也没有背景地图,也没有点数据呢。
对不起,浅尝辄止地了解了一下,没有深入研究,也没有实际应用。不能回答你们的问题。
2 楼
巩大星
2017-03-18
就是用官方的例子中的kml文件,可以在openlayers中正常显示。但是用geoserver生成的kml文件,在openlayers中就无法显示。是不是因为geoserver中导出的kml里面的数据是链接形式的呢。
1 楼
巩大星
2017-03-17
提供了一种很好地思路,但是为啥tomcat里面访问后,也没有背景地图,也没有点数据呢。
发表评论
-
gradle编译错误:Could not find method compile() for arguments
2020-09-19 10:50 18618编译(IDEA+Gradle)一个别人的工程,出现一个 ... -
netty心跳检查之UDP篇
2019-09-15 08:50 2454部分UDP通信场景中,需要客户端定期发送心跳信息,以获取终 ... -
解决tomcat部署两个SpringBoot应用提示InstanceAlreadyExistsException
2019-06-30 11:49 3444两个SpringBoot应用部署在一个Tomcat中,单独 ... -
Eclipse配置MyBatis代码自动化功能
2019-06-29 10:16 18101.安装插件 Eclipse中,Help->Ecli ... -
vue.js中使用qrcode生成二维码
2019-05-20 00:00 7676一、安装包 npm install qrcodejs2 --s ... -
MySQL插入数据报错: Incorrect string value: '\xFD\xDE'
2019-03-31 23:19 1272我MySQL数据库用的uft-8字符集,插入数据一直很正常 ... -
vue自定义组件并双向绑定属性
2019-03-08 22:46 3265做了两个子组件,原理基本一样,一个是使用原生的select ... -
vue-router简单示例
2019-03-05 00:32 1171写个基本完整、稍有借鉴意义的示例,防止自己忘记。 &l ... -
“联通充值系统繁忙”轻松应对
2019-02-06 11:03 3990大过年的,联通充个值一直报“充值系统繁忙”。昨天晚上试了几 ... -
electron.js数据库应用---导航菜单(element-ui+mysql)
2019-02-05 21:33 2375一、环境搭建 略, ... -
electron.js数据库应用---入门(mysql+element-ui)
2019-01-27 23:19 7521我的机器:Windows10,64 ... -
SpringMVC 在controller层中注入成员变量request,是否线程安全
2018-12-17 21:17 2756@RestController public class ... -
VueJS 组件参数名命名与组件属性转化
2018-12-03 00:00 2084转自:https://www.cnblogs.com/meiy ... -
vue-resource拦截器实现token发送及检验自动化
2018-11-16 22:38 3083用了很长时间vue-resource,最近思考$http发 ... -
element-ui试用手记
2018-10-29 20:25 1763element-ui、iviewui都以vue.js为基础 ... -
iviewui中表格控件中render的使用示例
2018-07-07 16:46 9796示例了如何在表格中显示按钮,如何将代码转化为文字。 i ... -
Tomcat错误“Alias name tomcat does not identify a key entry”解决
2018-07-05 21:39 6629申请到了阿里云的证书后,下载、按照说明生成jks格式证书、 ... -
阿里云免费证书“fileauth.txt内容配置错误”解决
2018-07-05 20:43 5326最近研究微信小程序开发,上阿里云申请了个证书,使用文件验证 ... -
springboot2.0跨域配置
2018-07-04 22:11 5294springboot2.0跨域配置: 一、代码 ... -
微信小程序使用code换openid的方法(JAVA、SpringBoot)
2018-07-01 21:52 10414微信小程序序的代码中提示,使用code换取openid,但 ...
相关推荐
为了辅助学习,资料中很可能包含一系列配置示例,如创建地图服务、定义图层样式、实现地图缩放和平移、加载KML或GPX文件等。这些实例将帮助读者通过实践掌握Geoserver和OpenLayers的使用。 **5. 进阶话题** 除了...
4. 数据叠加:除了加载天地图,你还可以叠加其他数据源,如GeoJSON、KML等,实现数据的可视化展示。 通过以上步骤,你已经成功地使用OpenLayers加载了在线天地图。这只是一个基本的示例,OpenLayers提供了更多高级...
它可以连接到Geoserver,接收WMS(Web Map Service)或WFS(Web Feature Service)请求,加载地图图层,以及处理缩放、平移、点击事件等。 6. **工程源码**:提供的源码可能包含了服务器端的Geoserver配置、地图...
《Geoserver配置及OpenLayers应用》 在软件开发领域,地理信息系统(GIS)的应用日益广泛,其中Geoserver和OpenLayers是两个重要的组件。Geoserver是一款开源的GIS服务器,用于发布、管理和共享地理空间数据;而...
12. OpenLayers实现AJAX的功能,可以通过AJAX调用来动态加载地图数据和处理地图交互。 13. 研究OpenLayers时,需要熟悉其API和类库的使用,才能够更自如地应用。 14. 地图搜索功能可以通过集成第三方搜索服务或...
7. **矢量数据支持**:OpenLayers 可以加载和操作矢量数据,如GeoJSON、KML格式,支持编辑、查询和渲染。 8. **性能优化**:通过缓存机制和分块加载策略,OpenLayers 可以有效地处理大量数据和大范围的地图,提高...
GeoServer 是一个地理信息系统服务器,是 OpenGIS Web 服务器规范的 J2EE 实现。 GeoServer 允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。 二、...
发布地图服务时,GeoServer提供了丰富的选项,包括输出图像格式(如jpeg、gif、png、SVG、KML等),并且能够嵌入使用AJAX技术的MapBuilder或OpenLayers地图客户端,以实现交互式的地图展示。此外,GeoServer还支持与...
例如,文档中会详细讲解如何设置地图容器、加载地图服务、添加图层、创建控制以及自定义事件处理等。 在JavaEE环境中,OpenLayers 可以与后端服务紧密结合,通过RESTful API交换地图数据。例如,使用Java的Servlet...
3. 集成其他系统:GeoServer可以与OpenLayers、Leaflet等JavaScript库配合,构建交互式地图应用;也可与ArcGIS、QGIS等桌面GIS软件协同工作。 六、拓展与维护 1. 插件系统:GeoServer拥有丰富的插件库,可以扩展其...
GeoServer 是一个强大的开源软件,它是 OpenGIS Web 服务器...通过学习 GeoServer 教程,开发者和 GIS 专业人员可以掌握如何搭建环境、处理地图数据、发布服务,并实现与其他应用的集成,从而提高地理信息的利用率。
除了这些,还可以使用GeoJSON、KML、GML等矢量数据格式,甚至可以直接加载本地图像文件作为图层。 **3. 交互功能** OpenLayers提供了丰富的用户交互功能,包括点击、拖动、测量、定位、信息窗口等。例如,通过监听...
接下来,我们创建一个OpenLayers地图实例,设置其视图,以及加载地图瓦片源。例如,我们可以使用OpenStreetMap作为底图: ```javascript var map = new ol.Map({ target: 'map', layers: [ new ol.layer.Tile({ ...
在本文中,我们将深入探讨如何使用OpenLayers加载天地图的不同类型,包括矢量图、影像图和地形图,并实现动态切换效果。 **1. 矢量图** 矢量图是以几何形状(点、线、多边形)和属性数据表示地物的图层。天地图的...
OpenLayers 3是一个用于构建Web GIS应用的现代框架,支持多种地图服务,包括WMS、WMTS、TMS等,并能够与不同的数据格式集成,如GeoJSON、KML和GPX。 这个项目的核心内容可能包括以下几个方面: 1. **API文档**:...
3. **地图数据**: 可能是多种格式,如MIF、SHP、GeoJSON、KML等。你需要将这些数据转换成Geoserver支持的格式,通常是SHP或GeoJSON。 4. **Java运行环境**: 如果选择Tomcat作为应用服务器,需要安装JDK并配置好环境...
### GeoServer地图开发解决方案 #### 一、GeoServer概述与环境搭建 GeoServer是一个开源的地理信息系统(GIS)服务器,遵循Open Geospatial Consortium (OGC)标准,提供了丰富的地图服务,包括WMS(Web Map Service...