[OpenLayers-Dev] zoom slow when overlay vector layer as marker
Tim Schaub
tschaub at opengeo.org
Tue Mar 16 12:01:06 EDT 2010
dequan chen wrote:
> hi all,
> I overlay Vector Layer to the map to monitor vehicles. every 5 second,
> update the location. I use vector layer as vehicle marker.
>
> Vehicle.vehicleLayer = new OpenLayers.Layer.Vector("",
> {
> styleMap: new OpenLayers.StyleMap({
> "default": {
> externalGraphic: "img/v1.gif",
> graphicWidth: 24,
> graphicHeight: 12,
> graphicYOffset: -5,
> rotation: "${angle}",
> label: "${vno}",
> fontSize: "11px",
> fontColor: "purple",
> labelAlign: "${align}",
> fontFamily: "Arial,Verdana",
> }
> })
> });
>
> the problem is, the vector layer contains almost 500 features stand for 500
> vehicles. when i zoom the map, the browser can nearly not work. user should
> wait 1 or 2 minutes or even more. but when i zoom the district that only
> monitor dozens of vehicles, pan or zoom the map will be normal. In the
> future, the vehicle number will reach to 1000.
> Is there any solution to this problem ? It is very ergent to me. thanks.
>
You'll get better performance if you avoid using rotation in a point
symbolizer. This is very handy for limited numbers of features, but can
become a bottleneck for rendering large quantities of features.
A workaround is to pre-rotate your graphics, and have the
externalGraphic property set based on some feature attribute (e.g.
`rotation / 10 | 0`).
You could also likely increase performance by not labeling all of your
features. If you hope to eventually display 1000 vehicles, I doubt
things will look nice with 1000 labels anyway. Displaying vehicle
information based on mouse events (mouseover, click) may scale better
than labeling all features.
Without profiling your application it's tough to get too much more
specific about where you could improve performance.
Tim
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Dev mailing list
> Dev at openlayers.org
> http://openlayers.org/mailman/listinfo/dev
--
Tim Schaub
OpenGeo - http://opengeo.org
Expert service straight from the developers.
More information about the Dev
mailing list