| @@ -56,15 +56,6 @@ | |||
| name: '电子+路况' | |||
| }) | |||
| // let layer = new DC.TilesetLayer('layer') | |||
| // viewer.addLayer(layer) | |||
| // let tileset = new DC.Tileset( | |||
| // '//resource.dvgis.cn/data/3dtiles/dayanta/tileset.json' | |||
| // ) | |||
| // tileset.setHeight(-420) | |||
| // layer.addOverlay(tileset) | |||
| // viewer.flyTo(tileset) | |||
| } | |||
| DC.ready({ | |||
| baseUrl:'../libs/dc-sdk/resources/' | |||
| @@ -19,12 +19,21 @@ | |||
| function initViewer() { | |||
| viewer = new DC.Viewer('viewer-container') | |||
| let baseLayer = DC.ImageryLayerFactory.createImageryLayer(DC.ImageryType.GOOGLE,{ | |||
| style: 'img' | |||
| let baseLayer = DC.ImageryLayerFactory.createImageryLayer(DC.ImageryType.GOOGLE,{ | |||
| style:'img' | |||
| }) | |||
| viewer.addBaseLayer( baseLayer, { | |||
| iconUrl: '../assets/icon/img.png', | |||
| name: '地图' | |||
| name: '影像' | |||
| }) | |||
| let baseLayer_img_cva = DC.ImageryLayerFactory.createImageryLayer(DC.ImageryType.GOOGLE,{ | |||
| style:'img_cva' | |||
| }) | |||
| viewer.addBaseLayer( baseLayer_img_cva, { | |||
| iconUrl: '../assets/icon/img.png', | |||
| name: '影像 + 标注' | |||
| }) | |||
| let baselayer_elc = DC.ImageryLayerFactory.createImageryLayer(DC.ImageryType.GOOGLE) | |||
| @@ -0,0 +1,63 @@ | |||
| <!DOCTYPE html> | |||
| <html lang="en"> | |||
| <head> | |||
| <meta charset="utf-8"> | |||
| <meta name="viewport" content="width=device-width,initial-scale=1.0"> | |||
| <title>dc-example</title> | |||
| <script src='/libs/dc-sdk/dc.min.js'></script> | |||
| <link href='/libs/dc-sdk/dc.min.css' type='text/css' rel='stylesheet'> | |||
| <link href='../index.css' type='text/css' rel='stylesheet'> | |||
| </head> | |||
| <body> | |||
| <div id="viewer-container" class="viewer-container"></div> | |||
| <script> | |||
| let viewer = undefined | |||
| function initViewer() { | |||
| viewer = new DC.Viewer('viewer-container') | |||
| let baseLayer = DC.ImageryLayerFactory.createImageryLayer(DC.ImageryType.GOOGLE,{ | |||
| style:'img' | |||
| }) | |||
| viewer.addBaseLayer( baseLayer, { | |||
| iconUrl: '../assets/icon/img.png', | |||
| name: '影像' | |||
| }) | |||
| let baseLayer_img_cva = DC.ImageryLayerFactory.createImageryLayer(DC.ImageryType.GOOGLE,{ | |||
| style:'img_cva', | |||
| crs:'WGS84' | |||
| }) | |||
| viewer.addBaseLayer( baseLayer_img_cva, { | |||
| iconUrl: '../assets/icon/img.png', | |||
| name: '影像 + 标注' | |||
| }) | |||
| let baselayer_elc = DC.ImageryLayerFactory.createImageryLayer(DC.ImageryType.GOOGLE,{ | |||
| crs:'WGS84' | |||
| }) | |||
| viewer.addBaseLayer(baselayer_elc, { | |||
| iconUrl: '../assets/icon/elec.png', | |||
| name: '电子' | |||
| }) | |||
| let baselayer_ter = DC.ImageryLayerFactory.createImageryLayer(DC.ImageryType.GOOGLE,{ | |||
| style: 'ter', | |||
| crs:'WGS84' | |||
| }) | |||
| viewer.addBaseLayer(baselayer_ter, { | |||
| iconUrl: '../assets/icon/ter.png', | |||
| name: '地形' | |||
| }) | |||
| viewer.zoomToPosition( | |||
| new DC.Position(105.565571, 31.984708, 15362816, 0, -90) | |||
| ) | |||
| } | |||
| DC.ready({ | |||
| baseUrl:'../libs/dc-sdk/resources/' | |||
| }).then(initViewer) | |||
| </script> | |||
| </body> | |||
| </html> | |||
| @@ -149,7 +149,7 @@ | |||
| <div class="container"> | |||
| <div class="nav"> | |||
| <div class="banner"> DC-SDK v3.0.0 </div> | |||
| <div class="banner"> DC-SDK v3.0.1 </div> | |||
| <div class="example-list-wrapper"> | |||
| <div id="example-list" class="example-list" data-accordion-group> </div> | |||
| <div class="desc"></div> | |||
| @@ -128,7 +128,7 @@ const EXAMPLE_LIST = [ | |||
| page: 'amap.html', | |||
| }, | |||
| { | |||
| name: '高德地图(偏移纠正)', | |||
| name: '高德地图(偏移纠正)', | |||
| page: 'amap_no_offset.html', | |||
| }, | |||
| { | |||
| @@ -140,7 +140,7 @@ const EXAMPLE_LIST = [ | |||
| page: 'baidu.html', | |||
| }, | |||
| { | |||
| name: '百度地图(偏移纠正)', | |||
| name: '百度地图(偏移纠正)', | |||
| page: 'baidu_no_offset.html', | |||
| }, | |||
| { | |||
| @@ -148,9 +148,13 @@ const EXAMPLE_LIST = [ | |||
| page: 'geovis.html', | |||
| }, | |||
| { | |||
| name: '谷歌地图(已被墙)', | |||
| name: '谷歌地图', | |||
| page: 'google.html', | |||
| }, | |||
| { | |||
| name: '谷歌地图(偏移纠正)', | |||
| page: 'google_no_offset.html', | |||
| }, | |||
| { | |||
| name: '天地图', | |||
| page: 'tdt.html', | |||
| @@ -70,7 +70,7 @@ const LL2MC = [ | |||
| ], | |||
| ] | |||
| class BaiduMercatorProjection { | |||
| class BD09Projection { | |||
| constructor() { | |||
| this.isWgs84 = false | |||
| } | |||
| @@ -410,4 +410,4 @@ class BaiduMercatorProjection { | |||
| } | |||
| } | |||
| export default BaiduMercatorProjection | |||
| export default BD09Projection | |||
| @@ -4,7 +4,7 @@ | |||
| import { Cesium } from '../../../namespace' | |||
| import ImageryType from '../ImageryType' | |||
| import AmapMercatorTilingScheme from '../tiling-scheme/AmapMercatorTilingScheme' | |||
| import GCJ02TilingScheme from '../tiling-scheme/GCJ02TilingScheme.js' | |||
| const TILE_URL = { | |||
| img: '//webst{s}.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}', | |||
| @@ -22,7 +22,7 @@ class AmapImageryProvider extends Cesium.UrlTemplateImageryProvider { | |||
| ].join('') | |||
| options['subdomains'] = options.subdomains || ['01', '02', '03', '04'] | |||
| if (options.crs === 'WGS84') { | |||
| options['tilingScheme'] = new AmapMercatorTilingScheme() | |||
| options['tilingScheme'] = new GCJ02TilingScheme() | |||
| } | |||
| super(options) | |||
| } | |||
| @@ -4,7 +4,7 @@ | |||
| import { Cesium } from '../../../namespace' | |||
| import ImageryType from '../ImageryType' | |||
| import BaiduMercatorTilingScheme from '../tiling-scheme/BaiduMercatorTilingScheme' | |||
| import BD09TilingScheme from '../tiling-scheme/BD09TilingScheme.js' | |||
| const TILE_URL = { | |||
| img: '//shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46', | |||
| @@ -29,7 +29,7 @@ class BaiduImageryProvider extends Cesium.UrlTemplateImageryProvider { | |||
| for (let i = 0; i < 19; i++) { | |||
| resolutions[i] = 256 * Math.pow(2, 18 - i) | |||
| } | |||
| options['tilingScheme'] = new BaiduMercatorTilingScheme({ | |||
| options['tilingScheme'] = new BD09TilingScheme({ | |||
| resolutions, | |||
| rectangleSouthwestInMeters: new Cesium.Cartesian2( | |||
| -20037726.37, | |||
| @@ -4,24 +4,14 @@ | |||
| import { Cesium } from '../../../namespace' | |||
| import ImageryType from '../ImageryType' | |||
| import GCJ02TilingScheme from '../tiling-scheme/GCJ02TilingScheme.js' | |||
| /** | |||
| * | |||
| * 地址:https://gac-geo.googlecnapps.cn/maps/vt?lyrs=s&x={x}&y={y}&z={z} | |||
| * 底图类型: | |||
| * m 标准路线图 lyrs=m | |||
| * r 某种改变的路线图(路线不明显) lyrs=r | |||
| * s 影像层(卫星图) lyrs=s | |||
| * y 带标签的卫星图 lyrs=y | |||
| * h 标签层(路名、地名等) lyrs=h | |||
| * t 地形图 lyrs=t | |||
| * p 带标签的地形图 lyrs=p | |||
| * | |||
| */ | |||
| const TILE_URL = { | |||
| img: 'https://gac-geo.googlecnapps.cn/maps/vt?lyrs=s&x={x}&y={y}&z={z}', | |||
| elec: 'https://gac-geo.googlecnapps.cn/maps/vt?lyrs=m&x={x}&y={y}&z={z}', | |||
| cva: 'https://gac-geo.googlecnapps.cn/maps/vt?lyrs=h&x={x}&y={y}&z={z}', | |||
| ter: 'https://gac-geo.googlecnapps.cn/maps/vt?lyrs=t@131,r&x={x}&y={y}&z={z}', | |||
| img_cva: 'https://gac-geo.googlecnapps.cn/maps/vt?lyrs=y&x={x}&y={y}&z={z}', | |||
| } | |||
| class GoogleImageryProvider extends Cesium.UrlTemplateImageryProvider { | |||
| @@ -32,7 +22,9 @@ class GoogleImageryProvider extends Cesium.UrlTemplateImageryProvider { | |||
| options.protocol || '', | |||
| TILE_URL[options.style] || TILE_URL['elec'], | |||
| ].join('') | |||
| options['subdomains'] = options.subdomains || ['1', '2', '3'] | |||
| if (options.crs === 'WGS84') { | |||
| options['tilingScheme'] = new GCJ02TilingScheme() | |||
| } | |||
| super(options) | |||
| } | |||
| } | |||
| @@ -4,12 +4,12 @@ | |||
| import { Cesium } from '../../../namespace' | |||
| import { CoordTransform } from '../../transform' | |||
| import BaiduMercatorProjection from '../projection/BaiduMercatorProjection' | |||
| import BD09Projection from '../projection/BD09Projection' | |||
| class BaiduMercatorTilingScheme extends Cesium.WebMercatorTilingScheme { | |||
| class BD09TilingScheme extends Cesium.WebMercatorTilingScheme { | |||
| constructor(options) { | |||
| super(options) | |||
| let projection = new BaiduMercatorProjection() | |||
| let projection = new BD09Projection() | |||
| this._projection.project = function (cartographic, result) { | |||
| result = result || {} | |||
| result = CoordTransform.WGS84ToGCJ02( | |||
| @@ -49,7 +49,7 @@ class BaiduMercatorTilingScheme extends Cesium.WebMercatorTilingScheme { | |||
| * @param y | |||
| * @param level | |||
| * @param result | |||
| * @returns {module:cesium.Rectangle|*} | |||
| * @returns {Rectangle|*} | |||
| */ | |||
| tileXYToNativeRectangle(x, y, level, result) { | |||
| const tileWidth = this.resolutions[level] | |||
| @@ -98,4 +98,4 @@ class BaiduMercatorTilingScheme extends Cesium.WebMercatorTilingScheme { | |||
| } | |||
| } | |||
| export default BaiduMercatorTilingScheme | |||
| export default BD09TilingScheme | |||
| @@ -5,7 +5,7 @@ | |||
| import { Cesium } from '../../../namespace' | |||
| import { CoordTransform } from '../../transform' | |||
| class AmapMercatorTilingScheme extends Cesium.WebMercatorTilingScheme { | |||
| class GCJ02TilingScheme extends Cesium.WebMercatorTilingScheme { | |||
| constructor(options) { | |||
| super(options) | |||
| let projection = new Cesium.WebMercatorProjection() | |||
| @@ -36,4 +36,4 @@ class AmapMercatorTilingScheme extends Cesium.WebMercatorTilingScheme { | |||
| } | |||
| } | |||
| export default AmapMercatorTilingScheme | |||
| export default GCJ02TilingScheme | |||
| @@ -16,7 +16,7 @@ import MeasureType from './MeasureType' | |||
| class Measure { | |||
| constructor(viewer) { | |||
| if (!viewer) { | |||
| if (!viewer) { | |||
| throw Error('missing viewer param') | |||
| } | |||
| this._viewer = viewer | |||
| @@ -122,8 +122,6 @@ class Measure { | |||
| return this | |||
| } | |||
| /** | |||
| * | |||
| * @param type | |||