| | |
| | | import mapConfig from "./mapConfig"; |
| | | |
| | | var tileset; |
| | | const mapServer = { |
| | | listData: [], |
| | | sourceType: null, |
| | | tileContent: null, |
| | | init() {}, |
| | | addServer(res) { |
| | | this.remoServer(res); |
| | | // this.remoServer(res); |
| | | this.sourceType = res.sourceType; |
| | | |
| | | switch (this.sourceType) { |
| | |
| | | case "tms": |
| | | this.addTmsLayer(res); |
| | | break; |
| | | case "wfs": |
| | | this.addWfsLayer(res); |
| | | break; |
| | | case "Tileset": |
| | | this.addTileSetLayer(res); |
| | | break; |
| | | } |
| | | }, |
| | | remoServer(res) { |
| | |
| | | } |
| | | } |
| | | }, |
| | | addTileSetLayer(res) { |
| | | const tileset = new Cesium.Cesium3DTileset({ |
| | | url: res.url |
| | | }); |
| | | |
| | | Viewer.scene.primitives.add(tileset); |
| | | // const that = this; |
| | | // tileset.readyPromise.then((tileObj) => { |
| | | // tileObj.tileVisible.addEventListener((tile) => { |
| | | // if (Cesium.defined(tile.content)) { |
| | | // var featuresLength = tile.content.featuresLength; |
| | | // for (var i = 0; i < featuresLength; i++) { |
| | | // var feature = tile.content.getFeature(i); |
| | | // // console.log(feature.getProperty("id")); |
| | | // } |
| | | // } |
| | | // }); |
| | | // }); |
| | | this.listData.push({ |
| | | layer: tileset, |
| | | type: this.sourceType |
| | | }); |
| | | }, |
| | | traverseVisibleTiles() { |
| | | tileset.readyPromise.then((tileset) => { |
| | | tileset.tileVisibility.forEachTile(function (tile) {}); |
| | | }); |
| | | }, |
| | | addWfsLayer(res) { |
| | | const layer = earthCtrl.factory.createWfsLayer("polygon", { |
| | | urls: res.url, |
| | | layer: res.layer, |
| | | outlineColor: res.outlineColor, |
| | | alpha: res.alpha |
| | | }); |
| | | this.listData.push({ |
| | | layer: layer, |
| | | type: this.sourceType |
| | | }); |
| | | }, |
| | | addTmsLayer(res) { |
| | | var layer = earthCtrl.factory.createImageryLayer({ |
| | | const layer = earthCtrl.factory.createImageryLayer({ |
| | | sourceType: "tms", |
| | | // url: "http://test.smartearth.cn:9037/gisserver/tmsserver/SubicBayArea" |
| | | |
| | | url: res.url |
| | | }); |
| | | this.listData.push({ |
| | | layer: layer, |
| | | type: this.sourceType |
| | | }); |
| | | mapConfig.flyToImageryLayer(layer); |
| | | }, |
| | | addArcgisServer(res) { |
| | | const layer = earthCtrl.factory.createImageryLayer({ |