From 164092e1011b2978d641249e0d930b94ec3943b5 Mon Sep 17 00:00:00 2001
From: wangzhibo <wangzhibo@shsening.com>
Date: 星期一, 27 九月 2021 09:27:03 +0800
Subject: [PATCH] getDefaultDateTime

---
 js/function.js |  396 ++------------------------------------------------------
 1 files changed, 18 insertions(+), 378 deletions(-)

diff --git a/js/function.js b/js/function.js
index 6bb5031..440288f 100644
--- a/js/function.js
+++ b/js/function.js
@@ -44,14 +44,8 @@
 mars3d.global_variables = { geoserver_url_predix: 'http://58.246.27.194:7011/', nodejs_url_predix: 'http://58.246.27.194:7012/', userid: 2, queryDataType: 'hour' };
 mars3d.global_variables.queryDataTStart = getDefaultDateTime();
 mars3d.global_variables.queryDataTStartGeo = getDefaultDateTimeGeo();
-
 mars3d.global_variables.queryDataTEnd = getDefaultDateTimeEnd();
 
-var guokong_color_list = ['#0EE839', '#FEFE23', '#FD9D00', '#F70F0D', '#8A0B73', '#88041E'];
-var guokong_color_nodata = '#C0C0C0';
-var guokong_qindex_list = { 'pm25': [35, 75, 115, 150, 250], 'pm10': [50, 150, 250, 350, 420], 'no2': [100, 200, 700, 1200, 2340], 'co': [5, 10, 35, 60, 90] };
-var guokong_data_list;
-var taxi_data_list;
 
 
 function initLayersByUserid() {
@@ -88,7 +82,7 @@
     layers: "konglu_58:" + item.geoname_prefix + mars3d.global_variables.queryDataType,
     crs: "EPSG:4326",
     parameters: {
-      "styles": item.style_prefix + item.styleoptions[0],
+      "styles": item.style_prefix + item.style_selected,
       "transparent": "true",
       "format": "image/png",
       "viewparams": "userid:" + mars3d.global_variables.userid + ";datatime:" + mars3d.global_variables.queryDataTStartGeo
@@ -114,6 +108,7 @@
     show: item.show,
     geoname_prefix: item.geoname_prefix,
     style_prefix: item.style_prefix,
+    style_selected:item.style_selected,
     style_options: item.styleoptions,
     flyTo: false
   });
@@ -121,364 +116,29 @@
   //鍗曞嚮浜嬩欢
   wmsLyer.on(mars3d.EventType.click, function (event) {
     console.log("鍗曞嚮浜嗙煝閲忔暟鎹紝鍏�" + event.features.length + "鏉�", event);
+    console.log(event.layer.options.style_selected);
+
+
+    console.log(event.graphic);
+    /*
+    event.graphic.style.diffHeight = 
+
+      diffHeight: 300,
+      material: mars3d.MaterialUtil.createMaterial(mars3d.MaterialType.LineFlow, {
+        image: "img/textures/fence.png",
+        color: "#ffff00",
+        speed: 10, //閫熷害锛屽缓璁彇鍊艰寖鍥�1-100
+        axisY: true,
+      }),
+      */
   });
 
   map.addLayer(wmsLyer);
 
 }
