| | |
| | | define([ |
| | | 'dojo/_base/declare', |
| | | 'dojo/_base/lang', |
| | | 'dojo/_base/array', |
| | | 'dojo/_base/html', |
| | | 'dojo/topic', |
| | | 'jimu/BaseWidget', |
| | | ], |
| | | 'dojo/_base/declare', |
| | | 'dojo/_base/lang', |
| | | 'dojo/_base/array', |
| | | 'dojo/_base/html', |
| | | 'dojo/topic', |
| | | 'jimu/BaseWidget', |
| | | ], |
| | | function (declare, |
| | | lang, |
| | | array, |
| | |
| | | "tileMatrixSetID": "w", |
| | | "maximumLevel": 17 |
| | | }], |
| | | // 赣州地图 |
| | | imageryProviderArrUrl: [{ |
| | | "label": "赣州市离线影像", |
| | | "type": "url", |
| | | "url": "http://www.sw797.com:801/gzsw3D/v2/data/wp/{z}/{x}/{y}.png" |
| | | }], |
| | | // 天地图电子 |
| | | imageryProviderDian: [{ |
| | | "label": "天地图矢量", |
| | |
| | | earthAtNightRight: '', |
| | | zjLeft: 0, |
| | | zjRight: '', |
| | | |
| | | tiandituLeft: '', |
| | | tiandituZJLeft: '', |
| | | tiandituRight: '', |
| | | tiandituZJRight: '', |
| | | ganZhouYinLeft: '', |
| | | ganZhouYinRight: '', |
| | | |
| | | startup: function () { |
| | | topic.subscribe("openRolling", lang.hitch(this, this.openRolling)); |
| | | var that = this; |
| | | // 点击卷帘关闭面板 |
| | | $('.rollinng-table-hezi-xx').click(function () { |
| | | |
| | | that.map.imageryLayers.remove(that.earthAtNightLeft); |
| | | that.map.imageryLayers.remove(that.earthAtNightRight); |
| | | that.map.imageryLayers.remove(that.zjLeft); |
| | | |
| | | that.map.imageryLayers.remove(that.earthAtNightRight); |
| | | that.map.imageryLayers.remove(that.zjRight); |
| | | |
| | | |
| | | that.map.imageryLayers.remove(that.tiandituLeft); |
| | | that.map.imageryLayers.remove(that.tiandituZJLeft); |
| | | |
| | | that.map.imageryLayers.remove(that.tiandituRight); |
| | | that.map.imageryLayers.remove(that.tiandituZJRight); |
| | | that.map.imageryLayers.remove(that.ganZhouYinLeft); |
| | | that.map.imageryLayers.remove(that.ganZhouYinRight); |
| | | |
| | | $('.jimu-widget-Rolling').hide(); |
| | | $('#hezi-selectLeft').val(2); |
| | | $('#hezi-selectRight').val(3); |
| | | |
| | | }); |
| | | |
| | | // 加载左边图层 |
| | | $('#hezi-selectLeft').on('change', function () { |
| | | // 将滑块的位置与拆分位置同步 |
| | | var slider = document.getElementById('slider'); |
| | | that.map.scene.imagerySplitPosition = (slider.offsetLeft - slider.parentElement.offsetWidth) / (slider.parentElement.offsetWidth); |
| | | that.map.scene.imagerySplitPosition.x = (slider.offsetLeft - slider.parentElement.offsetWidth) / (slider.parentElement.offsetWidth); |
| | | if ($(this).val() == 2) { |
| | | // viewer.imageryLayers.remove(that.tiandituLeft); |
| | | // viewer.imageryLayers.remove(that.tiandituZJLeft); |
| | | viewer.imageryLayers.remove(that.ganZhouYinLeft); |
| | | loadMapTianLeft(); |
| | | } else if ($(this).val() == 1) { |
| | | loadMapLeft(); |
| | | that.earthAtNightLeft.splitDirection = Cesium.ImagerySplitDirection.LEFT; |
| | | that.zjLeft.splitDirection = Cesium.ImagerySplitDirection.LEFT; |
| | | } |
| | | else if ($(this).val() == 1) { |
| | | viewer.imageryLayers.remove(that.earthAtNightLeft); |
| | | viewer.imageryLayers.remove(that.zjLeft); |
| | | // viewer.imageryLayers.remove(that.tiandituLeft); |
| | | // viewer.imageryLayers.remove(that.tiandituZJLeft); |
| | | loadMapGzLeft(); |
| | | that.ganZhouYinLeft.splitDirection = Cesium.ImagerySplitDirection.LEFT; |
| | | } |
| | | else { |
| | | viewer.imageryLayers.remove(that.earthAtNightLeft); |
| | | viewer.imageryLayers.remove(that.zjLeft); |
| | | viewer.imageryLayers.remove(that.ganZhouYinLeft); |
| | | } |
| | | }); |
| | | |
| | |
| | | // debugger |
| | | // 将滑块的位置与拆分位置同步 |
| | | var slider = document.getElementById('slider'); |
| | | that.map.scene.imagerySplitPosition = (slider.offsetLeft - slider.parentElement.offsetWidth) / (slider.parentElement.offsetWidth); |
| | | that.map.scene.imagerySplitPosition.x = (slider.offsetLeft - slider.parentElement.offsetWidth) / (slider.parentElement.offsetWidth); |
| | | if ($(this).val() == 2) { |
| | | // loadMap(that.earthAtNightRight, that.zjRight); |
| | | viewer.imageryLayers.remove(that.tiandituRight); |
| | | viewer.imageryLayers.remove(that.tiandituZJRight); |
| | | loadMapRight(); |
| | | that.earthAtNightRight.splitDirection = Cesium.ImagerySplitDirection.RIGHT; |
| | | that.zjRight.splitDirection = Cesium.ImagerySplitDirection.RIGHT; |
| | | } |
| | | else if ($(this).val() == 3) { |
| | | viewer.imageryLayers.remove(that.earthAtNightRight); |
| | | viewer.imageryLayers.remove(that.zjRight); |
| | | } else if ($(this).val() == 1) { |
| | | loadMapTianRight(); |
| | | that.tiandituRight.splitDirection = Cesium.ImagerySplitDirection.RIGHT; |
| | | that.tiandituZJRight.splitDirection = Cesium.ImagerySplitDirection.RIGHT; |
| | | } |
| | | else { |
| | | viewer.imageryLayers.remove(that.earthAtNightRight); |
| | | viewer.imageryLayers.remove(that.zjRight); |
| | | loadMapGzRight(); |
| | | that.ganZhouYinRight.splitDirection = Cesium.ImagerySplitDirection.RIGHT; |
| | | // viewer.imageryLayers.remove(that.tiandituRight); |
| | | // viewer.imageryLayers.remove(that.tiandituZJRight); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | |
| | | // 加载左边天地图影像图层方法 |
| | | function loadMapLeft() { |
| | | that.map.imageryLayers.remove(that.tiandituLeft); |
| | | that.map.imageryLayers.remove(that.tiandituZJLeft); |
| | | //imageryLayers获取将在地球上渲染的图像图层的集合 |
| | | var layers = viewer.imageryLayers; |
| | | //addImageryProvider使用给定的ImageryProvider创建一个新层,并将其添加到集合中 |
| | | that.earthAtNightLeft = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.earthAtNightLeft = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderAdd[0] |
| | | )); |
| | | that.zjLeft = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.zjLeft = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderAdd[1] |
| | | )); |
| | | } |
| | | |
| | | // 加载左边赣州影像图层方法 |
| | | function loadMapGzLeft() { |
| | | //imageryLayers获取将在地球上渲染的图像图层的集合 |
| | | var layers = viewer.imageryLayers; |
| | | //addImageryProvider使用给定的ImageryProvider创建一个新层,并将其添加到集合中 UrlTemplateImageryProvider |
| | | that.ganZhouYinLeft = layers.addImageryProvider(new Cesium.UrlTemplateImageryProvider( |
| | | that.imageryProviderArrUrl[0] |
| | | )); |
| | | that.earthAtNightLeft.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE); |
| | | that.zjLeft.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE); |
| | | } |
| | | |
| | | // 加载左边天地图电子图层方法 |
| | | function loadMapTianLeft() { |
| | | that.map.imageryLayers.remove(that.earthAtNightLeft); |
| | | that.map.imageryLayers.remove(that.zjLeft); |
| | | //imageryLayers获取将在地球上渲染的图像图层的集合 |
| | | var layers = viewer.imageryLayers; |
| | | //addImageryProvider使用给定的ImageryProvider创建一个新层,并将其添加到集合中 |
| | | that.tiandituLeft = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.tiandituLeft = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderDian[0] |
| | | )); |
| | | that.tiandituZJLeft = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.tiandituZJLeft = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderDian[1] |
| | | )); |
| | | |
| | | that.tiandituLeft.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE); |
| | | that.tiandituZJLeft.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE); |
| | | } |
| | | |
| | | |
| | | // 加载右边天地图影像图层方法 |
| | | function loadMapRight() { |
| | | that.map.imageryLayers.remove(that.tiandituRight); |
| | | that.map.imageryLayers.remove(that.tiandituZJRight); |
| | | //imageryLayers获取将在地球上渲染的图像图层的集合 |
| | | var layers = viewer.imageryLayers; |
| | | //addImageryProvider使用给定的ImageryProvider创建一个新层,并将其添加到集合中 |
| | | that.earthAtNightRight = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.earthAtNightRight = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderAdd[0] |
| | | )); |
| | | that.zjRight = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.zjRight = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderAdd[1] |
| | | )); |
| | | that.earthAtNightRight.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.RIGHT, Cesium.ImagerySplitDirection.NONE); |
| | | that.zjRight.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.RIGHT, Cesium.ImagerySplitDirection.NONE); |
| | | } |
| | | |
| | | // 加载右边天地图电子图层方法 |
| | | function loadMapTianRight() { |
| | | that.map.imageryLayers.remove(that.earthAtNightRight); |
| | | that.map.imageryLayers.remove(that.zjRight); |
| | | //imageryLayers获取将在地球上渲染的图像图层的集合 |
| | | var layers = viewer.imageryLayers; |
| | | //addImageryProvider使用给定的ImageryProvider创建一个新层,并将其添加到集合中 |
| | | that.tiandituRight = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.tiandituRight = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderDian[0] |
| | | )); |
| | | that.tiandituZJRight = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.tiandituZJRight = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderDian[1] |
| | | )); |
| | | that.tiandituRight.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.RIGHT, Cesium.ImagerySplitDirection.NONE); |
| | | that.tiandituZJRight.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.RIGHT, Cesium.ImagerySplitDirection.NONE); |
| | | } |
| | | |
| | | // 加载右边赣州影像图层方法 |
| | | function loadMapGzRight() { |
| | | //imageryLayers获取将在地球上渲染的图像图层的集合 |
| | | var layers = viewer.imageryLayers; |
| | | //addImageryProvider使用给定的ImageryProvider创建一个新层,并将其添加到集合中 UrlTemplateImageryProvider |
| | | that.ganZhouYinRight = layers.addImageryProvider(new Cesium.UrlTemplateImageryProvider( |
| | | that.imageryProviderArrUrl[0] |
| | | )); |
| | | } |
| | | |
| | | var handler = new Cesium.ScreenSpaceEventHandler(slider); |
| | | |
| | | var moveActive = false; |
| | | |
| | | function move(movement) { |
| | | if (!moveActive) { |
| | | return; |
| | | } |
| | | var relativeOffset = movement.endPosition.x; |
| | | |
| | | // 将滑块的位置与拆分位置同步 |
| | | viewer.scene.imagerySplitPosition = (slider.offsetLeft + relativeOffset - slider.parentElement.offsetWidth) / (slider.parentElement.offsetWidth); |
| | | slider.style.left = 100.0 * + (slider.offsetLeft + relativeOffset) / (slider.parentElement.offsetWidth) + '%'; |
| | | that.map.scene.imagerySplitPosition.x = (slider.offsetLeft + relativeOffset - slider.parentElement.offsetWidth) / (slider.parentElement.offsetWidth); |
| | | slider.style.left = 100.0 * +(slider.offsetLeft + relativeOffset) / (slider.parentElement.offsetWidth) + '%'; |
| | | |
| | | } |
| | | |
| | | |
| | | handler.setInputAction(function () { |
| | | moveActive = true; |
| | | }, Cesium.ScreenSpaceEventType.LEFT_DOWN);//左键按下事件 |
| | | }, Cesium.ScreenSpaceEventType.LEFT_DOWN); //左键按下事件 |
| | | handler.setInputAction(function () { |
| | | moveActive = true; |
| | | }, Cesium.ScreenSpaceEventType.PINCH_START);//触摸表面上双指事件的开始 |
| | | }, Cesium.ScreenSpaceEventType.PINCH_START); //触摸表面上双指事件的开始 |
| | | |
| | | handler.setInputAction(move, Cesium.ScreenSpaceEventType.MOUSE_MOVE);//鼠标移动事件 |
| | | handler.setInputAction(move, Cesium.ScreenSpaceEventType.PINCH_MOVE);//触摸表面上双指移动事件 |
| | | handler.setInputAction(move, Cesium.ScreenSpaceEventType.MOUSE_MOVE); //鼠标移动事件 |
| | | handler.setInputAction(move, Cesium.ScreenSpaceEventType.PINCH_MOVE); //触摸表面上双指移动事件 |
| | | |
| | | handler.setInputAction(function () { |
| | | moveActive = false; |
| | | }, Cesium.ScreenSpaceEventType.LEFT_UP);//鼠标左键抬起事件 |
| | | }, Cesium.ScreenSpaceEventType.LEFT_UP); //鼠标左键抬起事件 |
| | | handler.setInputAction(function () { |
| | | moveActive = false; |
| | | }, Cesium.ScreenSpaceEventType.PINCH_END);//触摸表面上的双指事件的结束 |
| | | }, Cesium.ScreenSpaceEventType.PINCH_END); //触摸表面上的双指事件的结束 |
| | | }, |
| | | |
| | | openRolling: function (item) { |
| | |
| | | var that = this; |
| | | if (this.flag != true) return; |
| | | var slider = document.getElementById('slider'); |
| | | that.map.scene.imagerySplitPosition = (slider.offsetLeft - slider.parentElement.offsetWidth) / (slider.parentElement.offsetWidth); |
| | | that.map.scene.imagerySplitPosition = 0.5; |
| | | loadMapLeft(); |
| | | that.earthAtNightLeft.splitDirection = Cesium.ImagerySplitDirection.LEFT; |
| | | that.zjLeft.splitDirection = Cesium.ImagerySplitDirection.LEFT; |
| | | that.map.scene.imagerySplitPosition.x = (slider.offsetLeft - slider.parentElement.offsetWidth) / (slider.parentElement.offsetWidth); |
| | | that.map.scene.imagerySplitPosition.x = 0.5; |
| | | |
| | | function loadMapLeft() { |
| | | //imageryLayers获取将在地球上渲染的图像图层的集合 |
| | | var layers = that.map.imageryLayers; |
| | | //addImageryProvider使用给定的ImageryProvider创建一个新层,并将其添加到集合中 |
| | | that.earthAtNightLeft = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderAdd[0] |
| | | )); |
| | | that.zjLeft = layers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderAdd[1] |
| | | )); |
| | | } |
| | | |
| | | |
| | | that.earthAtNightLeft = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderAdd[0] |
| | | )); |
| | | that.zjLeft = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderAdd[1] |
| | | )); |
| | | |
| | | that.earthAtNightLeft.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE); |
| | | that.zjLeft.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.LEFT, Cesium.ImagerySplitDirection.NONE); |
| | | |
| | | |
| | | that.tiandituRight = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderDian[0] |
| | | )); |
| | | that.tiandituZJRight = that.map.imageryLayers.addImageryProvider(new Cesium.WebMapTileServiceImageryProvider( |
| | | that.imageryProviderDian[1] |
| | | )); |
| | | |
| | | that.tiandituRight.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.RIGHT, Cesium.ImagerySplitDirection.NONE); |
| | | that.tiandituZJRight.splitDirection = new Cesium.Cartesian2(Cesium.ImagerySplitDirection.RIGHT, Cesium.ImagerySplitDirection.NONE); |
| | | }, |
| | | |
| | | |