ThinkGeo.com    |     Documentation    |     Premium Support

World Map Kit Extractor output

I’ve used the World Map Kit Extractor to pull out a portion of the world map and it seems to run just fine.  The problem is that when I bring the resulting sqlite file into the OSM World Map Kit SDK Sample application some of the zoom levels appear to be missing.  That is, as I zoom in the map will go blank after a few levels.  I’ve also noticed some wide white bars across the map at certain points when using the extracted data.  However, when I use the full map data everything works fine.  I’m able to zoom in and see all the detail.  I’m using 4326 for the source database srid when I do the extraction.  Am I using the extractor properly or is there a different way that I should do this?

Hi Neil, 
  
 If you found the white blank area, please let us know the extent of it, so we can reproduce that. 
  
 And World Map kit with SQLLite version is keep optimize these months, so please make sure you are using the latest version dll and latest version database, if the version is not the same, you will met some problem. 
  
 Regards, 
  
 Don

Don, 
 Thanks for responding.  I’m not sure how to determine the version of the database, but we just recently purchased the WPF Desktop edition and the SDK, so I’m using the database from the link I was given (I received the link on Feb. 2 of this year, so I think we do have the latest db).  As far as I can tell we’re using WPF Desktop Edition 8.0 (from the Product Center).  The area I’m extracting is the default in the extractor:  Upper left = -104.04, 45.93  Lower right = -96.4, 42.5 with a Source Database Srid of 4326 .  I see the same type of results with zooming whether I have “Preserve Country Level Data” checked or not.

Hi Neil,



I think our SQLLite world map kit data should be based on epsg 3857, I did a test based on that and it looks the extent you mentioned shows map correct. Please see my screen capture as below:







If you found I missed anything please let me know.



Regards,



Don



After some further testing I think I see what you mean.  I was able to get a good extraction like you did from the LasVegas3857.sqlite file (the sample data) and zooming looked fine.  However, when I tried the full map data (WorldMapKit4326.sqlite) using the same parameters in the extractor I still see the issues with zooming.  Does the 4326 in the file name indicate that the full map data is based on epsg 4326 instead of 3857?  It does appear to actually be based on 3857 since I’m able to get the full map data working with this code: 





proj4 = new Proj4Projection(Proj4Projection.GetEpsgParametersString(3857), Proj4Projection.GetDecimalDegreesParametersString());







I assume I should be able to perform the same extraction on the full map as I did on the Las Vegas sample and achieve the same result.  So, the short version of all this is that I can extract good data from the Las Vegas sammple but can’t do the same from the full map.  Either my extract is bad or my projections aren’t right. 



Here’s the code from the OSM World Map Kit SDK Sample (slightly modified for my data): 



[code]

private void wpfMap1_Loaded(object sender, RoutedEventArgs e)

{

  string s = ConfigurationManager.AppSettings[“SqliteConnectionString”];

  string sqliteConnectionString = “Data Source=E:\Test.sqlite;Version=3;Read Only=True;”;//ConfigurationManager.AppSettings[“SqliteConnectionString”];

  string sqliteFilePath = sqliteConnectionString.Substring(sqliteConnectionString.IndexOf(’=’) + 1, sqliteConnectionString.IndexOf(’;’) - sqliteConnectionString.IndexOf(’=’) - 1);

  if (proj4 == null)

  {

    proj4 = new Proj4Projection(ManagedProj4Projection.GetEpsgParametersString(3857), ManagedProj4Projection.GetEpsgParametersString(4326));

    proj4.Open();

  }

  wpfMap1.MapUnit = GeographyUnit.Meter;

  LayerOverlay overlay = new LayerOverlay();

  overlay.TileType = TileType.SingleTile;

  wpfMap1.Overlays.Add(overlay);

  OsmWorldMapKitLayer osmWorldMapKitLayer = new OsmWorldMapKitLayer(sqliteConnectionString, OsmWorldMapKitDatabaseType.Sqlite);

  overlay.Layers.Add(osmWorldMapKitLayer);

  osmWorldMapKitLayer.Open();

  wpfMap1.CurrentExtent = osmWorldMapKitLayer.Layers[“osm_road_linestring”].GetBoundingBox();

  osmWorldMapKitLayer.Close();
wpfMap1.Refresh();

}




This code works fine for the Las Vegas extraction but not for the full map extraction.

Hi Neil, 
  
 Sorry that I’m out of office these days, thus I need to download the OSM data from the company server, seems like it’s too big and may take a bit long time. If the downloading is completed, I will check it as soon as possible. Also you can send a quick question to support@thinkgeo.com, I guess they will give you a reply in time. 
  
 Thanks, 
 Johnny

Hi Neil,


We fixed a bug on WorldMapKit Extractor when the projection is 4326 and we uploaded it in our wiki sample, would you please get the latest in product center code samples or download it directly from wiki.thinkgeo.com/wiki/File:…141213.zip



Please let us know if the issue persists.

Thanks,

Troy