[OpenLayers-Users] Can't get OpenLayers to Co-operate with TileCache resolutions

soatley shawn at niagarafalls.ca
Thu Jul 2 20:19:29 EDT 2009


Hopefully someone can see what I must be doing wrong....  

I have been trying to get TileCache (most recent from site) to work nicely
with OL 2.8 for a week and it just doesn't seem to be working perfectly.

Here is my map config:

 options = {
        projection: new OpenLayers.Projection("EPSG:26917"),
        /*maxExtent: new OpenLayers.Bounds(640541.774843334,
4755587.40501464, 667085.402317306, 4779623.23729788),*/
        maxExtent: new OpenLayers.Bounds(640541.77, 4755587.40, 667085.40,
4779623.23),
        units: "m",
        tileSize: new OpenLayers.Size(256, 256),
        /*resolutions: [850, 425, 212.5, 106.25, 53.125, 26.5625, 13.28125,
6.640625, 3.3203125, 1.66015625, 0.830078125, 0.4150390625, 0.20751953125,
0.103759765625, 0.0518798828125],*/
        resolutions: [850, 425, 212.5, 106.25, 53.12, 26.56, 13.28, 6.64,
3.32, 1.66, 0.83, 0.41, 0.20, 0.10, 0.05],

        /*numZoomLevels: 15,*/

        controls: [new OpenLayers.Control.LayerSwitcher(),
                            new OpenLayers.Control.MouseDefaults(),
                            new OpenLayers.Control.PanZoomBar(),
                            new OpenLayers.Control.OverviewMap(),
                            new OpenLayers.Control.KeyboardDefaults(),
                            new OpenLayers.Control.Navigation(),
                            new OpenLayers.Control.MousePosition({ div:
$j("#position").get(0) }),
                            new OpenLayers.Control.LoadingPanel(),
                            new OpenLayers.Control.ScaleBar()
                            ]
    };



You can see I've tried different map resolutions and bounding boxes because
I read some threads that indicated we should not have a large number of
decimal places. 

My tilecache.cfg:


[basewdrawing]
type=WMS
url=http://wmsServer
layers=wmsLayers
extension=png
mime_type=image/png
#resolutions=850,425,212.5,106.25,53.125,26.5625,13.28125,6.640625,3.3203125,1.66015625,0.830078125,0.4150390625,0.20751953125,0.103759765625,0.0518798828125
resolutions=850,425,212.5,106.25,53.12,26.56,13.28,6.64,3.32,1.66,0.83,0.41,0.20,0.10,0.05
bbox=640541.77, 4755587.40, 667085.40, 4779623.23
#bbox=640541.774843334, 4755587.40501464, 667085.402317306, 4779623.23729788
metaTile=true
metaSize=11,11
srs=EPSG:26917
extent_type=loose


I've tried with extent_type and without - that didn't seem to have any
difference.

When I seed my cache with tilecache_seed.py I don't get any error messages
and it appears to work properly.  Files are created, they aren't blank, etc.

I have tried using Layer.TileCache  and Layer.WMS.  With the TileCache
layers, I get misplaced tiles and with the WMS layer I get a resolution
error:

An error occurred: can't find resolution index for 2.000000. Available
resolutions are: 
[850.0, 425.0, 212.5, 106.25, 53.119999999999997, 26.559999999999999,
13.279999999999999, 6.6399999999999997, 3.3199999999999998,
1.6599999999999999, 0.82999999999999996, 0.40999999999999998,
0.20000000000000001, 0.10000000000000001, 0.050000000000000003]


I don't understand why I get this error because both the TC and OL config's
have the resolutions specified.

Finally, my layer config:

var BaseMap = new OpenLayers.Layer.WMS("Base Map",
		["http://wmsServer/tilecache.py","http://wmsServer/tilecache.py"],
		{ 
			 layers: "basewdrawing",
			 format: "image/png",
			 transparent: false
		},
		{ 
			 visibility: true
		}
	);



If I have the layer go straight to the WMS Server, everything works fine. 
But I love how fast TileCache can seed my layers so I really want to use it
to seed my layers.

I hope I've provided enough information for some assistance.
-- 
View this message in context: http://n2.nabble.com/Can%27t-get-OpenLayers-to-Co-operate-with-TileCache-resolutions-tp3198651p3198651.html
Sent from the OpenLayers Users mailing list archive at Nabble.com.




More information about the Users mailing list