May 30

Written by: Soul Solutions
Saturday, 30 May 2009 

DeepEarth will become an innovation centre for controls, libraries and services for use on any Silverlight mapping platform.

DeepEarth

Some Background

DeepEarth began as a project for likeminded developers to explore what the power of Silverlight, DeepZoom and Maps could do. Huge contributions from developers like Shaun, Rick and David created an innovative open source map control with many components. At Christmas 2008 we produced a V1 release and followed up with a V1.1, many developers have downloaded and used the control with successful results. But a few things happened in March this year which stalled the project:

  • Microsoft released Silverlight 3 preview
  • Microsoft release the Virtual Earth CTP Silverlight control
  • ESRI released a Silverlight control

None of these were unexpected but certainly these made me think about what would be best for DeepEarth and developers wanting to contribute to this space. Some lessons I have learnt over the life of the project:

  • The project must be very simple to get running on your machine, tokens, source safe files and many web projects makes this tricky.
  • For people to easily contribute a few days of their valuable time the solution needs to be easy to understand or else all effort is used in just getting to terms with the existing code.
  • People want to contribute code, more flexibility is required in giving write access (Developer Role)
  • Everyone's time is precious and although we enjoy coding new exciting silverlight controls it often takes a back seat to other commitments.
  • Commercially it is impossible to use an unsupported open source control for production environments

New Direction

Firstly we won't be abandoning the existing control, it still is the only open source Silverlight map control available. Rather we will be componentizing the reusable controls and code and moving these into separate generic controls with implementations for other Silverlight map controls, for example the Microsoft Virtual Earth CTP Silverlight control.

Each control will be its own project within the solution, with the ability to add implementations for any Silverlight map control developers want to use. This modular approach solves many problems:

  • Developers can pick and choose what they want to use from the project for their solution
  • It will be very easy to contribute a new control or enhancement to an existing control
  • Developers can choose which base map control suits there specific needs and still use rich common controls.
  • We can provide a Silverlight 3 branch of controls.

Secondly I'm please to announce we have a commercial partner that will be providing enterprise level testing, documentation and support around this project. More details to follow on this but essentially controls developed here will be refactored, documented, unit tests created and then published back to this project under the Microsoft Public License (Ms-PL).

Lastly I have a list of the current control and some more I've been working on that will make the initial base of the project.

  • Navigation Control
  • Co-ordinate Control
  • Layer Control
  • Digitizer (drawing) Control
  • Timeline Control
  • Collaboration Control
  • Mini-map Control
  • WMS Control
  • Pins, Polygons, Poly-lines
  • GML Serialization (SQL2008 integration)
  • Tile Providers
  • Tile Cache Handler

Over the next few weeks there will be some restructuring here, I'd love to hear your feedback and constructive criticisms.

Tags:

3 comment(s) so far...

Re: Future Direction for DeepEarth

John this sounds an excellent plan and a brilliant way forward for the VE SL community, I can't wait to get involved. Thanks again!

By Brian on   Saturday, 30 May 2009

Re: Future Direction for DeepEarth

Are there any plans to implement pin clustering?
There grid algorithm that VE is using seems to be inaccurate and pins seem to be biased towards the grid cell centers. Another issue with it is that pins with low-density distribution residing close to the edge of cell boundaries have the tendency to overlap each other, and that is exactly the reason to use clustering. There are better clustering algorithms, for example Genetic Algorithms www.geocomputation.org/2000/GC015/Gc015.htm).
You can look at it as a ripple effect that starts from the center of the map viewable area, which is also more suitable for DeepZoom (better user experience).
It would be nice to have a pop-up with a higher zoom level mini-map and/or a list of pins and their titles(should be able to customize view) that are represented by the cluster point. Cluster pins can reside on another layer, and original pins can be hidden. This way, it would be easy to dispose of the cluster pins when zoom level changes.

By Ruslan Urban on   Wednesday, 3 June 2009

Re: Future Direction for DeepEarth

@ruslan, absolutely this is exactly why we need this project. I have some clustering work comming up for a client and I will be contributing it. Just ping me if you would like to get involved.

By John on   Thursday, 25 June 2009

Your name:
Your email:
(Optional) Email used only to show Gravatar.
Your website:
Title:
Comment:
Security Code
Enter the code shown above in the box below
Add Comment   Cancel 
Copyright © 2002-2013 Soul Solutions Pty Ltd. | Login