Cesium怎么让网格有经纬度显示

Cesium源码 · jamesp · 于 6年前 发布 · 12551 次阅读

Cesium三维框架怎么加载显示经纬度的网格,试过 GridImageryProvider 和 TileCoordinatesImageryProvider 都只能显示格子和L1X1Y1这种,无法显示经纬度。

本文由 jamesp 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。

共收到 1 条回复 cesium
jiwenqiang#16年前 1 个赞

你可以重写cesium里面的requestImage方法。 var tile_lay = new Cesium.TileCoordinatesImageryProvider({

tilingScheme: new Cesium.GeographicTilingScheme()

}); tile_lay.requestImage = function(x,y,level){

var canvas = document.createElement('canvas');
canvas.width = 256;
canvas.height = 256;
var context = canvas.getContext('2d');
context.strokeStyle = "rgba(192,192,192,0.7)";
context.lineWidth = 1;
context.strokeRect(0, 0, 256, 256);
var label = zxy2TileKey(level,x,y); //label里面放需要显示的文字
context.font = 'bold 6px Arial';
context.fillStyle = "rgba(255, 255, 255, 0.6)";
context.textAlign = 'center';
context.fillText(label, 124, 124);
return canvas;

}; viewer.scene.imageryLayers.addImageryProvider(grid_lay);

添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
Your Site Analytics