-function addMaskShanghai() {
-
-  //geojson 鍚堣偉杈圭晫绾�
-  geoJsonLayer = new mars3d.layer.GeoJsonLayer({
-    url: "//data.mars3d.cn/file/geojson/areas/340100.json",
-    mask: true, //鏍囪瘑涓洪伄缃╁眰銆愰噸鐐瑰弬鏁般��
-    symbol: {
-      styleOptions: {
-        fill: true,
-        color: "rgb(2,26,79)",
-        opacity: 0.9,
-        outline: false,
-        outlineColor: "#39E09B",
-        outlineWidth: 8,
-        outlineOpacity: 0.8,
-        arcType: Cesium.ArcType.GEODESIC,
-        clampToGround: true,
-      },
-    },
-  });
-}
-
-function addGuokongLayerDIV(item) {
-
-  var guokongLayer = new mars3d.layer.DivLayer({
-    id: item.id,
-    pid: item.pid, //鍥惧眰绠$悊 涓娇鐢紝鐖惰妭鐐筰d
-    name: item.name,
-    style_selected: 'pm25',
-    style_options: item.styleoptions,
-    show: item.show
-  });
-  map.addLayer(guokongLayer);
-
-  guokongLayer.on(mars3d.EventType.click, function (event) {
-    console.log("鐩戝惉layer锛屽崟鍑讳簡鐭㈤噺瀵硅薄", event);
-    console.log(event.graphic?.attr)
-    var item = event.graphic?.attr;
-    //haoutil.msg('鍗曞嚮浜嗭細' + item['楂樻牎鍚嶇О'])
-  });
-
-  guokongLayer.bindPopup(function (event) {
-    let item = event.graphic?.attr;
-    //console.log(item);
-    var html =
-      "绔欑偣缂栧彿锛�" +
-      item["code"] +
-      "<br />绔欑偣鍚嶇О锛�" +
-      item["name"] +
-      "<br />鏁版嵁鏃堕棿锛�" +
-      item["datatime"] +
-      "<br />PM2.5:" +
-      item["PM25"] + "ug/m3" +
-      "<br />PM10:" +
-      item["PM10"] + "ug/m3" +
-      "<br />NO2:" +
-      item["NO2"] + "ug/m3" +
-      "<br />CO:" +
-      item["CO"] + "ug/m3" +
-      "<br />SO2:" +
-      item["SO2"] + "ug/m3" +
-      "<br /><br /><p><a href='#' onclick='javascript:showDetail(1001,\"" + item["code"] + "\")' >璇︾粏淇℃伅</a></p>";
-    return html;
-  });
-
-  guokongLayer.changeColor = function () {
-
-    guokongLayer.clear(true);
-
-    addResutToLayer(this, guokong_data_list);
-
-  }
-  // add 鍥芥帶鐐�
-  addGuokongPointToLayer(guokongLayer);
-
-}
-
-function addGuokongPointToLayer(tmplayer) {
-
-  $.getJSON(mars3d.global_variables.nodejs_url_predix + "dataapi/Bdata?bid=get_1001_list&datatype=" + mars3d.global_variables.queryDataType + "&datatime=" + mars3d.global_variables.queryDataTStart + "&qindex=pm25&pageno=1&pagesize=1000", (result) => {
-
-    guokong_data_list = result.data.result;
-
-    addResutToLayer(tmplayer, result.data.result);
-
-  });
-
-}
-
-function addResutToLayer(tmplayer, items) {
-
-  for (var i = 0, len = items.length; i < len; i++) {
-    var item = items[i];
-    var jd = item.lon;
-    var wd = item.lat;
-    var clr = getGuokongPointColor(tmplayer.options.style_selected, item[(tmplayer.options.style_selected).toUpperCase()]);
-    var graphic = new mars3d.graphic.DivLightPoint({
-      position: Cesium.Cartesian3.fromDegrees(jd, wd),
-      style: {
-        color: clr,
-        heightReference: Cesium.HeightReference.CLAMP_TO_GROUND,
-        highlight: {
-          type: "divLightPoint",
-          diffHeight: 600,
-          material: mars3d.MaterialUtil.createMaterialProperty(mars3d.MaterialType.CircleWave, {
-            color: clr,
-            count: 3,
-            speed: 20,
-          }),
-        },
-        distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 200000), //鎸夎璺濊窛绂绘樉绀�
-      },
-      show: true,
-      attr: item,
-    });
-    tmplayer.addGraphic(graphic);
-  }
-
-
-}
-
-
-function getGuokongPointColor(qindex, value) {
-
-  if (!value || value == null || value == 'null') {
-    return guokong_color_nodata;
-  }
-  for (var key in guokong_qindex_list) {
-    if (key == qindex) {
-      for (let i = guokong_qindex_list[key].length; i > -1; i--) {
-        if (value > guokong_qindex_list[key][i]) {
-          return guokong_color_list[i + 1];
-        }
-      }
-    }
-  }
-}
-
-function getIndexByValue() {
-
-}
-
-function addWindLayer(item) {
-
-  $.getJSON("data/getWindParametersByTime.json", { datatype: mars3d.global_variables.queryDataType, datatime: mars3d.global_variables.queryDataTStart }, (result) => {
-    console.log(result);
-
-    var layer_wind = new mars3d.layer.CanvasWindLayer({
-      id: item.id,
-      pid: item.pid,
-      name: item.name,
-      color: item.color,
-      frameRate: 20, //姣忕鍒锋柊娆℃暟
-      speedRate: 60, //椋庡墠杩涢�熺巼
-      particlesNumber: 1000,
-      maxAge: 60,
-      lineWidth: 1,
-      reverseY: true
-    });
-    layer_wind.show = item.show;
-    map.addLayer(layer_wind);
-
-    layer_wind.data = convertWindData(result.data);
-  });
-}
-
-function convertWindData(arr) {
-
-  var arrU = [];
-  var arrV = [];
-
-  var xmin = arr[0].x;
-  var xmax = arr[0].x;
-  var ymin = arr[0].y;
-  var ymax = arr[0].y;
-
-  // 椋庡悜鏄互y杞存鏂瑰悜涓洪浂搴﹂『鏃堕拡杞紝0搴﹁〃绀哄寳椋庛��90搴﹁〃绀轰笢椋庛��
-  // u琛ㄧず缁忓害鏂瑰悜涓婄殑椋庯紝u涓烘锛岃〃绀鸿タ椋庯紝浠庤タ杈瑰惞鏉ョ殑椋庛��
-  // v琛ㄧず绾害鏂瑰悜涓婄殑椋庯紝v涓烘锛岃〃绀哄崡椋庯紝浠庡崡杈瑰惞鏉ョ殑椋庛��
-  for (let i = 0, len = arr.length; i < len; i++) {
-    const item = arr[i];
-    if (xmin > item.x) {
-      xmin = item.x;
-    }
-    if (xmax < item.x) {
-      xmax = item.x;
-    }
-    if (ymin > item.y) {
-      ymin = item.y;
-    }
-    if (ymax < item.y) {
-      ymax = item.y;
-    }
-
-    var u = mars3d.WindUtil.getU(item.speed, item.dir);
-    arrU.push(u);
-
-    var v = mars3d.WindUtil.getV(item.speed, item.dir);
-    arrV.push(v);
-  }
-
-  var rows = getKeyNumCount(arr, "y"); //璁$畻 琛屾暟
-  var cols = getKeyNumCount(arr, "x"); //璁$畻 鍒楁暟
-
-  return {
-    xmin: xmin,
-    xmax: xmax,
-    ymax: ymax,
-    ymin: ymin,
-    rows: rows,
-    cols: cols,
-    udata: arrU, //妯悜椋庨��
-    vdata: arrV, //绾靛悜椋庨��
-  };
-}
-
-function getKeyNumCount(arr, key) {
-  var obj = {};
-  arr.forEach((item) => {
-    obj[item[key]] = true;
-  });
-
-  var count = 0;
-  for (let col in obj) {
-    count++;
-  }
-  return count;
-}
-
-function addTaxiLayer(item) {
-
-  var taxi_layer = new mars3d.layer.GraphicLayer({
-    id: item.id,
-    name: item.name,
-    pid: item.pid, //鍥惧眰绠$悊 涓娇鐢紝鐖惰妭鐐筰d
-    center: { "lat": 30.62156, "lng": 121.44918, "alt": 48716, "heading": 359, "pitch": -40 },
-    noCenter: true,
-    noCenter: true,
-    show: true,
-    onWidget: "widgetsTS/taxi_layer_setting/widget.js",
-  });
-  map.addLayer(taxi_layer);
-
-  taxi_layer.on(mars3d.EventType.click, function (event) {
-    console.log("鐩戝惉layer锛屽崟鍑讳簡鐭㈤噺瀵硅薄", event);
-    var item = event.graphic?.attr;
-  });
-  taxi_layer.bindPopup(function (event) {
-    let item = event.graphic?.attr;
-    var html =
-      "<br/>绫诲瀷锛�&nbsp;" +
-        item["code"].substring(0, 2) == "BS" ? "鍏氦杞�" : "鍑虹杞�" +
-        "<br />杞﹁締缂栧彿锛�&nbsp;" +
-        item["code"] +
-        "<br/>鏁版嵁鏃堕棿锛�&nbsp;" +
-        item["datatime"] +
-        "<br />鐬椂杞﹂�燂細&nbsp;&nbsp;&nbsp;" +
-        item["speed"] + "&nbsp;(km/h)" +
-        "<br />绮夊皹PM2.5锛�&nbsp;" +
-        item["pm25"] + "&nbsp;(ug/m3)" +
-        "<br />绮夊皹PM10锛�&nbsp;&nbsp;" +
-        item["pm10"] + "&nbsp;(ug/m3)" +
-        "<br />NO娴撳害锛�&nbsp;&nbsp;&nbsp;" +
-        item["no"] + "&nbsp;(ug/m3)" +
-        "<br />NO2娴撳害锛�&nbsp;&nbsp;" +
-        item["no2"] + "&nbsp;(ug/m3)" +
-        "<br />NO+NO2娴撳害锛�&nbsp;" +
-        item["nox"] + "&nbsp;(ug/m3)" +
-        "<br />CO娴撳害鍊�:&nbsp;&nbsp;&nbsp;&nbsp;" +
-        item["co"] + "&nbsp;&nbsp;(mg/m3)" +
-        "<br /><br /><p><a href='#' onclick='javascript:showDetail(1001,\"" + item["code"] + "\")' ><span style='color:#ff00ff'>鍘嗗彶杞ㄨ抗鍥炴斁</span></a></p>";
-    return html;
-  });
-
-  getTaxiListByUserId(taxi_layer);
-}
-
-function getTaxiListByUserId(tmpLayer) {
-
-  setTaxiLayerMapClock();
-  $.getJSON(mars3d.global_variables.nodejs_url_predix + "dataapi/Bdata?bid=get_1004_list_by_userid&userid=" + mars3d.global_variables.userid, (result) => {
-    taxi_data_list = result.data.result;
-    for (var i = 0, len = result.data.result.length; i < len; i++) {
-      let item = result.data.result[i];
-      addTaxiPathToLayer(item, tmpLayer);
-    }
-  });
-
-}
-
-function setTaxiLayerMapClock() {
-  map.clock.shouldAnimate = true;
-  map.clock.startTime = Cesium.JulianDate.fromDate(new Date(mars3d.global_variables.queryDataTStart));
-  map.clock.currentTime = Cesium.JulianDate.fromDate(new Date(mars3d.global_variables.queryDataTStart));
-  map.clock.stopTime = Cesium.JulianDate.fromDate(new Date(mars3d.global_variables.queryDataTEnd));
-  map.clock.multiplier = 5.0;
-  map.clock.clockRange = Cesium.ClockRange.LOOP_STOP;
-}
-function addTaxiPathToLayer(item, target_layer) {
-
-
-  $.getJSON(mars3d.global_variables.nodejs_url_predix + "dataapi/Bdata?bid=get_1004_single_path&siteid=" + item["code"], {
-    datatime1: mars3d.global_variables.queryDataTStart,
-    datatime2: mars3d.global_variables.queryDataTEnd
-  }, (result) => {
-
-    if (result.data.result.length > 0) {
-      var tmpPositionProperty = new Cesium.SampledPositionProperty();
-      for (var i = 0, len = result.data.result.length; i < len; i++) {
-        let item = result.data.result[i];
-        //console.log(item);
-        tmpPositionProperty.addSample(Cesium.JulianDate.fromDate(new Date(item["datatime"])), Cesium.Cartesian3.fromDegrees(item["lon"], item["lat"], 0.2))
-      }
-
-      let graphic = new mars3d.graphic.ModelEntity({
-        attr: result.data.result[0],
-        style: {
-          url: "gltf/" + (item["code"]).substring(0, 2) + ".gltf",
-          scale: 0.5,
-          minimumPixelSize: 20,
-          highlight: {
-            type: mars3d.EventType.click,
-            silhouette: true,
-            silhouetteColor: "#ff0000",
-            silhouetteSize: 4,
-          },
-          label: {
-            //涓嶉渶瑕佹枃瀛楁椂锛屽幓鎺塴abel閰嶇疆鍗冲彲
-            text: item["code"],
-            font_size: 16,
-            // TODO need to be changed according to qindex color.
-            color: "#ff00ff",
-            outline: true,
-            outlineColor: "#000000",
-            pixelOffsetY: -20,
-            distanceDisplayCondition: true,
-            distanceDisplayCondition_far: 50000,
-            distanceDisplayCondition_near: 0,
-          },
-        },
-      });
-      graphic.position = tmpPositionProperty;
-      target_layer.addGraphic(graphic);
-    }
-  });
-
-}
-
 
 function reLoadLayers() {
-
   var layers = map.getLayers({ layers: true });
-
   layers.forEach((layer) => {
     console.log(layer.name + ":" + layer.type);
 
@@ -490,7 +150,7 @@
 
       var tmpguokong = map.getLayerById(1001);
       tmpguokong.clear(true);
-      addGuokongPointToLayer(tmpguokong);
+      getGuokongPointFromServer(tmpguokong);
       //graphiclayer.eachGraphic
     } else if ([layer.id] == 1004) {
       var tmpTaxi = map.getLayerById(1004);
@@ -509,26 +169,6 @@
 
 }
 
-function addTDTAnnoLayer() {
-
-  Img_annoTileLayer = new mars3d.layer.TdtLayer({
-    name: "褰卞儚娉ㄨ",
-    layer: "img_z",
-    key: mars3d.Token.tiandituArr,
-  });
-  Img_annoTileLayer.show = false;
-  Img_annoTileLayer.pid = 50;
-  map.addLayer(Img_annoTileLayer);
-
-  Vec_annoTileLayer = new mars3d.layer.TdtLayer({
-    name: "鐭㈤噺鍥炬敞璁�",
-    layer: "vec_z",
-    key: mars3d.Token.tiandituArr,
-  });
-  Vec_annoTileLayer.show = false;
-  Vec_annoTileLayer.pid = 50;
-  map.addLayer(Vec_annoTileLayer);
-}
 
 function showDetail(layerid, itemCode) {
   haoutil.msg('鍗曞嚮浜嗭細' + layerid + ',' + itemCode);

--
Gitblit v1.9.1