We had previously attempted to use the WicBitmapExtension to increase the performance of our application in Aug 6, 2012. At that time we were still restricted by our customer to running on Win XP as a 32-bit application. At that time I couldn't get the WicBitmap Extension to work and we concluded it was a limitation of working with Win XP. Our customer has finally agreed to upgrade our application to Win 7 Pro as a 64-bit application.
I tried again to get the WicBitmapExtension to work for the DesktopSample (we use the Desktop Edition of MapSuite 6.0 Production Build). Initially, I was getting the same exception that I was getting in the Win XP environment but I was able to get around the exception by removing the code in the sample that was defining the GeoCanvas for the WinformsMap coming from the resources. Once I remove the code which was initializing the GeoCanvas from the resource file the sample application will run.
The problem now is that we use the MapSuite WorldMapDataKit as the source for the maps in our application and after adding the WicBitmapGeoCanvas to the application the performance it much, much, much worse. Before adding the line of code:
winformMap1.GeoCanvas = new WicBitmapGeoCanvas();
it takes between 1-2 sec to initially load and display the WorldMapKitData layers (We still use the code to build and render the map which is nearly the same as the Desktop sample code which is delivered in the WorldMapKitData distribution). After I add the line of code above it consistently take more than 18 seconds to build and render the same display of the map for the WorldMapDataKit.
Even after the initial display of the WorldMapDataKit, every operation on the map (zooming, panning, etc.) take more than twice as long with WicBitmap included than without. Note that our application depends heavily on drawing geometric shapes and icons on the map but that I was not drawing any shapes or icons during this testing. This testing was only using the layers and overlays for the WorldMapKitData. Each zoom, pan operation was taking 2-4 seconds with WicBitmap compared to 1-2 seconds without.
We expect the performance with WicBitmap to be faster. The description on the MapSuite web pages said that Direct2D would be up to 50% faster not twice as slow.
Does anyone have any idea why WicBitmap would decrease the perfromance like this? Our hardware is not the newest and fastest (Dell Optiplex 755) but I believe it should be supporing Direct2D (how can we tell?)
Thanks for any help.
Richard