0

Current map has 40 zoom levels. Map uses mostly internal layers but for this one special layer an external service is used and that is where ArcGISCache comes in. This ArcGISCache layer has its layer info fetched with OpenLayers.Protocol.Script.createRequest(). When an attemp to draw the layer is made a method called ArcGISCache.getURL asks map for current zoom level and it reports 23. However ArcGISCache.lods property has only 13 elements and error is thrown Cannot read property 'startTileCol' of undefined (used caps in the code to mark the place)

getURL: function(a) {
   ...
   a = this.map.getZoom();
       if (this.lods) {
           if (b = this.lods[this.map.getZoom()], c < B.STARTTILECOL || c > 
               b.endTileCol || d < b.startTileRow || d > b.endTileRow)
                return null
        } else {
           ...
        }
...
}

How do I integrate this new external ArcGISCache layer into the exising map?

0

I have mapped resolutions and scales of my base map to resolutions and scales of ArcGISCache layer then overriden getURL function to pick correct lod by this.lods[this.map.getZoom()] and check if lod exists. Having problems with tile placing on the grid because of different resolutions though

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.