我有一个具有以下配置的TileCache服务器:
[cache]
type=Disk
base=/var/maps/cache
[osm]
type=Mapnik
mapfile=/var/maps/bin/mapnik/osm.xml
bbox=-180.0,-90,180.0,90
srs=EPSG:4326
[oge]
type=MapServerLayer
mapfile=/var/maps/defs/OGE.map
layers=OGETransLines我正在使用OpenLayers来显示数据,目前我已经请求使用OpenLayers.Layer.TMS对象的'osm‘层和带有OpenLayers.Layer.WMS对象的'oge’层。有没有办法将两者合并在一起,并同时请求它们?到目前为止,我只能够得到'osm‘层与TMS。
编辑:我的Javascript,以使事情更清晰:
map = new OpenLayers.Map("mapDiv",
{
projection: epsg4326,
maxResolution: 360 / 512
});
baseLayer = new OpenLayers.Layer.TMS("TarigmaOSM",
"http://1.1.1.1/cgi-bin/tilecache/tilecache.cgi/",
{
serviceVersion: "1.0.0",
layername: "osm",
type: "png",
attribution: "Data CC-by-SA OpenStreetMap"
});
map.addLayer(baseLayer);
overlay = new OpenLayers.Layer.WMS("Overlay",
"http://1.1.1.1/cgi-bin/tilecache/tilecache.cgi?",
{
layers: "oge",
transparent: "true",
attribution: ""
});
map.addLayer(overlay);发布于 2011-06-08 06:57:04
你不可能在客户端做到这一点。您在OpenLayers中创建的每一个层都会发出自己的请求来获取图像。
唯一可能的解决方案是在服务器端创建一个WMS或TMS服务,从要合并的两个数据源读取数据。
https://stackoverflow.com/questions/6205539
复制相似问题