Proj4Leaflet像openlayers一样重投影

时间:2016-03-16 12:55:54

标签: leaflet openlayers-3 proj4

我尝试在基本地图上的自己的投影中显示多个图层,也在它自己的投影

在我使用OpenLayers + proj4库实现的工作示例下面

var projection_name = 'EPSG:32610';
proj4.defs(projection_name, "+proj=utm +zone=10 +datum=WGS84 +units=m +no_defs");
var proj = ol.proj.get(projection_name);
var my_custom_layer = new ol.layer.Tile({
opacity: 0.5,
source: new ol.source.XYZ({
url: '',
projection: proj,
})
});

var osm_layer = new ol.layer.Tile({
source: new ol.source.MapQuest({layer: 'osm'}),
opacity: 0.3
});

with OpenLayers I can create something like this
var map = new ol.Map({
layers: [osm_layer, my_custom_layer],
target: 'map',
view: new ol.View({
projection: 'EPSG:4326',
center: [-122.347, 37.805],
zoom: 9
})
});

结果将在投影4326中渲染地图,在另一投影中渲染图层(epsg:32610)。 my_custom_layer的每个图块都将被转换为适合基本地图投影的图形。 所以我的瓷砖服务器每次返回简单的方形(256x256)瓷砖,OL会将方形变换为一些新的数字。

是否可以使用Leaflet + Proj4Leaflet实现它?

1 个答案:

答案 0 :(得分:2)

不,Leaflet和/或Proj4Leaflet不支持位图重投影。

Proj4leaflet可用于支持其他投影,而不是已经内置到Leaflet中的投影,但您的图层仍然必须与地图位于同一投影中。