ThinkGeo.com    |     Documentation    |     Premium Support

Mini Map with WPF Desktop Edition

Hello,


I converted your sample DesktopEditionSample_MiniMapWithGoogleMap to run with WPF Desktop Edition. But I only get it to work if I use SingleTile mode for my overlay. If I change the TileMode to Multithread I get an exception.


Any idea?


Thomas



GISWpfSample_MiniMap.zip (15.4 KB)

Hi Thomas,


The TileMode of GoogleMapsLayer is MultiTileMode by default, so this means the drawing of it is in multithread, and you need to lock the layer, in the DrawCore method of class cNettroMiniMapLayer,  add a locker for the layers:



For Each layer As Layer In m_layers
    SyncLock (layer)
        layer.Draw(minCanvas, labelsInAllLayers)
    End SyncLock
Next

The it will work properly.


Regards,


Edgar



Edgar,


thanks for information. I have add your code and it works now. But now I tried to display OpenStreetMap as MiniMap and it lools like OSM has a problem when drawing to the canvas. OSM draws only a part of the mini map image. I have added my sample code where you can see the problem.




GISWpfSample_MiniMap_2.zip (14.8 KB)

Thank you for your sample, we confirmed it’s a bug and it has been fixed, please get he 6.0.199.0 or 6.0.0.199 and have a try. 
  
 Regards,  
 Edgar