[OpenLayers-Trac] [OpenLayers] #1055: Tiles Loading when Layer Invisible

OpenLayers trac at openlayers.org
Mon Oct 8 16:35:21 EDT 2007


#1055: Tiles Loading when Layer Invisible
---------------------+------------------------------------------------------
  Reporter:  euzuro  |       Owner:  euzuro     
      Type:  bug     |      Status:  new        
  Priority:  major   |   Milestone:  2.6 Release
 Component:  Layer   |     Version:  2.5 RC3    
Resolution:          |    Keywords:             
---------------------+------------------------------------------------------
Comment (by euzuro):

 update from gregm:

 {{{

 I have corrected it in Map.js setCenter function, with some additional
 lines
 of checks and conditions inside 'for' loop.
 It works for me, but I do not know if it is good for any case.
 Code below:
 >
 > for (var i = 0; i < this.layers.length; i++) {
 >                 var layer = this.layers[i];
 >                 if (!layer.isBaseLayer) {
 >
 >                     var moveLayer;
 >                     var inRange = layer.calculateInRange();
 >                     if (layer.inRange != inRange) {
 >                         // Layer property has changed. We are going
 >                         // to call moveLayer so that the layer can be
 > turned
 >                         // off or on.
 >                         layer.inRange = inRange;
 >                         //do NOT download tiles if not in scale limit
 >                         moveLayer = (layer.visibility && layer.inRange);
 > //
 > was ... = true;
 >                         //switch off layer after going beyond scale
 limit
 >                         if (layer.visibility && !layer.inRange)
 >                             layer.setVisibility(false);
 >                         this.events.triggerEvent("changelayer");
 >                     } else {
 >                         // If nothing has changed, then we only move the
 > layer
 >                         // if it is visible and inrange.
 >                         moveLayer = (layer.visibility && layer.inRange);
 >                         //switch off layer after going beyond scale
 limit
 >                         if (layer.visibility && !layer.inRange)
 >                             layer.setVisibility(false);
 >                     }
 >                     if (moveLayer) {
 >                         layer.moveTo(bounds, zoomChanged, dragging);
 >                     }
 >                 }
 >             }



 Greg

 }}}

-- 
Ticket URL: <http://trac.openlayers.org/ticket/1055#comment:2>
OpenLayers <http://openlayers.org/>
A free AJAX map viewer


More information about the Trac mailing list