zoukankan      html  css  js  c++  java
  • 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

    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上搜索即可。

  • 相关阅读:
    关于sifari兼容性的一个问题
    HTML标签的应用(新手)
    HTML标签的应用(新手)
    未完成的开锁动画演示
    HTML标签的应用(新手)
    HTML新手向
    C++
    STL之set
    C++输入输出
    提升一下逼格
  • 原文地址:https://www.cnblogs.com/escage/p/6513690.html
Copyright © 2011-2022 走看看