Map engine for WPF GIS applications

Why is it so hard to buy a map engine to be embedded into a .NET WPF desktop application? When developing your typical command and control system, selecting a GIS component to embed into your WPF based client can be really difficult.

The choices available are either too limited with regards to supported map data formats, requires data pre-processing or have wholly inadequate licensing models, pricing or both. Most, if not all of the better choices are based on ActiveX which makes them somewhat cumbersome to embed in clients built on WPF.

Many organizations are moving to more agile development processes where specific architectural roles are often discouraged. Everybody are expected to be able to work on the complete application stack and that means having access to all the tools needed, including the map engine SDK. Pricing and licensing really becomes an issue for teams wanting to stay truly agile.

I feel that WPF is about to finally break through in corporate business applications. Silverlight has made a difference and the tooling, both the Expression suite and Visual Studio 2010 is getting there, albeit a little late, perhaps. This could mean trouble for the established vendors if they don’t act to accommodate this growing market.

I would like to see a map engine component that does the following:

  • Native .NET WPF control
  • Reference system supported canvas for drawing on layers
  • Complete documentation with a rich set of samples
  • $499 for the SDK
  • No charge for the runtime

I think that there might be a feature list in there somewhere that includes just the right amount of functionality that perfectly executed could have fantastic potential. What do you think?

5 Responses to “Map engine for WPF GIS applications”

  1. Pelle Says:

    I haven’t spent a lot of time, but it seems that almost all existing .NET-based GIS code out there is licensed under some kind of GPL (e.g. SharpMap in its newer versions) which makes it hard to build something commercial without starting from scratch. In the native world at least you have GDAL, OGR and PROJ.4.
    .NET doesn’t have a decent TIFF decoder to base GeoTIFF support on and (this is only from reading new groups not from personal experience) WPF does not seem a suitable technology for drawing complex graphics.
    http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/f8356cc9-326b-438d-944c-fa122a542b01/

    If I were to start from scratch on this, I would experiment with Direct2D with SlimDX (accelerated “rich” 2D API that MS should have delivered 5 years ago) and then integrate the Direct3D surface back into WPF somehow. As for geodetic datum and projection support I wouldn’t know where to go.

    And your price wish does seem a little unrealistic…

    /P

  2. Martin Altenstedt Says:

    @Pelle, on price, I guess I could go a little higher, like up to $999 or so, but the fundamental aspect of my idea is that embeddable GIS components should be commodity software by now. That means that the pricing should not differ from other components, like ReSharper or Infragistics, for example. The way you purchase should be a single “Buy Now” click away followed by your VISA card details, no questions asked. Oh, and no charge for the bloody runtime.

    My Google Foo might be weak, but I just can’t find many good, commercial options that fit the needs I enumerated in my post, even with pricing not considered.

    While I haven’t actually had a closer look at the technical aspects of such an endeavor, I guess it is not easy (I think I just assumed that deriving from VirtualizingPanel would be feasible). But hey, if it had been easy, the market would have been full of good GIS components for my WPF needs. Maybe a $499 price tag is unrealistic, I don’t know, but I feel the time is ripe for someone to blow the existing GIS players out of the water with something leaner, with a more modern approach.

  3. Pelle Says:

    I’m not sure I agree with your choice of components to compare with. Resharper only sells developer tools with no redistributable components and Infragistics from what I can tell from their web site only sells commodity stuff like dock managers and masked edit controls (I though they had been banned by the usability police?).
    Several years ago I was involved in an engineering-driven effort to produce a pure .NET GIS visualization component but nothing much ever came out of it performance or feature-wise and without a single thought on how to go to market of course it was an utter failure.

    But hey, maybe you’re right and the time has come for commoditizing GIS components. It’d be interesting to hear you views on what problems it needs to solve and the market size. Maybe we can sell the idea to a product manager I know…

  4. Martin Altenstedt Says:

    Right, I just pulled two examples out of my ass since they happened to be fresh in mind. More than anything, I was thinking of the commodity, price, license and purchase model of these two examples.

    My general thinking stems from a frustration purchasing a GIS component for your typical Command and Control system. But also I feel that the commercial options are too weak on custom data visualization. I want the full power of WPF UIElement rendering for my data and the usual WPF transforms for the component itself. Is that too much to ask in 2009? I would be all over such an alternative and I’m guessing I’m no different from all the others trying to render maps and accompanying data in WPF applications. There just has to be a business model in there somewhere!

    Anyway, I just wrote a VirtualizingCanvas class, deriving from VirtualizingPanel and IScrollInfo and it there are problems when trying to handle objects in the order of 10,000. Maybe I should hack something based on your SlimDX idea but then I have to do some heavy lifting on corresponding UIElement animations and the like. Oh well.

  5. Daniel Says:

    Hi,
    Have you seen this
    http://www10.giscafe.com/nbc/articles/view_article.php?articleid=607134
    (I´m not a developer…)

Leave a Reply