On android when using the latest ThinkGeo version features placed on Bing and OSM maps are not showing up in the correct location. coordinates I am using are 33.753681,-84.381055 which is an intersection of Jesse Hill Jr Dr Se and Coca Cola PL SE in Atlanta – coordinates confirmed with Google Maps, and also confirmed using OSM maps in Thiinkgeo WPF.
I’ve not been able to get Google to work at all but I would suspect it has the same issues as well.
The location on Android is off by about 65 feet east and 120’ south. Code used for this test is as follows:
OpenStreetMapOverlay osmOvelerlay = new OpenStreetMapOverlay();
androidMap = FindViewById<MapView>(Resource.Id.androidmap); androidMap.MapUnit = GeographyUnit.Meter; androidMap.ZoomLevelSet = new SphericalMercatorZoomLevelSet(); androidMap.CurrentExtent = osmOvelerlay.GetBoundingBox(); androidMap.Overlays.Add(osmOvelerlay);
InMemoryFeatureLayer inMemoryLayer = new InMemoryFeatureLayer(); inMemoryLayer.InternalFeatures.Add(new ThinkGeo.MapSuite.Shapes.Feature(new Vertex(-84.381055, 33.753681)));
inMemoryLayer.ZoomLevelSet.ZoomLevel01.DefaultPointStyle.SymbolPen = new GeoPen(GeoColor.FromArgb(255, GeoColor.StandardColors.Red), 8); inMemoryLayer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;
LayerOverlay inmemoryOverlay = new LayerOverlay(); inmemoryOverlay.TileType = TileType.SingleTile; inmemoryOverlay.Layers.Add("InMemoryFeatureLayer", inMemoryLayer);
androidMap.Overlays.Add("memlayer", inmemoryOverlay);
Proj4Projection proj4 = new Proj4Projection(); proj4.InternalProjectionParametersString = Proj4Projection.GetEpsgParametersString(4326); proj4.ExternalProjectionParametersString = Proj4Projection.GetEpsgParametersString(3857); proj4.Open(); inMemoryLayer.FeatureSource.Projection = proj4;