ThinkGeo.com    |     Documentation    |     Premium Support

OpenStreetMap and RestrictExtent

Hi,


I'm setting the RestrictExtent to the bounding box of an OpenStreetMapOverlay. It restrict the panning.


But I cannot pan to the far east or west of the OpenStreetMap overlay, i.e. there's a small portion on the left (e.g. Hawaii) and the right (e.g. New Zealand) of the map that i cannot access.


Thanks,


P.OM



Puthirak, 
  
 Thanks for your post, 
  
 Can you tell me the RestrictExtent what you set for the OpenStreetMapOverlay so that I can reproduce your problem properly. 
  
 Thanks, 
  
 Scott,

Hi Scott,


Sorry for the late feedback, I was on a short vacation.


I've join a project to demonstrate my issue. I think my problem is how I recalculate the restriction extent when the CurrentExtentChanged event is fired.


I admit that I don't fully understand the relation between extent, zoom level and scale...


Hopefully, you can enlighten me :)


P.OM



 Puthirak,


I tested your sample based on the latest WPF Desktop Edition, but I cannot reproduce your problem properly, also you code worked fine, if I don't misunderstand anything, I think you talked about why you cannot pan to the map to see the Hawaii and New Zealand? If that, that's determined by the restrict extent what you set, I reviewed your code, obviously, when you calculate the new restrict extent, the width is not enough, you should adjust the value for the width when calculating the new restrict extent. Please change the code in the extent change event as below:
 


ZoomLevelSet zoomLevelSet = wpfMap.ZoomLevelSet;
RectangleShape newRestrictExtent = ExtentHelper.SnapToZoomLevel(restrictExtent, GeographyUnit.Meter,
                                                        1100, (float)this.ActualHeight, zoomLevelSet);
  Here is the screen shot below for Hawaii and New Zealand what I panned to on your sample application:




Any more questions please let me know again,


Thanks,


Scott,