3月题外:关于GeoServer和OpenLayers3实用开源插件或组件的总结
Geoserver篇
注意:
1)用法
GeoServer-Extension的使用方法:将jar包直接放入部署在tomcat上的geoserver/WEB-INF/lib文件夹中
2)在安装插件时,一定要注意版本是否匹配,本文介绍的插件均默认在GeoServer2.11环境下
3)官方文档地址
http://docs.geoserver.org/maintain/en/user/extensions/index.html
4)插件下载地址:
http://ares.boundlessgeo.com/geoserver/master/ext-latest/
GeoServer各插件详细说明:(默认GeoServer 2.11版环境)
1 Geoserver-2.11-SNAPSHOT-vectortiles-plugin 【矢量切片(Vector Tile)】
矢量切片插件,通过该插件可以在GeoServer的Web客户端中进行矢量切片的配置

关于GeoServer矢量切片的相关详细操作请参照我的博客:http://www.cnblogs.com/escage/p/6387529.html
2 geoserver-2.11-SNAPSHOT-css-plugin【地图样式(Style)】
在CSS插件安装成功后,在GeoServer的Web管理页面中的左菜单栏中可以看到多出了一个CSS Styles的选项卡,如下图:

简单来说,其实这个插件就是将复杂难懂的SLD样式控制模式转换成为大家熟悉的CSS模式,用简单的声明式语句就能够替代冗余复杂的SLD文件,更加轻松地控制地图要素的样式,例如(例子摘自GeoServer官方文档):
SLD文档:
<Rule>
<Title>2M - 4M</Title>
<ogc:Filter>
<ogc:PropertyIsBetween>
<ogc:PropertyName>PERSONS</ogc:PropertyName>
<ogc:LowerBoundary>
<ogc:Literal>2000000</ogc:Literal>
</ogc:LowerBoundary>
<ogc:UpperBoundary>
<ogc:Literal>4000000</ogc:Literal>
</ogc:UpperBoundary>
</ogc:PropertyIsBetween>
</ogc:Filter>
<PolygonSymbolizer>
<Fill>
<!-- CssParameters allowed are fill (the color) and fill-opacity -->
<CssParameter name="fill">#FF4D4D</CssParameter>
<CssParameter name="fill-opacity">0.7</CssParameter>
</Fill>
</PolygonSymbolizer>
</Rule>
以上文档产生的效果等同于以下CSS:
[PERSONS >= 2000000] [PERSONS < 4000000] {
fill: #FF4D4D;
fill-opacity: 0.7;
}
虽然该插件允许你使用CSS样式文件对地图数据进行样式控制,但本质上,还是将CSS转换为了SLD文档。这个插件值得注意的点在于:可以用类似于过滤器的模式,对不同的字段设定分级分段规则(RULE),并与之设置一一对应的样式(CSS)【包括标注Label】
PS:在控制地图样式的时候,你需要设置SLD文件,通常情况下,你可以通过Udig进行地图配色,然后从Udig中导出和配色方案相应的sld文件,最后直接上传发布到GeoServer上即可,详情可见:http://www.3fwork.com/b501/000143MYM020576/
3 Geoserver-2.11-SNAPSHOT-querylayer-plugin【空间查询】
该插件主要是用来进行图层之间的几何要素空间查询的,一般可以通过SLD文件中以XML文档的形式设定RULE或者通过WMS、WFS请求中以CQL语句描述的方式自带请求参数这两种方式进行空间要素查询。在官方文档的介绍中,该插件主要提供了3种过滤查询的模式:1) querySingle ; 2) queryCollection ; 3) collectGeometries。
4 Geoserver-2.11-SNAPSHOT-gdal-plugin
Geoserver默认支持的栅格数据源比较少,包括ArcGrid,GeoTiff,WorldImage,ImageMosaic等,是不支持Erdas Img格式的栅格数据源的,因此,为了能够让Geoserver支持发布Erdas Img格式的数据源,需要用GDAL的插件对Geoserver进行扩展。
参考资料:《Geoserver扩展以支持Erdas Image数据的服务发布》:http://blog.csdn.net/gisshixisheng/article/details/51263686
5 Geoserver-2.11-SNAPSHOT-oracle-plugin.zip / Geoserver-2.11-SNAPSHOT-mysql-plugin.zip / Geoserver-2.11-SNAPSHOT-sqlserver-plugin.zip【各大数据库连接插件】
常用的数据库插件,用于拓展添加数据的数据源,即通过添加这些插件,可以达到以oracle, mysql, sqlserver等数据库为数据源的目的
---------------------------------------------------------------分割线--------------------------------------------------------------------
OpenLayers3篇
基础功能:
1 ol-ext-gh-pages
这是一个关于OL3拓展系列的组件集,里面分为了Style, Animation, Filter, Interactions等多个有趣的专题,可以拓展你使用OL3的思路,十分推荐!

Style

Animate

Control
Github fork该作者请戳这里: https://github.com/Viglino/ol3-ext
2 ol3-search-layer-master/ol3-contextmenu-master/ol3-loadingpanel-master
以上是几个比较常见的开源组件,其中包括了图层查询,菜单栏效果以及读条效果等,可以帮助你更方便快捷的实现GIS系统的UI部分。
高级功能:
3 ol3editor-master
地图编辑器,在线制图的一个小demo,适合在有web制图需求的时候使用该组件

Demo界面
4 ol3-echarts3-master
这是一个结合了Echart组件的一个综合体,适合使用在地图信息与属性数据关联紧密,业务逻辑结合地图实现等情景下,将数据在地图上铺开,从而为后续的数据分析与关系挖掘提供基础。

