<html><body><div style="color:#000; background-color:#fff; font-family:arial, helvetica, sans-serif;font-size:12pt"><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; ">Hi,</div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; "><br></div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; ">I am trying to display a tms layer using openlayers by modifying some code which displays cloudmade layers</div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; "><br></div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; ">I have some code which tries to construct the tile but it is failing throwing this error...</div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; "><br></div><div><h4 style="font-family: Verdana, Arial, 'Bitstream Vera Sans', Helvetica, sans-serif; font-size: 14px; ">400: Unable to parse number For input string:
"zgb:RROP08@EPSG:900913@png8" from tms/1.0.0/zgb:RROP08@EPSG:900913@png8/134/81.png</h4><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; "><br></div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; ">I have obviously got it totally wrong.....Could anyone direct me to the documentation or say how to correctly parse the wms path?</div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; "><br></div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; ">yours,</div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; "><br></div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; ">Rob</div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; "><br></div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; ">//Code</div><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt;
"><br></div><div><div><font face="arial, helvetica, sans-serif">OpenLayers.Layer.
MyTMSClass = OpenLayers.Class(OpenLayers.Layer.TMS, {</font></div><div><font face="arial, helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">        </span></font></div><div><font face="arial, helvetica, sans-serif"> initialize: function(name, options) {</font></div><div><font face="arial, helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">                </span></font></div><div><font face="arial, helvetica, sans-serif"> options = OpenLayers.Util.extend({</font></div><div><font face="arial, helvetica, sans-serif"> attribution: "",</font></div><div><font face="arial, helvetica, sans-serif"> maxExtent: new OpenLayers.Bounds(-20037508.34,-20037508.34,20037508.34,20037508.34),</font></div><div><font face="arial, helvetica, sans-serif"> maxResolution:
156543.0339,</font></div><div><font face="arial, helvetica, sans-serif"> units: "m",</font></div><div><font face="arial, helvetica, sans-serif"> projection: "EPSG:900913",</font></div><div><font face="arial, helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">                        </span>isBaseLayer: true,</font></div><div><font face="arial, helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">                        </span>numZoomLevels: 19,</font></div><div><font face="arial, helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">                        </span>displayOutsideMaxExtent: true,</font></div><div><font face="arial, helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">                        </span>wrapDateLine: true,</font></div><div><font face="arial, helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">                        </span>styleId:
1</font></div><div><font face="arial, helvetica, sans-serif"> }, options);</font></div><div><font face="arial, helvetica, sans-serif"><span class="Apple-tab-span" style="white-space:pre">                </span>var prefix = [options.key, options.styleId, 256].join('/') + '/';</font></div><div><font face="arial, helvetica, sans-serif"> var url = [</font></div><div><font face="arial, helvetica, sans-serif"> "http://mydomain/geoserver/gwc/service/tms/1.0.0/zgb%3ARROP08@EPSG%3A900913@png"</font></div><div><font face="arial, helvetica, sans-serif"> ];</font></div><div><font face="arial, helvetica, sans-serif"> var newArguments = [name, url, options];</font></div><div><font face="arial, helvetica, sans-serif"> OpenLayers.Layer.TMS.prototype.initialize.apply(this, newArguments);</font></div><div><font
face="arial, helvetica, sans-serif"> },</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"> getURL: function (bounds) {</font></div><div><font face="arial, helvetica, sans-serif"> var res = this.map.getResolution();</font></div><div><font face="arial, helvetica, sans-serif"> var x = Math.round((bounds.left - this.maxExtent.left) / (res * this.tileSize.w));</font></div><div><font face="arial, helvetica, sans-serif"> var y = Math.round((this.maxExtent.top - bounds.top) / (res * this.tileSize.h));</font></div><div><font face="arial, helvetica, sans-serif"> var z = this.map.getZoom();</font></div><div><font face="arial, helvetica, sans-serif"> var limit = Math.pow(2, z);</font></div><div><font face="arial, helvetica,
sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"> if (y < 0 || y >= limit)</font></div><div><font face="arial, helvetica, sans-serif"> {</font></div><div><font face="arial, helvetica, sans-serif"> return "http://cloudmade.com/js-api/images/empty-tile.png";</font></div><div><font face="arial, helvetica, sans-serif"> }</font></div><div><font face="arial, helvetica, sans-serif"> else</font></div><div><font face="arial, helvetica, sans-serif"> {</font></div><div><font face="arial, helvetica, sans-serif"> x = ((x % limit) + limit) % limit;</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"> var url =
this.url;</font></div><div><font face="arial, helvetica, sans-serif"> var path = z + "/" + x + "/" + y + ".png";</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"> if (url instanceof Array)</font></div><div><font face="arial, helvetica, sans-serif"> {</font></div><div><font face="arial, helvetica, sans-serif"> url = this.selectUrl(path, url);</font></div><div><font face="arial, helvetica, sans-serif"> }</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"> return url + path;</font></div><div><font face="arial, helvetica, sans-serif">
}</font></div><div><font face="arial, helvetica, sans-serif"> },</font></div><div><font face="arial, helvetica, sans-serif"><br></font></div><div><font face="arial, helvetica, sans-serif"> CLASS_NAME: "OpenLayers.Layer.
MyTMSClass "</font></div><div><font face="arial, helvetica, sans-serif">});</font></div></div></div></div></body></html>