Browse Source

设置初始加载天地图

ZXW 7 years ago
parent
commit
9304a3ee35

+ 60 - 55
src/widgets/BaseMap/Widget.ts

@@ -30,19 +30,6 @@ class BaseMap extends BaseWidget {
         // this.map.on("zoom-end", this.zoomEndEvent.bind(this));//以2000比例尺为分界自动切换地图类型
     }
 
-    //获取地图重新加载完上一次的比例尺
-    mapOnLoad() {
-        this.previousScale = this.map.getScale();
-        // this.map.setExtent(new Extent({
-        //     xmax: 770049.9464697815,
-        //     xmin: 762144.1806582497,
-        //     ymax: 3400461.863531368,
-        //     ymin: 3394550.0017076437,
-        //     spatialReference: 4544
-        // }));
-        this.ready();
-    }
-
     initMap() {
 
         /*** 添加图层到map控件 ***/
@@ -53,6 +40,7 @@ class BaseMap extends BaseWidget {
 
     }
 
+
     /**
    * (方法说明)根据config中mapService的值以及全局变量appConfig.gisResource中的值,添加相应图层
    * @method (addToMap)
@@ -60,54 +48,71 @@ class BaseMap extends BaseWidget {
    * @param 无
    * @return {(Map)} (返回一个Map对象)
    */
-    addToMap() {
-        var map = new Map(this.config.mapDiv, { logo: false, showLabels: true, showAttribution: false, slider: false });
-        //添加对应图层到map对象
-        for (var i = 0; i < this.config.mapService.length; i++) {
-            var layername = this.config.mapService[i];
-            if (this.AppX.appConfig.gisResource[layername].config.length > 0) {
-                for (var index = 0; index < this.AppX.appConfig.gisResource[layername].config.length; index++) {
-                    var url = this.AppX.appConfig.gisResource[layername].config[index].url;
-                    var layerAlias = this.AppX.appConfig.gisResource[layername].config[index].name;
-
-                    //切片服务
-                    if (this.AppX.appConfig.gisResource[layername].type == "tiled") {
-                        var tileLayer = new ArcGISTiledMapServiceLayer(url, { className: "tileLayer" });
-                        tileLayer.id = layername + "_" + index;
-                        if (this.config.baselayers.indexOf(layername) != -1) {//基础底图放置在最下层
-                            //add private terrain layer
-                            // if (this.AppX.appConfig.gisResource.privateterrain.config.length) {
-                            //     var privatelayer = new ArcGISTiledMapServiceLayer(this.AppX.appConfig.gisResource.privateterrain.config[0].url, { className: "tileLayer" });
-                            //     privatelayer.id = "privateterrain_0";
-                            //     privatelayer.setVisibility(false);
-                            //     map.addLayer(privatelayer, 0);
-                            // }
-                            //add private terrain layer
-                            map.addLayer(tileLayer, 0);//管线图层最先添加,但地形图要插入到最底层,以保证地图的缩放比例尺与切片管线一致                            
-                        }
-                        else {
-                            map.addLayer(tileLayer);
-                        }
-                        if (layername == "pipe") {
-                            tileLayer.on("load", this.onPipeLayerLoad.bind(this));//设置管线的初始范围
-                        }
+  addToMap() {
+    var map = new Map(this.config.mapDiv, { logo: false, showLabels: true, showAttribution: false, slider: false });
+    //添加对应图层到map对象
+    for (var i = 0; i < this.config.mapService.length; i++) {
+        var layername = this.config.mapService[i];
+        if (this.AppX.appConfig.gisResource[layername].config.length > 0) {
+            for (var index = 0; index < this.AppX.appConfig.gisResource[layername].config.length; index++) {
+                var url = this.AppX.appConfig.gisResource[layername].config[index].url;
+                var layerAlias = this.AppX.appConfig.gisResource[layername].config[index].name;
+
+                //切片服务
+                if (this.AppX.appConfig.gisResource[layername].type == "tiled") {
+                    var tileLayer = new ArcGISTiledMapServiceLayer(url, { className: "tileLayer" });
+                    tileLayer.id = layername + "_" + index;
+                    if (this.config.baselayers.indexOf(layername) != -1) {//基础底图放置在最下层
+                        //add private terrain layer
+                        // if (this.AppX.appConfig.gisResource.privateterrain.config.length) {
+                        //     var privatelayer = new ArcGISTiledMapServiceLayer(this.AppX.appConfig.gisResource.privateterrain.config[0].url, { className: "tileLayer" });
+                        //     privatelayer.id = "privateterrain_0";
+                        //     privatelayer.setVisibility(false);
+                        //     map.addLayer(privatelayer, 0);
+                        // }
+                        //add private terrain layer
+                        map.addLayer(tileLayer, 0);//管线图层最先添加,但地形图要插入到最底层,以保证地图的缩放比例尺与切片管线一致                            
+                    }
+                    else {
+                        map.addLayer(tileLayer);
                     }
-                    //动态服务
-                    else if (this.AppX.appConfig.gisResource[layername].type == "dynamic") {
-                        var dynamicLayer = new ArcGISDynamicMapServiceLayer(url, { className: "dynamicLayer" });
-                        dynamicLayer.id = layername + "_" + index;
-                        if (this.AppX.appConfig.gisResource[layername].filter) {
-                            this.setLayerFilter(dynamicLayer, layerAlias);
-                        }
-                        map.addLayer(dynamicLayer);
-                        if (layername == "pipe")
-                            dynamicLayer.on("load", this.onPipeLayerLoad.bind(this));
+                    if (layername == "pipe") {
+                        tileLayer.on("load", this.onPipeLayerLoad.bind(this));//设置管线的初始范围
                     }
                 }
+                //动态服务
+                else if (this.AppX.appConfig.gisResource[layername].type == "dynamic") {
+                    var dynamicLayer = new ArcGISDynamicMapServiceLayer(url, { className: "dynamicLayer" });
+                    dynamicLayer.id = layername + "_" + index;
+                    if (this.AppX.appConfig.gisResource[layername].filter) {
+                        this.setLayerFilter(dynamicLayer, layerAlias);
+                    }
+                    map.addLayer(dynamicLayer);
+                    if (layername == "pipe")
+                        dynamicLayer.on("load", this.onPipeLayerLoad.bind(this));
+                }
             }
         }
-        return map;
     }
+    return map;
+}
+
+
+    //获取地图重新加载完上一次的比例尺
+    mapOnLoad() {
+        this.previousScale = this.map.getScale();
+        // this.map.setExtent(new Extent({
+        //     xmax: 770049.9464697815,
+        //     xmin: 762144.1806582497,
+        //     ymax: 3400461.863531368,
+        //     ymin: 3394550.0017076437,
+        //     spatialReference: 4544
+        // }));
+        this.ready();
+    }
+
+  
+
 
     /**
    * (方法说明)管线图层加载完后,设置图层的初始范围

+ 3 - 3
src/widgets/BaseMap/config.json

@@ -3,8 +3,8 @@
     "tmplateUrl":"widgets/BaseMap/Widget.html",
     "styleUrl":"widgets/BaseMap/css/style.css",
     "mapDiv": "myMap",
-    "mapService": [
-       "fswmap","poi","raster" ,"pipe"
-    ],
+    "mapService": [           
+       "fswmap","poi","terrain" ,"pipe"
+    ],                                "_comment":"//需要加载的图层",
     "baselayers":["privateterrain","terrain","raster"]
 }

+ 2 - 2
src/widgets/SCADAwatchingOnly/config.json

@@ -1,12 +1,12 @@
 {
-    "onePageCount": 6,
+    "onePageCount": 6,               "_comment":"//sacada每页显示的条数",
     "updateInterval": 6000,
     "dataPanel": {
         "width": 790,
         "height": 530
     },
 
-    "getAllScadaInfo": {
+    "getAllScadaInfo": {             "_comment":"//获取scada信息接口相关配置",
         "url_request": "/scada/station/brief",
         "msg_error": "查询SCDA信息出错!",
         "msg_null": "查询SCDA信息为空!"