ThinkGeo.com    |     Documentation    |     Premium Support

WPF performance with shapefile

Hi 



I am getting very poor performance displaying a shapefile on top of a worldmaplayer.



It takes many seconds to refresh when zooming and moving around. 



Basically it is unusable.



I am hoping I am doing something wrong.



The code I am using is below.



The file is too large to post on this forum. But you can download it here

geodownloads.dmp.wa.gov.au/d…ntreDb.asp



Under Statewide Spatial Datasets

- Mineral Information

- Tenements - Current ( Live and Pending)

- Download

- Esri Shapefile



Hopefully you can see the problem as this is a real issue for us



regards



Murray






var layer = new ShapeFileFeatureLayer(file);
        layer.RequireIndex = false;
        layer.ZoomLevelSet.ZoomLevel01.ApplyUntilZoomLevel = ApplyUntilZoomLevel.Level20;
        layer.ZoomLevelSet.ZoomLevel01.DefaultAreaStyle =
            AreaStyles.CreateSimpleAreaStyle(GeoColor.SimpleColors.Transparent,
                                             GeoColor.FromArgb(100, GeoColor.SimpleColors.Green));
 
        // Convert to the current map projection
        var proj = new Proj4Projection
            {
                InternalProjectionParametersString = Proj4Projection.GetEpsgParametersString(4326),
                ExternalProjectionParametersString = Proj4Projection.GetEpsgParametersString(srid)
            };
        layer.FeatureSource.Projection = proj;
        proj.Open();
        _staticOverlay.Layers.Add(file,layer);









Hi Murray,  
  
 Thanks for your post and sorry for the inconvenience, we tried to download the data from the link, but it couldn’t be open on our side, would you please send it to forumsupport@thinkgeo.com? Once we get your data we will debug it immediately. 
  
 Waiting for your further information. 
  
 Summer

Hi



It has been emailed as requested

This doesn’t seem to be restricted to shapefiles.



I am having the same poor redraw on JP2 files as well.



Please let me know if you want me to send through one of those as well

Hi Murray,



Thanks for your data, we have found two ways to speed it up,



The first is to use build ShapeFileFeatureLayer.BuildIndexFile(shpPath, BuildIndexMode.DoNotRebuild)



The Second is to use tilecache, attahced is the sample would you please try it?



if you have any more question , please feel free to let us know.



Best Regards



Summer

008_007_006_005_004_003_002_001_Sample.zip (10.4 KB)

Ok thanks that seems to have improved performance. 
  
 I will do more testing over a range of files, but it seems that has fixed it

Hi there: 
  
 I have the same issues as Murray was posting, but I already had the TileCache and an index file for my shapefiles. 
 By the way: what does the BuildIndexMode.DoNotRebuild in ShapeFileFeatureLayer.BuildIndexFile(shpPath, BuildIndexMode.DoNotRebuild); ? 
  
 Any other idea about how to speedup this? 
  
  
 Thanks!

Hi Murray and Tomas, 
  
 Great to hear it helped Murray’s case and if you have any more question, please feel free to let us know. 
  
 Would Tomas please provide us your data for a further test, you could upload it here, or send it to forumsupport@thinkgeo.com if it is confidential.Once we get your data, we will debug it immediately. 
  
 Best Regards 
  
 Summer 


Hi Summer: 
  
 I will send you as soon as possible a sample code with this features. 
  
 Thank you for your answers. 
  
 Tomás

Hi Tomas, 
  
 Thanks for the input, and we will be waiting for sample, and if possible would you please send the data together? we will make a futher investigation for it. 
  
 Best Regards 
  
 Summer