ThinkGeo.com    |     Documentation    |     Premium Support

Speed is slow with WorldMapKitMapType.AerialWithLabels

Hello,

I am currently working with your evaluation package. I have the control in a form that loads with the WorldMapKit.AerialWithLabels as the source. Everything functions as expected but it is incredibly slow. Am I doing something wrong?

        InitializeComponent();
        this.statusStrip1.Visible = false;
        this.iSet = iSetIn;


        winformsMap1.MapUnit = GeographyUnit.DecimalDegree;
        winformsMap1.BackgroundOverlay.BackgroundBrush = new GeoSolidBrush(GeoColor.GeographicColors.ShallowOcean);

        WorldMapKitWmsDesktopOverlay worldMapKitDesktopOverlay = new WorldMapKitWmsDesktopOverlay();
        worldMapKitDesktopOverlay.MapType = WorldMapKitMapType.AerialWithLabels;
        winformsMap1.Overlays.Add(worldMapKitDesktopOverlay);

        //Set the zoom
        myGeoCoords.UtmCoord topLeftUtm = this.iSet.Infos[0].GetKeyUtm().CloneValues(); //use the band and zone and stuff from the first image
        topLeftUtm.Easting = this.iSet.GetMinEastingOfSet();
        topLeftUtm.Northing = this.iSet.GetMaxNorthingOfSet();
        //apply buffer offsets
        topLeftUtm.Easting -= 100.0;
        topLeftUtm.Northing += 100.0;

        myGeoCoords.UtmCoord bottomRightUtm = this.iSet.Infos[0].GetKeyUtm().CloneValues(); //use band and...
        bottomRightUtm.Easting = this.iSet.GetMaxEastingOfSet();
        bottomRightUtm.Northing = this.iSet.GetMinNorthingOfSet();
        bottomRightUtm.Easting += 100.0;
        bottomRightUtm.Northing -= 100.0;

        myGeoCoords.LatLong topLeftLatLong = myGeoCoords.ConvertToLatLongFromUtm(topLeftUtm);
        myGeoCoords.LatLong bottomRightLatLong = myGeoCoords.ConvertToLatLongFromUtm(bottomRightUtm);


        /*
        winformsMap1.CurrentExtent = new RectangleShape(-98.912923099994657, 40.485375292301178,
-98.9008638882637, 40.479238398075104);
        */
        winformsMap1.CurrentExtent = new RectangleShape(topLeftLatLong.Longitude, topLeftLatLong.Latitude, bottomRightLatLong.Longitude, bottomRightLatLong.Latitude);

        //winformsMap1.TrackOverlay = new CustomTrackInteractiveOverlay();
        winformsMap1.MouseMove += WinformsMap1_MouseMove;
        winformsMap1.MouseDown += WinformsMap1_MouseDown;
        //winformsMap1.TrackOverlay.TrackEnded += TrackOverlay_TrackEnded;
        //winformsMap1.Refresh();

Hi Mark,

As below is our test code, we did a quickly test today, it looks the 3 map types get the same speed:

    winformsMap1.MapUnit = GeographyUnit.DecimalDegree;            

        WorldMapKitWmsDesktopOverlay worldMapKitDesktopOverlay = new WorldMapKitWmsDesktopOverlay();
        worldMapKitDesktopOverlay.LayerType = WorldMapKitLayerType.OSMWorldMapKitLayer;
        worldMapKitDesktopOverlay.MapType = WorldMapKitMapType.AerialWithLabels;
        winformsMap1.Overlays.Add(worldMapKitDesktopOverlay);
        
        winformsMap1.CurrentExtent = new RectangleShape(-180, 80, 180, -80);

        winformsMap1.Refresh();

So I think that’s not related with code, maybe it’s related with network speed.

Please try to set cache for the overlay, which should be helpful.

Regards,

Don