OpenLayers OpenLayers

Changeset 5318

Show
Ignore:
Timestamp:
12/01/07 09:04:18 (1 year ago)
Author:
elemoine
Message:

FixedZoomLevels.js doesn't properly set the resolutions array. Special thanks to Sebastien Roch for the bug report and to Tim Schaub for the code review and extra comments. (closes #1124)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/openlayers/lib/OpenLayers/Layer/FixedZoomLevels.js

    r4985 r5318  
    106106            var resolutionsIndex = 0; 
    107107            this.resolutions = []; 
    108             for(var i= this.minZoomLevel; i < this.numZoomLevels; i++) { 
     108            for(var i= this.minZoomLevel; i <= this.maxZoomLevel; i++) { 
    109109                this.resolutions[resolutionsIndex++] = this.RESOLUTIONS[i];             
    110110            } 
  • trunk/openlayers/tests/Layer/test_FixedZoomLevels.html

    r4059 r5318  
    66 
    77    function test_01_Layer_FixedZoomLevels (t) { 
    8         t.plan( 36 ); 
     8        t.plan( 39 ); 
    99         
    1010        var layer = { 'MIN_ZOOM_LEVEL': 5, 
     
    6868        p_minMaxNum(t, layer, layer.MIN_ZOOM_LEVEL, 10, "min,max(layer.options) wins over (map)"); 
    6969 
     70    // resolutions array 
    7071 
    71  
     72        var resolutions = Array(20); 
     73        for (var i = 0; i < 20; i++) { 
     74            resolutions[i] = Math.random(); 
     75        } 
     76        OpenLayers.Util.extend(layer, {RESOLUTIONS:resolutions}); 
     77        var minZoomLevel = 6; 
     78        var numZoomLevels = 2; 
     79        layer = p_createLayer(layer, {}, {minZoomLevel: minZoomLevel, numZoomLevels: numZoomLevels}); 
     80        t.eq( layer.resolutions.length, numZoomLevels, "length of resolutions array ok"); 
     81        for (var i = 0; i < numZoomLevels; i++) { 
     82            t.eq( layer.resolutions[i], resolutions[i + minZoomLevel], "resolutions array at index " + i + " ok"); 
     83        } 
    7284    } 
    7385