ThinkGeo.com    |     Documentation    |     Premium Support

GoogleMapsLayer using Premier license

 


Hi, Rob
Yes, that’s a bug for GoogleMapsLayer. We will fix it immediately, any progress on it we will let you know first.
Thanks,
Khalil

Rui,


We have fixed this issue and it should be available in the latest Daily Build (4.5.23.0 or later). Please get it through helpdesk.thinkgeo.com/helpdesk/login.aspx.


Thanks,


Khalil



I don’t see a 4.5.23.0 under daily dev builds, only 4.5.21.0.  I tried it out with the latest daily prod build, 4.5.0.31, and the bugs are still present. Both the constructor bug, and the original bugs I described.

 


Hi, Rob
Please get the latest Development Daily Builds (4.5.32.0 or later), and it should be the one that has fixed the issues. The builds fails in the past few days, so that you can’t get it, anyway we have fixed that.
Thanks,
Khalil

I grabbed the new dev daily build (4.5.32.0), and it looks like the constructor bug is fixed, but the original bugs I described are still present. 
  
 I don’t think you understand the problem… 
  
 If I manually build a request to Google’s Static Maps with my clientID and sign it with my privateKey, I can get images up to 2048x2048 pixels.  
 If I use GoogleMapsLayer, I can only get up to 650x650 pixels. So it looks like there is something in your code that limits the size.

Rob, 
  
 Could you provide your manually request url to us? You can hide your clientId and privateKey but keep the string format the same structure.  
  
 Thanks 
 James

No need to hide my privateKey, since it is only used to sign the url with a signature: 
  
 maps.google.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=2048x2048&client=gme-decisioninsite&sensor=false&signature=a5B0W0Hc9FGgQ8Ie0_So-ajVF1w=

Rob, 
  
 I compare the request url with yours, they are almost the same, just has two addtional items: &maptype=roadmap&format=jpg-baseline, but I don’t think they will cause the smaller size problem, so we will add an event which will pass out request uri that you can debug at your side, this new API will available at version 4.5.37.0 
  
 Thanks 
 James

The problem still exists in version 6.0. 
 When we put the breakpoint in the creating request event,  
 this is the URL 
 maps.google.com/maps/api/staticmap?center=33.808829,-117.891551&zoom=17&size=512x512&maptype=roadmap&format=jpg-baseline&client=gme-decisioninsite&sensor=false&signature=BUbuE7ACsGPXYgyC0HZahf7Q5dI 
  
 So it is still limiting the tile size to be 512X512 where our license allows up to 2048x2048.

Hello Kenny,  
  
 Thanks for your post, I want to know which mode of tile are you using? If you are using MultiTile, we force the tile size as 512*512, it’s a const value. If you are using SingleTile, we will automatically set the size as the control size. 
  
 Regards, 
  
 Gary

I’m using Multi Tile but i’m sure this is an easy fix for you guys. 
 How soon do you think this can be fixed?

Kenny, 
  
 Can you use Single Tile Mode? We make each tile 512*512 in Multi Tile mode to make it easy to stitch and cache, for both premium users and free users.  Can you let us know your scenario? 
  
 Ben

No we need to use Multi Tile mode for exporting large image 3600 X3600 or even larger. 
 It is exactly what Rob stated in the first post. 
  
 " I am exporting 3600x3600 maps, and that gives me 49 Google logos and notices. If there were an option to use 2048x2048 images, it would only be up to 9 logos and notices (not to mention, less HTTP requests to Google)." 


Kenny,


We've exposed the APIs GoogleMapsLayer.TileHeight and GoogleMapsLayer.TileWidth in the latest version, please get the 6.0.75.0 and have a try.


Thanks,


Edgar



Cool, it works.

Hello Kenny,  
  
 I’m glad it’s working now, don’t hesitate to let us know your problem.  
  
 Regards,  
  
 Gary

Can you guys expose the staticmap request string to be edittable? We want to be able to add styled maps parameters.



Hi Kenny,


We have several events on the GoogleMapsLayer that should allow you to intercept the web request. I would check out the Public Events in our Wiki to see if these might allow you to inject your own parameters.

wiki.thinkgeo.com/wiki/Think...eMapsLayer



I’m using  6.0.128.0 and the variable CreatingRequestGoogleMapsLayerEventArgs is still a read only variable. 
  
 e.RequestUri.AbsolutePath = “test” 
 Property or indexer ‘System.Uri.AbsolutePath’ cannot be assigned to – it is read only

Hello Kenny, 
  
 I think you can use that like this:  
   
 e.WebRequest = WebRequest.Create(new Uri(url));  
   
 We change this in new version because we catch some requirements about it. Some users need change header or some other things in webrequest, we think this change will provide better user experience when they have some special requirement for this.  
   
 Regards,  
  
 Gary