Esri与开源

Esri与开源

随着主流的开发平台逐渐开源化,加上GitHub的兴起,开源深入了各个领域,Esri也不例外,积极的拥抱开源。
目前,Esri产品不仅支持开源产品(Linux,PostgreSQL,Python等),还开源了许多产品。
Esri开源代码主要通过github来进行发布,主页面为http://esri.github.io/

在Esri开源的产品中既有App开发框架,也有web前端功能类库,还有服务器端产品,基本上覆盖了Web开发,移动端开发和服务器端开发。使用Esri开源的产品,可以大大加快用户业务系统的开发,降低系统开发难度。 目前主要的开源产品包括:

  • FlexViewer
  • Esri Geoportal Server
  • ArcGIS Editor for OpenStreetMap
  • Terraformer
  • Esri Leaflet
  • Koop
  • Esri Geometry API for Java
  • 其他

FlexViewer

  • 项目地址:https://github.com/Esri/arcgis-viewer-flex
  • 项目截图:
    image
  • 项目介绍:FlexViewer可以说是目前为止Esri最成功的一款开源产品。FlexViewer从2009年开源至今,已经有成千上万个网站在使用。
    Flex Viewer是可以高效开发基于WEB的地理信息应用系统的一种完全免费的应用程序框架。业务人员使用该框架可以无需任何额外的编程就能够通过简单配置的方法快速搭建起一个基于ArcGIS Server的、以地图为中心的富客户端(RIA)应用的原型。该框架中还自带了大量的能够满足各种地图应用需要的Widget,如Identify、GeoRSS、DataExtract、BookMark、NetworkAnalyst、MapSwitcher等地图交互和分析等工具。同时,如果需要增加新的Widget,则开发人员只需在自定义的Widget中实现框架要求的接口,然后再将该Widget配置到框架中的Config.xml文件中,就能在无需修改框架代码的情况下轻松地完成独立Widget与框架的无缝集成。

Esri Geoportal Server

  • 项目地址:https://github.com/Esri/geoportal-server
  • 项目截图:
  • 项目介绍:Geoportal Server主要用于展示和使用各项空间资源,包括数据集、栅格数据以及网络服务。它能够帮助用户管理和发布各项空间资源的元数据以便于检索和展示资源。
    Geoportal server可支撑基于标准的数据交换和元数据展示应用。 使用Geoportal server可以提高企业或组织内地理空间活动的效率和效果,能够促进地理信息资源的共享,提高地理信息资源的查找效率并充分利用这些资源。

ArcGIS Editor for OpenStreetMap

项目地址:https://github.com/Esri/arcgis-osm-editor
* 项目截图:
image
* 项目介绍
ArcGIS Editor for OpenStreetMap是一个基于c#开发的在ArcMap中读取OpenStreetMap数据的插件。使用这个插件的功能如下:
1. 从OSM网站下载数据并存储到File Geodatabase中 2. 创建planet文件(.osm) 3. 编辑OSM数据 4. 将编辑后的数据更新到OSM网站 5. 从OSM数据创建网络数据集

Terraformer

  • 项目地址:https://github.com/Esri/Terraformer
  • 项目介绍:Terraformer是基于javascript的地理工具包,主要包括下面几个模块:
    1. Terraformer Core,主要用来处理GeoJSON
    2. WKT Parser,用来将WKT格式的数据转换成GeoJSON
    3. ArcGIS Geometry Parser,用来将ArcGIS Geometry格式数据转换成GeoJSON
    4. GeoStore,使用GeoJSON格式存储和查询空间数据的框架,支持空间索引

该项目既可以在浏览器中使用,又可以在node.js中使用

Esri Leaflet

项目地址:https://github.com/Esri/esri-leaflet
项目截图:
image
项目介绍:
Esri Leaflet是著名开源地图类库Leaflet的插件,主要实现在Leaflet中加载基础地图、要素服务的功能。同时还支持加载Esri的切片地图服务、动态地图服务和影像服务。
Esri Leaflet的目标不是替换掉 ArcGIS API for JavaScript,而是为Leaflet用户提供更方便调用Esri服务的方式。

Koop

项目地址:https://github.com/koopjs/koop

项目架构:
image
项目介绍:
Koop是一个基于Javascript的开源ETL工具。Koop支持将不同来源的数据转换成GeoJSON服务或者ArcGIS 要素服务。方便将来源不同的数据集成到Esri的产品体系中。
Koop是一个服务器端产品,运行在node.js中。

Esri Geometry API for Java

项目地址:https://github.com/Esri/geometry-api-java
项目介绍:Esri Geometry API for Java主要用来为第三方软件集成空间数据处理能力,例如Hadoop用户可以使用该类库在MapReduce环境中进行空间数据处理。该类库同样也可以用于Hive UDF中。当然,所有使用java开发的项目都可以集成该类库来进行空间数据的处理。
Esri Geometry API for Java提供的主要功能包括:

  1. 可以通过API直接创建Geometry,或者从JSON,WKT,Shape格式导入Geometry
  2. 提供了空间操作,例如叠加、相交、裁剪、缓冲分析等
  3. 提供了空间拓扑判定功能,例如相等、包含等

其他

除了上面的开源产品,Esri还开源了非常多的产品,主要包括:

更多的开源产品可以到主页面查看http://esri.github.io/

This entry was posted in ArcGIS.

Leave a Reply

Your email address will not be published. Required fields are marked *


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">