UNPKG

gisthreemap

Version:

基于webGL的三维api

29 lines (27 loc) 1.19 kB
import gt from '../../utils/transform' // import * as Cesium from 'cesium' class CustomTilingScheme extends Cesium.WebMercatorTilingScheme { constructor (options) { super(options) const projection = new Cesium.WebMercatorProjection() this._projection.project = function (cartographic, result) { result = gt.coordTransform(options.toSR, options.fromSR, [Cesium.Math.toDegrees(cartographic.longitude), Cesium.Math.toDegrees(cartographic.latitude)]) result = projection.project( new Cesium.Cartographic( Cesium.Math.toRadians(result[0]), Cesium.Math.toRadians(result[1]) ) ) return new Cesium.Cartesian2(result.x, result.y) } this._projection.unproject = function (cartesian, result) { const cartographic = projection.unproject(cartesian) result = gt.coordTransform(options.fromSR, options.toSR, [Cesium.Math.toDegrees(cartographic.longitude), Cesium.Math.toDegrees(cartographic.latitude)]) return new Cesium.Cartographic( Cesium.Math.toRadians(result[0]), Cesium.Math.toRadians(result[1]) ) } } } export default CustomTilingScheme