我的SharpMap学习日记(一)

我与SharpMap的爱恨情仇

从5月17日开始,在同师门师兄的推荐下我开始接触SharpMap,刚开始的时候我对于SharpMap是一无所知的,但迫于项目的需要我也是不得不转战它。对于一个对开源编程尚未入门的我而言多多少少还是充满了挑战!但问题不大!接下来我就会慢慢交代我跟SharpMap这刚好一个月来的心酸故事。

什么是SharpMap

简单来说就是一个基于.net平台使用C#开发的地图渲染库,什么意思呢?也就是用SharpMap这个库我们可以开发出一个简单的GIS系统,像桌面端的Arcgis、超图、Web端的Arcgis Online等等它都能通过开发的手段做出来,听起来就是短小精悍型的Map库。
当然,最重要是因为这是一个开源的库,即意味着可以对其源码进行学习,从而做一些满足我们需求的二次开发!

关于它的身世

那既然它听起来那么强,为什么在我本科期间老师却极少谈及呢?这个主要是由于SharpMap其实是很早很早之前就已经问世了,绝大多数的SharpMap资料都停留在2005年到2011年期间,那为什么现在有关SharpMap的资料那么少呢?我想从自身的角度来看,SharpMap这个库的源码只有一万多行,相比而言是比较简短的;从外部的角度来看,随着AE老大哥和众多优秀开源库的崛起,并且随着应用市场不断的缩小,SharpMap就自然而然落后了。但我还是强烈建议学习GIS的同学学习一下,一方面锻炼开发能力,另一方面在学习源码的过程中深化GIS知识。

浅谈安装

我了解到的SharpMap的安装主要有以下三种方式:

  1. 如果可以科学上网的,可以从官网上下载SharpMap库, 官网直通车:http://sharpmap.codeplex.com/ 然后在VS里引入DLL即可。
  2. 下载GitHub上SharpMap的源码进行编译,链接直通车:https://github.com/SharpMap/SharpMap 这个方法不需要科学上网,前提会编译源码😢
  3. 使用NuGet程序包来下载,我推荐这种方式,较为简单快捷!

我的第一个SharpMap窗口

准备工作

  1. 首先创建完WinForm窗口后需要准备一下Sharpmap这个库,首先点开NuGet程序包
    在这里插入图片描述
  2. 搜索SharpMap,认准版本是1.2.0,然后下载SharpMapSharpMap.UI这两个库。
    在这里插入图片描述
    3.当我们下载好之后,我们会惊喜地发现工具箱里多了两个工具栏,没错,这个就是我们待会需要用来创建地图控件的工具。
    在这里插入图片描述
  3. SharpMap.UI下找到MapBox这个工具,然后拖到我们的Form里面,这样我们就初始化好了一个地图,类似于在加载地图之前,你得准备一个空白的画布,待会方便把地图加载在这块空白的画布上。
  4. 接着我们修改一下背景颜色让其更加地显眼。 在这里插入图片描述
    接下来,就让我们来尝试加载一些数据上去!

加载数据

在加载数据之前,我们需要先对Program.cs文件先添加几行代码,因为在SharpMap问世的这些年来,随着各种依赖库的更新和弃用,Sharpmap里原本加载数据的功能也受到了一定影响,在Program.cs文件里添加下面两行神奇的代码可以维持它的这项功能。

using NetTopologySuite;
using ProjNet.CoordinateSystems;
using ProjNet.CoordinateSystems
评论 11
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值