基于.NET 2.0的GIS开源项目SharpMap分析手记(六):SharpMap的功能扩展之路
粟卫民 http://blog.csdn.net/suen/
一个开源项目的发展方向关系到此项目应用的发展与壮大,所以十分重要。好的开源项目正因为开发者准确地把握了项目功能扩充方向,从而把有限的精力用在了使用者最需要的功能上,从而取得了成功。
现在来预测SharpMap是否会取得成功为时过早,但我们可以分析一下它的功能发展之路(RoadMap),从而对它是否成功进行简单的讨论。
从前文基于.NET 2.0的GIS开源项目SharpMap分析手记(一):第一次亲密接触,我们知道了SharpMap的现有功能,在SharpMap项目主页上,我们可以得到更详细的介绍:
1 一句话介绍
SharpMap is an easy-to-use mapping library for use in web and desktop applications. It provides access to many types of GIS data, enables spatial querying of that data, and renders beautiful maps.(SharpMap是一个用于web和桌面应用程序的易用的地图库。它可以访问多种格式的GIS数据,提供对这些数据的空间搜索,同时还可以绘制漂亮的地图。)
2 支持的数据格式
矢量:
ESRI Shape files format
PostGreSQL/PostGIS
OLEDB (points only)
Microsoft SQL Server
Oracle*
GPX*
MapInfo File*
TIGER*
S57*
DGN*
CSV*
GML*
Interlis 1*
Interlis 2*
SQLite" and "ODBC"*
栅格:
Arc/Info ASCII Grid*
Arc/Info Binary Grid (.adf)*
AIRSAR Polarimetric*
Microsoft Windows Device Independent Bitmap (.bmp)*
BSB Nautical Chart Format (.kap)*
VTP Binary Terrain Format (.bt)*
CEOS (Spot for instance)*
First Generation USGS DOQ (.doq)*
DODS / OPeNDAP*
New Labelled USGS DOQ (.doq)*
Military Elevation Data (.dt0, .dt1)*
ERMapper Compressed Wavelets (.ecw)*
ESRI .hdr Labelled*
ENVI .hdr Labelled Raster*
Envisat Image Product (.n1)*
EOSAT FAST Format*
FITS (.fits)*
Graphics Interchange Format (.gif)*
GMT Compatible netCDF*
GRASS Rasters*
TIFF / GeoTIFF (.tif)*
Hierarchical Data Format Release 4 (HDF4)*
Hierarchical Data Format Release 5 (HDF5)*
Erdas Imagine (.img)*
Vexcel MFF2*
Idrisi Raster*
Image Display and Analysis (WinDisp)*
ILWIS Raster Map (.mpr,.mpl)*
Japanese DEM (.mem)*
JPEG JFIF (.jpg)*
JPEG2000 (.jp2, .j2k)*
JPEG2000 (.jp2, .j2k)*
JPEG2000 (.jp2, .j2k)*
JPEG2000 (.jp2, .j2k)*
NOAA Polar Orbiter Level 1b Data Set (AVHRR)*
Erdas 7.x .LAN and .GIS*
Daylon Leveller Heightfield*
In Memory Raster*
Vexcel MFF*
Multi-resolution Seamless Image Database*
Meteosat Second Generation*
NDF*
NITF*
NetCDF*
OGDI Bridge *
PCI .aux Labelled*
PCI Geomatics Database File*
Portable Network Graphics (.png)*
PCRaster (.map)*
Netpbm (.ppm,.pgm)*
Swedish Grid RIK (.rik)*
RadarSat2 XML (product.xml)*
USGS SDTS DEM (CATD.DDF)*
Raster Matrix Format (.rsw, .mtw)*
SAR CEOS*
SGI Image Format*
USGS ASCII DEM (.dem)*
X11 Pixmap (.xpm)*
WMS:
Version 1.0.0
Version 1.1.1
Version 1.3.0
其中:带*号是通过第三方扩展实现
3 功能扩展之路
Feature | Description | Planned Release |
Spatial relationships among geometry | Geometry has certain relationships with other geometry: they intersect, border, are contained, etc. This logic is called topology and most GIS packages provide for some level of it. SharpMap will implement the "Dimensionally Extended Nine-Intersection Model" (DE-9IM) which is described in section 6.1.14 - Relational Operators of OpenGIS Simple Features Specification for GIS - Simple Feature Access - Common Architecture http://portal.opengeospatial.org/files/index.php?artifact_id=13227 | |
Updatable Providers | Allow features to be updated, added or deleted from SharpMap providers | |
Rendering Interface / Rendering Engines | Provide an interface for the rendering of layers and maps so other formats besides GDI+ images can be produced. Will include GDI+ and WPF in v2.0, with other providers, such as SVG, GML, etc being able to be independently written. See SharpMap v2 Architecture for more information. |
可见,当前1.0版的主要功能是实现了多种空间数据类型的访问和简单的空间查询及显示。而2.0主要实现两大功能:空间数据的增、删、改和绘制接口。
就我看来,表现层应该作为SharpMap发展的重点,毕竟现在GIS软件在这方面还比较欠缺。
附:最近看到马兄的“SharpMap CSDN 炒冷饭”,他觉得他介绍了SharpMap,CSDN就不能再炒,觉得他的态度还是有些问题,所以我回复如下:
做技术的人态度还是要更开放,不能不让别人说话。我很喜欢一句话:“我不同意你的观点,但我誓死捍卫你说话的权利”。
CSDN博客上面很多文章都是我写的:http://blog.csdn.net/suen/ ,当然我的水平远远及不上马兄,但是决不会抄袭,如果马兄觉得哪里我抄袭了可以提出来,我立马改正。
在这里我提两个问题:
(1)SharpMap是否已经成为冷饭?
(2)马兄是否觉得学SharpMap看你的文章就够了?
希望马兄不要介意!