很早就看到马维峰老兄写的关于SharpMap的一些东西,这也是国内(截止到<chsdate year="2006" month="11" day="29" islunardate="False" isrocdate="False" w:st="on"><span lang="EN-US"><font face="Times New Roman">2006-11-29</font></span></chsdate>)能用百度和GOOGLE能搜索到唯一资料。怀着对GIS开源项目的热爱和为国内程序员做点共享的“崇高感情”,我打算学习一下SharpMap,同时整理一些学习时候的技术总结,陆续放到BLOG中去。
SharpMap介绍:
SharpMap是一个“小巧可爱”的基于.net 2.0使用C#开发的Map渲染类库,可以渲染各类GIS数据(目前支持ESRI Shape和PostGIS格式),可应用于桌面和Web程序。
其网址为:http://sharpmap.iter.dk/ 和http://www.codeplex.com/SharpMap
SharpMap的发布许可(License)为GNU General Public License,开发者为Morten Nielsen(http://www.iter.dk/)。目前的稳定版本为0.8(9.0beta已发布),代码行数近10000行,实现了以下功能:
①支持的数据格式:
PostGreSQL/PostGIS,ESRI Shapefile
支持WMS layers
支持ECW 和JPEG2000 栅格数据格式
②Windows Forms 控件,可以移动和缩放
③通过HttpHandler支持ASP.net程序
④点、线、多边形、多点、多线和多多边形等几何类型和几何集合(GeometryCollections)等OpenGIS Simple Features Specification
⑤可通过Data Providers(增加数据类型支持)、Layer Types(增加层类型)和Geometry Types等扩展
⑥图形使用GDI+渲染,支持anti-aliased等
⑦专题图
上面这段话是根据马兄的BLOG整理的,如果不希望我引用请马兄告知我删除。
下面就是实用的STEP BY STEP。
(1)下载VS .NET 2005
由于SharpMap基于.NET 2.0,为了分析SharpMap,首先要作的就是下载一个VS .NET 2005,这个比较大,估计有1.6G,所以建议找个速度快点的网站或者…(呵呵,武汉的朋友去电脑城地下室找找,长沙的朋友去QQ电脑城4楼逛逛);
(2)安装VS .NET 2005
还算比较好装,我装的时候没碰到什么问题,一次成功;
(3)设置IIS ASP.NET为2.0
这点必须注意,因为默认的IIS ASP.NET为1.1(我安装操作系统的是Windows Server 2003);
做法是打开IIS信息服务管理器,在“默认网站”上单击右键选择“属性”,弹出如下对话框,在ASP.NET页设置ASP.NET的版本为2.0.50727;
<shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"></path><lock v:ext="edit" aspectratio="t"></lock></shapetype><shape id="_x0000_i1026" style="WIDTH: 354pt; HEIGHT: 346.5pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image001.jpg" o:title="设置IIS"></imagedata></shape>
图1设置IIS ASP.NET为2.0
(4)下载SharpMap
到http://www.codeplex.com/SharpMap去下载一个SharpMap,我下载的是0.9版;
(5)解压和试运行
解压后可以看到一个demo文件夹,在VS 2005中打开Simple.aspx,在VS 2005中单击右键,选择“在浏览器中查看”,则弹出浏览器如下图所示:
<shape id="_x0000_i1027" style="WIDTH: 414.75pt; HEIGHT: 267.75pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image002.jpg" o:title="浏览器简单地图"><font size="3"></font></imagedata></shape>
图2简单地图浏览
<shape id="_x0000_i1028" style="WIDTH: 415.5pt; HEIGHT: 321.75pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image004.jpg" o:title="样式图浏览"><font size="3"></font></imagedata></shape>
图3 样式图浏览
<shape id="_x0000_i1029" style="WIDTH: 415.5pt; HEIGHT: 291.75pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image006.jpg" o:title="分级图浏览"><font face="Times New Roman" size="3"></font></imagedata></shape>
图4 分级图浏览
<shape id="_x0000_i1030" style="WIDTH: 415.5pt; HEIGHT: 249pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image008.jpg" o:title="饼图浏览"><font size="3"></font></imagedata></shape>
图5 饼图浏览
<shape id="_x0000_i1031" style="WIDTH: 414.75pt; HEIGHT: 298.5pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image010.jpg" o:title="AJAX应用"><font size="3"></font></imagedata></shape>
图6 AJAX应用
<shape id="_x0000_i1032" style="WIDTH: 414.75pt; HEIGHT: 239.25pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image012.jpg" o:title="WMS客户端应用"><font size="3"></font></imagedata></shape>
图7 WMS客户端应用
<shape id="_x0000_i1033" style="WIDTH: 414.75pt; HEIGHT: 4in" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image014.jpg" o:title="WMS服务器地图"><font size="3"></font></imagedata></shape>
图8 WMS服务器地图
<shape id="_x0000_i1034" style="WIDTH: 414.75pt; HEIGHT: 298.5pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image016.jpg" o:title="实时坐标变换"><font size="3"></font></imagedata></shape>
图9 实时坐标变换
<shape id="_x0000_i1025" style="WIDTH: 414.75pt; HEIGHT: 298.5pt" type="#_x0000_t75"><imagedata src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/01/clip_image018.jpg" o:title="坐标变换测试"><font size="3"></font></imagedata></shape>
图10 坐标变换测试
<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog.html" frameborder="0" width="728" scrolling="no" height="90"></iframe>
相关推荐
基于.NET 2.0的GIS开源项目SharpMap分析手记---粟卫民(收集为doc文档)
基于.NET2.0的GIS开源项目SharpMap分析手记.doc
1 基于NET 20的GIS开源项目SharpMap分析手记.doc
是基于.NET 2.0的GIS开源项目SharpMap 支持sharp文件和mysql等作为数据源 用来做GIS地图显示和渲染很方便
国外开源gis项目源代码及例子,可以做WEBGIS和窗体应用程序GIS
SharpMap是一个基于.net 2.0使用C#开发的Map渲染类库,可以渲染各类GIS数据,可应用于桌面和Web程序。 目前支持B/S及C/S两种方式的DLL调用,支持地图渲染效果。稳定版本为0.9,最新版本为2.0,代码行数近10000行。
目前的很多的项目中都用到了GIS 软件,然而在开源的GIS软件中有SharpMap在工程应用中开始被人发觉。相比一些GIS软件它拥有的优势有: 1、占用资源较少,响应比较快。在对于项目中如果只需要简单的地图功能的话,是...
SharpMap是一个基于.net 2.0使用C#开发的Map渲染类库,可以渲染各类GIS数据(目前支持ESRI Shape和PostGIS格式),可应用于桌面和Web程序。 它的优点有: 1、占用资源较少,响应比较快。在对于项目中如果只需要...
asp.net2.0:扩展ImageButton控件定制自己需要的功能 ASP.NET 2.0 正式版中无刷新页面的开发(示例代码的补充) ASP.NET2.0中themes、Skins轻松实现网站换肤! ASP.NET 2.0 中的代码隐藏和编译 ASP.NET 2.0 Language ...
这本《GIS软件SharpMap源码详解及应用》由陈真、何津、余瑞编著,对目前基于C#语言开发的GIS开源项目——SharpMap进行详细剖析、解释,以便GIS专业学生及GIS的初学者能学习和掌握GIS底层开发技术。全书分为3部分共计...
基于.net2.0和DevExpress、SharpMap的WinFormDemo,选中表格中的行,地图中会自动显示选中行在地图上的位置
sharpmap2.0 winformsample 可用,共同学习
SharpMap是一个基于.net 2.0使用C#开发的Map渲染类库,可以渲染各类GIS数据(目前支持ESRI Shape和PostGIS格式),可应用于桌面和Web程序。
史上最全的GIS开源项目源码合集,因项目需要精心收集...共11个开源GIS项目:GDAL、NASA开源GIS软件、World Wind、CoordSystemTransform、sharpmap、sharpkml、shapelib、netDxf、ofoSpider、oxyplot、MatrixLibrary。
经典C# GIS,开源,SharpMap开源代码和项目实例