This is a migrated thread and some comments may be shown as answers.

Rendering too slow on information layer control.

5 Answers 171 Views
Map
This is a migrated thread and some comments may be shown as answers.
Leopoldo
Top achievements
Rank 1
Leopoldo asked on 23 Jan 2012, 10:12 PM
We have arround 3,000 items on our map information layer. But the rendering is too slow and freeze the app for few seconds.How can we get a better performance or a faster rendering.

5 Answers, 1 is accepted

Sort by
0
Andrey
Telerik team
answered on 26 Jan 2012, 02:25 PM
Hi Leopoldo,

To get a better performance you can use a simple figure like rectangle or ellipse as an item. Also if the performance is very critical issue for you application than using of spring animation for zooming and panning, then I would recommend to set the UseSpringAnimations property of RadMap to "false", i.e. to disable it. The sample code is below.
<telerik:RadMap x:Name="radMap" UseSpringAnimations="False">
    <telerik:InformationLayer x:Name="informationLayer" ItemsSource="{Binding ItemsCollection}">
        <telerik:InformationLayer.ItemTemplate>
            <DataTemplate>
                <Rectangle telerik:MapLayer.Location="{Binding Location}" Width="10" Height="10" Fill="Red"/>
            </DataTemplate>
        </telerik:InformationLayer.ItemTemplate>
    </telerik:InformationLayer>
</telerik:RadMap>

Kind regards,
Andrey Murzov
the Telerik team

Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get it now >>

0
Leopoldo
Top achievements
Rank 1
answered on 26 Jan 2012, 11:47 PM
Hi Andrey;

We changed the UseSpringAnimations property  and use a simple figure but the 3000 points still rendering very slow. The information layer get the points coordinates from a database table .  Is a simple query, and the database and the service response very fast, but the rendering is too slow.  Any other option?
0
Andrey
Telerik team
answered on 31 Jan 2012, 11:49 AM
Hello Leopoldo,

We have checked the performance of rendering with 3000 points using a simple template. It works OK.
It looks like you meant the initial loading of points on the map. Unfortunately we can't improve the performance of this process. But if you shouldn't show all points on the map after loading, then you can use the dynamic layer for loading points according to zoom level and region.
Please take a look the Using Dynamic Layer topic of our documentation and the Items Virtualization example.
http://www.telerik.com/help/silverlight/radmap-features-dynamic-layer.html
http://demos.telerik.com/silverlight/#Map/DynamicLayer

Kind regards,
Andrey Murzov
the Telerik team

Explore the entire Telerik portfolio by downloading the Ultimate Collection trial package. Get it now >>

0
Was
Top achievements
Rank 1
answered on 31 Jan 2014, 01:12 PM
How much InformationLayers can have a Map when i show about a thousand items? i need more than one.
Please don't offer dynamicLayer, because user wants to see the full picture.
When i set UseSpringAnimations = false, i lose items in some ZoomLevels from InformationLayer, they just disappear. Seems like there is some rendering error. So please tell me, what is the max count of InformationLayers in this case?
It seems too, that sometimes, when i change map zoomlevel, the center of one layer differs from another.
0
Andrey
Telerik team
answered on 04 Feb 2014, 04:39 PM
Hi Was,

There are 2 visualization engines in the RadMap package.  The old implementation of the map objects' (points and shapes) visualization consists of 3 layers: InformationLayer, DynamicLayer and VirtualizationLayer. This visualization engine, however, lacks certain features and has a few performance issues. This is why with the Q2 2013 release we introduced a new visualization engine in the RadMap. It has been designed from scratch to have better performance. The new visualization engine replaces all 3 layers with the new VisualizationLayer. The major goals of the new engine are:

1. Improve the performance of the data visualization.
2. Allow reading map shapes from different sources (KML, ESRI, and SQL Geospatial) in the background thread.
3. Integrating clustering and items virtualization into the core. This simplifies the usage of both features.
4. Ability to attach/detach almost any input event available for the FrameworkElement to the map shape visualization.
5. Support of items selection in the engine core.

Having this information in mind, I would recommend using the new engine (and its VisualizationLayer) instead of old one (or the InformationLayer).

Also, you can use any number of layers, but note that each additional layer will reduce the performance of the Silverlight rendering engine. This is why I wouldn't recommend using a layer for each element which will be displayed on a map.

Regards,
Andrey Murzov
Telerik

TRY TELERIK'S NEWEST PRODUCT - EQATEC APPLICATION ANALYTICS for SILVERLIGHT.

Learn what features your users use (or don't use) in your application. Know your audience. Target it better. Develop wisely.

Sign up for Free application insights >>
Tags
Map
Asked by
Leopoldo
Top achievements
Rank 1
Answers by
Andrey
Telerik team
Leopoldo
Top achievements
Rank 1
Was
Top achievements
Rank 1
Share this question
or