ThinkGeo.com    |     Documentation    |     Premium Support

Loading Google Map data

 I'm new to GIS mapping projects and have downloaded the trial version of Map Suite to begin evaluating for a project my company is about to begin. We would like to use Map Suite with the Google Map data. I am trying to perform the simple task of loading a map to a basic WPF window, but nothing appears.  Could I please get some feedback on what I am doing wrong?


       private void Window_Loaded(object sender, RoutedEventArgs e)


        {


            map1.MapUnit = GeographyUnit.Feet;


            map1.CurrentExtent = new RectangleShape(-155.733, 95.60, 104.42, -81.9);


            GoogleMapsOverlay gLayer = new GoogleMapsOverlay("C:/MapImages", @"my company URL",


                                                             @"my map key");


            gLayer.MapType = GoogleMapsMapType.Hybrid;





            map1.Overlays.Add(gLayer);


            map1.Refresh();


        }


 



Ben, 
  
 Thanks for your post and welcome to MapSuite’s world. :) 
  
 Your sample code is very helpful to let me find the problem is, there are two places are incorrect: 
 1. GoogleMapsOverlay only works at map unit Meter, so you can change it to 
  map1.MapUnit = GeographyUnit.Meter; 
 2. Your map extent is incorrect, since map unit is not decimal degree, so the value you set is too small, you can try this one: 
 map1.CurrentExtent = new RectangleShape(-13939426.6371, 6701997.4056, -7812401.86, 2626987.386962); 
  
 Let me know if you have more questions. 
 Thanks, 
 James 
  
  


 



Also I’ve updated the code and still no map showing. 
  
 
private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            map1.MapUnit = GeographyUnit.Meter;
            map1.CurrentExtent = new RectangleShape(-13939426.6371, 6701997.4056, -7812401.86, 2626987.386962); 
            GoogleMapsOverlay gLayer = new GoogleMapsOverlay(“C:/MapImages”, @“company URL”,
                                                             @“key”);
            gLayer.MapType = GoogleMapsMapType.Hybrid;

            map1.Overlays.Add(gLayer);
            map1.Refresh();
        }
 
 
  
 the xaml is very simple… <Grid><map:WpfMap Name=“map1”/></Grid> 
  
 My company is very seriously looking at Map Suite because it would work well with our .NET application and is much easier than wrapping the Google Earth API with C#, but I would like to give them a demo before we buy so that I can be sure it will work for us. 
  
 Also just an observation while looking at Google API items, but it appears that Google Maps will not be using this same client ID/private key for new API version. Will/Do you guys support this?

I have the map loading when I use the default GoogleMapsOverlay constructor, so could this indicate a problem with my client id/key pair?

Ben,


Default GoogleMapsOverlay constructor is designed for Google Maps free user, so if you use it well, I think you need to test your client ID/private key with Google Maps Official Samples, you can see it from here: code.google.com/apis/maps/do...StyledMaps


Or you can post the exception to us, we will see what happening.


Any more questions please feel free to let me know.


Thanks,


James