열린 레이어 맵 버전 4.3.3의 래스터 타일 위에 벡터 타일을 렌더링하려고합니다. 두 타일이 렌더링되고 있지만 벡터 타일이 래스터 타일 위에 표시되지 않습니다. 예를 들어, 하나의 상태에 대해 벡터 타일이 있고이를 래스터 타일 상단에 반투명 레이어로 표시하려고합니다. S3 버킷에 내 벡터 타일을 저장하고 S3 버킷에서 타일을 가져 오는 tileLoadFunction을 저장했습니다. 나는 어떤 투사도 설정하지 않았다. tileLoadFunction에는 몇 가지 기본 투영법이 있다고 생각합니다.래스터 타일 위에있는 벡터 타일이 openLayers에 표시되지 않습니다.
다음은 내 코드는 모두 타일을 표시하는 것입니다 :
var map = new ol.Map({
layers: [
new ol.layer.Tile({
name: 'Tile',
type: 'GeoJSON',
source: new ol.source.XYZ({
url: 'https://api.tiles.mapbox.com/v4/mapbox.emerald/{z}/{x}/{y}.png?access_token=' + MAPBOX_KEY
})
}),
new ol.layer.VectorTile({
name: 'VectorTile',
type: 'MVT',
source: new ol.source.VectorTile({
format: new ol.format.MVT(),
renderMode: 'vector',
tileGrid: ol.tilegrid.createXYZ({ maxZoom: 14 }),
url: 'data',
tileLoadFunction: tileLoadFunction
}),
style: new ol.style.Style({
fill: new ol.style.Fill({
color: 'rgba(0, 0, 0, 0.5)'
}),
stroke: new ol.style.Stroke({
color: 'white',
width: 3
})
})
})
],
target: 'map',
view: new ol.View({
center: [-7400327.330457623, 2062576.7712471967],
maxZoom: 20,
minzoom: 2,
zoom: 8
})
});
function tileLoadFunction(tile, url) {
getSignedUrl(url, function(s3Url) {
var loader = ol.featureloader.loadFeaturesXhr(s3Url, tile.getFormat(),
tile.onLoad.bind(tile),
tile.onError.bind(tile));
tile.setLoader(loader);
}
누구 가이드는 수, 래스터 타일을 통해 반투명 층으로 제대로 벡터 타일을 표시하기 위해 여기없는거야? 다음
는감사합니다,
감사합니다. Nisal 응답. 하지만 달성하기 위해 노력하고있는 ol.layer.VectorTile 및 ol.layer.ol.layer.Tile 사용하여 png 파일 형식을 통해 .pbf 파일 형식을 표시 할 수 있습니다. 나는이 두 레이어를 넣음으로써 그것을 달성 할 수있었습니다. –
이 답변이 향후 누군가에게 도움이 될 것이라는 의견에 감사드립니다. –