RadMap VisualizationLayer Cluster Performance

5 posts, 0 answers
  1. Thomas
    Thomas avatar
    8 posts
    Member since:
    Jul 2017

    Posted 05 Feb 2018 Link to this post

    Hello,

    We have an issue about the VisualizationLayer control fo RadMap, we are currently on version 2016 R3

    We try to display +1500 data in a country with smooth performance when moving or zooming, but actually we tried a lot of things and nothing change.

     

    We started to use InformationLayer and it was perfectly smooth but all points were on top of each other and it was ugly.

    So we change to VisualizationLayer, while setting ItemsSource + Clustering enabled:

    - Dataloading was correct

    - Moving was smooth (in same zoom)

    - But Zooming in or out was extremely slow and froze everything for some seconds

     

    Then we added GenerateClustersOnZoom = false

    It helps a little when its zooming but at the end we have the same freeze as before when it actually refresh all clusters

    And let some clusters on the map (I don't know why)

     

    We also tried with a VirtualizationSource, it was a little better but still far from the behavior of the InformationLayer

     

    What do we need to do to have Clustering as fast as the InformationLayer in term of moving/zooming on the map ?

    Or why the clustering is so time consuming ?

     

    Regards

  2. Petar Mladenov
    Admin
    Petar Mladenov avatar
    3086 posts

    Posted 08 Feb 2018 Link to this post

    Hello Thomas,

    When extensive zooming is performed a lot of (Items.Remove) and (Items.Add) operations are scheduled and later performed. We are aware of such performance issues in VisualizationLayer with clustering enabled. That is why we highly encourage you to use this feature in combination with virtualization. For best results, these two can be also combined with AsyncReader which will add the elements in map asynchronously. You can check the Virtualization And Grouping example (it is available in our WPF demos too). Notice the items disappear before zooming (before refresh) which additionally speeds up performance. In your case probably the biggest effort will be organizing your data in SHP file. You can for example use QGIS. I hope this is an option that you will consider.

    Regards,
    Petar Mladenov
    Progress Telerik
    Want to extend the target reach of your WPF applications, leveraging iOS, Android, and UWP? Try UI for Xamarin, a suite of polished and feature-rich components for the Xamarin framework, which allow you to write beautiful native mobile apps using a single shared C# codebase.
  3. Thomas
    Thomas avatar
    8 posts
    Member since:
    Jul 2017

    Posted 08 Feb 2018 Link to this post

    Hello,

    Thanks you for the reply.

    We will try creating a SHP file while using AsyncReader as the example shows.

    I will tell you if it works fine.

     

    Regards

  4. Thomas
    Thomas avatar
    8 posts
    Member since:
    Jul 2017

    Posted 08 Feb 2018 Link to this post

    I was thinking about my problem and your answer:

    Using a shape file will not resolve my problem of zooming ?

    I already use the virtualization of the source to tile the points and clusters display but zooming is very slow and freeze everything until all tiles are loaded. That's the main part I want to optimize

    Do you have a solution for this problem ?

     

    Thank you

  5. Petar Mladenov
    Admin
    Petar Mladenov avatar
    3086 posts

    Posted 09 Feb 2018 Link to this post

    Hello Thomas,

    I mentioned the root cause of the zooming performance - lots of objects removed and re-added to a Canvas. I then suggested the combination of shape file, async reader  and virtualization as the best known optimization for such big amount of objects and clusters. I hope it will give you the best results in your scenario. Another thing worth trying is stopping the animations - set UseSpringAnimations = False on RadMap.

    Regards,
    Petar Mladenov
    Progress Telerik
    Want to extend the target reach of your WPF applications, leveraging iOS, Android, and UWP? Try UI for Xamarin, a suite of polished and feature-rich components for the Xamarin framework, which allow you to write beautiful native mobile apps using a single shared C# codebase.
Back to Top