5 ol3-cesium-demo-master
该组件结合Cesium框架,实现了二三维联动的效果,但demo目前无法成功打开,所以稳定性方面还有待确认,另外使用Cesium框架,必须确保使用的浏览器要支持WebGL。
以上关于OpenLayers3的各种组件工具,都可以在github上找到其源码,如感兴趣可以在github上搜索即可。
3月题外:关于GeoServer和OpenLayers3实用开源插件或组件的总结的更多相关文章
- 3月题外:关于JS实现图片缩略图效果的一些小问题
由于3月可能要结束实习,所以应该不会有特别固定的主题,另外我会在月初陆续补上上个月的番外篇Projection和TMS,作为介绍性的内容对矢量切片部分进行补充,剩下时间不定期写一些杂烩. 最近两天在做 ...
- 3月题外:关于JS实现图片缩略图效果的一个小问题
由于3月可能要结束实习,所以应该不会有特别固定的主题,另外我会在月初陆续补上上个月的番外篇Projection和TMS,作为介绍性的内容对矢量切片部分进行补充,剩下时间不定期写一些杂烩. 最近两天在做 ...
- 题外话:我想立刻辞职,然后闭关学习编程语言,我给自己3个月时间学习C语言!这样行的通吗
以下文章虽然是编程,但是对于IT行业都通用 文章背景,回答提问:我想立刻辞职,然后闭关学习编程语言,我给自己3个月时间学习C语言!这样行的通吗? 我的建议是这样:1. 不要辞职.首先说,你对整个开发没 ...
- hihoCoder#1105 题外话·堆
原题地址 有没有更优雅地堆模板啊,总感觉我写的有些啰嗦 代码: #include <iostream> using namespace std; #define MAX_NODE 1000 ...
- 题外话(简识UML语言)
PS:“不积小流无以成为江河,不积跬步无以至千里”,学习也好,吃饭也罢,做任何事情都需要一步一个脚印,逐步积累过程,最后才会知识越来越丰富,吃的越饱… 在学习过程中用到了一些框图,用于绘画框图的语言数 ...
- 题外话:Lua脚本语言存在的意义
纯属个人见解. 大致来说:c/c++执行效率高,游戏中一些性能敏感的复杂计算需要用c/c++来实现,防止游戏卡顿和低帧率.这些复杂计算包括战斗逻辑,复杂AI,骨骼动画蒙皮骨骼点的坐标计算等等.但c++ ...
- 题外话 -- windows10系统C盘空间变大 CPU莫名跑满
场景描述: 安装windows10一段时间了,发现C盘空间越来越小 CPU有时候,莫名其妙的跑满,造成操作卡顿. 如何处理参考: windows10 C盘空间清理:https://jingyan.ba ...
- 一个.net Cookie组件的bug引发的题外话
在.net里,做过Http模拟发送请求的朋友们应该遇到过,有个时候无论怎么努力,都没办法让Cookie跟网页用浏览器所收集的一样,其中原因除了有些Cookie大概是ReadOnly之外,似乎另有隐情: ...
- [hihoCoder] 题外话·堆
A direct applicatin of the heap data structure. Specifically, a max heap is used. The required funct ...
随机推荐
- 在centos 6.5 x64中安装 spark-1.5.1
以下内容参考:http://blog.csdn.net/lovehuangjiaju/article/details/48494737 1.解压安装文件,设置环境变量 这里我们使用的安装文件是已经编译 ...
- 怎样看paper 最有效率
thinking more after reading. Don't just read the papers.in addition, at begining, you'd better focus ...
- php刷新当前页面
echo "<script language=JavaScript> location.replace(location.href);</script>"; ...
- @dynamic、@synthesize
声明property属性后,有2种实现选择: @synthesize 编译器期间,让编译器自动生成getter/setter方法. 当有自定义的存或取方法时,自定义会屏蔽自动生成该方法 @dynami ...
- ASP.NET 页面之间传值的几种方式
开篇概述 对于任何一个初学者来说,页面之间传值可谓是必经之路,却又是他们的难点.其实,对大部分高手来说,未必不是难点. 回想2016年面试的将近300人中,有实习生,有应届毕业生,有1-3年经验的,有 ...
- hessian原理解析一(客户端分析)
hessian 是一款开源的二进制远程通讯协议,使用简单方法提供了RMI功能,主要用于面向对象的消息通信. 优点:跨平台.多语言支持.使用简单 缺点:传递复杂对象性能会下降,不适合安全性高的应用 一 ...
- 为苹果ATS和微信小程序搭建 Nginx + HTTPS 服务
昨天测试开发微信小程序,才发现微信也要求用HTTPS加密数据,想来是由于之前苹果的ATS审核政策的缘故吧,微信想在苹果上开放小程序必然也只能要求开发者必须使用HTTPS了,于是在服务器上测试安装Ngi ...
- IOS获取经度纬度
仔细研究了一下SDK文档,再结合网上的方法,写了这一个简单的获取经纬度的方法,大家看看就好. 首先要导入CoreLocation.Frame 包 .h 文件 1 2 3 4 5 6 7 8 9 #im ...
- netty 对 protobuf 协议的解码与包装探究(2)
netty 默认支持protobuf 的封装与解码,如果通信双方都使用netty则没有什么障碍,但如果客户端是其它语言(C#)则需要自己仿写与netty一致的方式(解码+封装),提前是必须很了解net ...
- Angular企业级开发(6)-使用Gulp构建和打包前端项目
1.gulp介绍 基于流的前端自动化构建工具,利用gulp可以提高前端开发效率,特别是在前后端分离的项目中.使用gulp能完成以下任务: 压缩html.css和js 编译less或sass等 压缩图片 ...