Страница 1 из 1

Отображение ждвух слоев одновременно

Добавлено: 13 янв 2010, 10:49
PavelCH

Код: Выделить всё

layers.push(new OpenLayers.Layer.WMS("Tiles", "http://192.168.0.185/map2/BitMap1.gif",
{transparent: true}));

layers.push(new OpenLayers.Layer.TMS("OSM (Mapnik)", "http://tile.openstreetmap.org/",
{ type: 'png', getURL: getOsmMapnikTileURL, displayOutsideMaxExtent: true,
attribution: '<a href="http://www.openstreetmap.org/">OpenStreetMap</a>'}));				


На карте есть два слоя "Tiles" и "OSM (Mapnik)".
Слой "OSM (Mapnik)" заниимает всю видимую область. Слой "Tiles" занимает только часть видимой области.
Вопрос как указать где в видимой области отобразить слой "Tiles"?
Заранее благодарен за ответы.

Re: Отображение ждвух слоев одновременно

Добавлено: 13 янв 2010, 10:57
Mavka
как указать где в видимой области отобразить слой
Никак. В OL слои просто накладываются друг на друга, на то они и слои. Вам нужно положит снизу osm, а сверху tile ('transparent: true' вы уже указали). При добавлении слое на карту тот что первый - будет нижним. Т.е.:

Код: Выделить всё

map.addLayers([osm, tiles]); 
Раз они у вас уже в массиве, то добавляйте их в массив в обратном порядке (вроде в другом топике они уже шли наоборот). Если слой обозначен как 'isBaseLayer: true', то он всегда будет нижним.