GIS4U - Adding spatial data, analysis, and mapping to your application with DotSpatial

Today's post is a little different in that it's a open source GIS set of utilities and tools. Maybe not as "fun" as games and stuff, but fun is in the eye of the beholder (or something like that... Wink

DotSpatial

What is DotSpatial?

DotSpatial is developed by members of the MapWindow GIS open source team, and the broader OSGeo .NET developer community. Please join the OSGeo .NET mailing list . You can also see a list of our steering committee members and join our growing list of volunteers

Project Vision: DotSpatial aims to provide a free, open source, consistent and dependable set of libraries for .NET, Silverlight and Mono, enabling developers to easily incorporate spatial data, analysis, and mapping into their applications thereby unleashing the massive potential of GIS in solutions for organizations and communities of all types in a nonrestrictive way.

High Speed Video Demos: If you are new to DotSpatial, start by watching these videos. Note that the name spaces have changed a bit from these videos, but this is a great way to see what DotSpatial is all about.

image

Standard Architecture Demo

Double Map Layout

 

To see how easy it is to use, check out this tutorial on CodeProject

Basic DotSpatial Desktop Mapping

DotSpatial is an open-source project that contains controls which can be used to manipulate and display geographic information. This article provides a quick overview and functional code that will help you get started with DotSpatial. Some of the basic operations that can be performed include: loading a shape file, panning and zooming.

  • Downloading DotSpatial
  • Creating a project
  • Changing Target Framework
  • Adding Toolbox items
  • Laying out the user interface
  • Adding DotSpatial references
  • Setting control properties

And you've got a simple running example DotSpatial app. Just feed it some data (for which links are also provided)

Included in the download from the CodePlex project is a Demo app that lets you see the features in action. Here's a snap of it with a couple data sets downloaded from Natural Earth Data, 1:10m Physical Vectors and Diva-GIS

If you're new to GIS, it's a game of layers. Each data set is a different layer. So you create a new Map, then you add layers. These layers are what I downloaded from Natural Earth Data. (So you don't File/Open the data downloaded, you add a layer and then select the data downloaded... does that make sense?)

SNAGHTML29d675a7

This project provides you with the UI tools to add this kind of capability to your applications (Note its licensed as LGPLv2.1).

So lets take a brief peek at the actual project. The list of support/third party assemblies is interesting;

image

Here's a broader overview of the source;

SNAGHTML29e94f44

Finally here's a snap of the Solution;

image

As you can see, this is a complex project. What's nice is that the complexity doesn't matter if you're just consuming the binary assemblies (a shown in the CodeProject Project). All the code is there if you want to spelunk, but if all you want to do is add cool GIS stuff to your app's the binaries are waiting for you....

Follow the discussion

  • Oops, something didn't work.

    Getting subscription
    Subscribe to this conversation
    Unsubscribing
    Subscribing

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.