I've searched the forum posts with no luck, so here is my own post.
The map hides small polygons and shows them as the map is zoomed. How can I override this to always show all polygons?
Hi Mikael,
Are you using a shape file?
To initially zoom in the map, so that even the small polygons on the shapefile to be visible, you could implement a similar approach to the one described here.
Hope that helps,Milana Zhileva
The features are loaded from SQL Server and imported into the layer. This works fine, and I also zoom the map to the extent of the loaded features. That is not the problem.
Some of the features are quite small, causing the map not to draw them. This leaves tiny holes in the map. When I then zoom further into the map the small features are drawn. What I want is to override this behaviour, causing all the features to draw always independently of their size and the zoom level.
Hello Mikael,
I have been looking into your requirement, but it seems like that I am missing something with your scenario, because I am not sure what elements you are using for the “small features”, so could you please send me an isolated sample project where this issue is reproduced, so I can investigate it further for you. Also you can see this link from our documentation where it is explained how to add surface elements, which are shown no matter how you zoom:
http://help.infragistics.com/NetAdvantage/DV/2011.2/CLR4.0/?page=xamWebMap_Add_Surface_Element.html
Looking forward for your reply.
The features are loaded from SQL Server using SqlShapeReader. After loading they are kept in memory as type MapElement. Some are large and some are small. The small features do not show up in the map before zooming in. From this it is clear that the map (or the layer) decides not to draw a MapElement unless it covers a certain minimum area of the entire map window. Somehow it should be possible to override this threshold.
Any way, I don't have the luxury of time to create a new test project and hardcode into it the feature points that we now load from a database, as we are closing in on release. It seems that we just have to live with this limitation for now and try to work around it at a later time.
It seems like that this is built - in functionality and it is made that way to optimize the performance of the XamMap. For example, if you have a World map, when it is not zoomed. it is not detailed and when you zoom it, the boundaries become more detailed with every zoom. I also attached two screenshots which demonstrates that very small elements are no rendered before you zoom. The solution for this is to add extra global layer which will be visible no matter how you zoom out and there won’t be gaps in the Map. Here you can see such example:
http://samples.infragistics.com/sldv/RunSamples.aspx?cn=map#/map/map-layer-drilldown
Also, every Layer has a VisibleFromScale Property, which determines when to render the layer. In the screenshots I removed the Global layer and set the second one VisibleFromScale to 0.
Hope this helps you.
I understand that this is a optimiziation technique, but imho this should be possible to configure using a threshold property. In our specific scenario the performance penalty from drawing all features would be minimal. Generating a "background feature" to avoid holes would be a much more expensive operation, since the selection of features in the map are dynamic. This means that we for each presentation would have to load all features and merge then into one single background to avoid the holes in the map.
Hopefully a future release will include the option to override this optimization and render all features unconditionally.
Kind regards, Mikael Ørseng
After some research, Rendering small surface elements has been determined to be a new feature request. I have sent your feature request directly to our product management team. Our product team chooses new feature requests for development based on popular feedback from our customer base. Infragistics continues to monitor application development for all of our products, so as trends appear in requested features, we can plan accordingly.
We value your input, and our philosophy is to enhance our toolset based on customer feedback. If your feature is chosen for development, you will be notified at that time. Your reference number for this feature request is FR13785.
If you would like to follow up on your feature request at a later point, you may contact Developer Support management via email. Please include the reference number of your feature request in the subject and body of your email message. You can reach Developer Support management through the following email address: dsmanager@infragistics.com
Thank you for your request.
Thanks for the feedback. I'm looking forward to see this feature implemented.
Kind regards