-
-
Notifications
You must be signed in to change notification settings - Fork 313
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Faster polygon rendering #3
Comments
@pauldendulk Is it possible, for large geometry datasets, to use the GDI rendering interface and a TileLayer ? |
Yes, something like that could be possible. The Mapsui.Sample.Wpf project has a Shapefile sample that uses the RasterizingLayer. This uses the DefaultRenderer (in this case Mapsui.Rendering.Xaml) to create bitmaps from the shapefile vectors. You could create your own RasterizingTileLayer that works similarly. You could create a specific renderer instead of the default renderer. Some notes:
|
I just committed an update to ShapeFileSample to fix the Mapsui.Samples.WinForms sample. This uses GDI rendering. Also I did a quick test with GDI rendering in the RasterizingLayer. In Mapsui.Samples.Wpf.Window1.xaml.cs.ShapeFileClick I added this as first line:
And added a reference to Mapsui.Rendering.Gdi. To my surprise this just worked :). Performance was actually not that much faster. The main benefit of your suggestion is the rasterization. Which platform you use for rasterization is less important, but it helps if it's fast. |
A RasterizingTileLayer would only be advantageous if you can query your data spatially or cache tiles.
Yes, I hadn't looked closely at your library and I hadn't seen the RasterizingLayer!
GDI rendering would not have this issue. |
|
Removed body off double function ZoomTo()
use Sdk="Microsoft.NET.Sdk" and some conditional settings to better s…
The multi polygon has about 2870 nodes. Rendering is very slow and the UI (panning, zooming) stops working. Platform Mapsui Windows 8 Store App.
The text was updated successfully, but these errors were encountered: