管道基础大数据平台系统开发-【前端】-新系統界面
Surpriseplus
2023-05-16 dae8fb08b9ff7327da86ed249c9c97a87c90e6f2
src/components/mapsdk.vue
@@ -409,6 +409,20 @@
                </div>
              </td>
            </tr>
            <tr>
              <td>淤泥质土</td>
              <td>
                <div style="width:100px;height:20px;background:rgba(75,74,78,1)">
                </div>
              </td>
            </tr>
            <tr>
              <td>其他</td>
              <td>
                <div style="width:100px;height:20px;background:rgba(225,225,225,1)">
                </div>
              </td>
            </tr>
          </table>
        </el-card>
      </div>
@@ -815,7 +829,7 @@
        window.pickedFeature = sgworld.Viewer.scene.pick(event.position);
        if (Cesium.defined(window.pickedFeature)) {
          if (window.pickedFeature.primitive instanceof Cesium.Cesium3DTileset) {
            if (window.pickedFeature && window.pickedFeature.getProperty) {
            if (window.pickedFeature) {
              window.pickedColor = window.pickedFeature.color
              window.pickedFeature.color = Cesium.Color.RED.withAlpha(0.3);
@@ -828,24 +842,32 @@
      }, Cesium.ScreenSpaceEventType.LEFT_CLICK)
    },
    async setModelInfoData(result) {
      var modelKey = 'id'
      if (result.tileset.pubid > 0) {
        const data = await comprehensive_selectPubById({ id: result.tileset.pubid })
        if (data.code != 200) {
          return
        } else {
      var modelKey = 'id';
      debugger
      var modelid;
      if (result.tileset) {
        if (result.tileset.pubid > 0) {
          modelKey = JSON.parse(data.result.json).modelid
          const data = await comprehensive_selectPubById({ id: result.tileset.pubid })
          if (data.code != 200) {
            return
          } else {
            debugger
            modelKey = JSON.parse(data.result.json).modelid
          }
          if (!modelKey) {
            return this.$message('没有模型主键ID,无法查询数据');
          }
          modelid = pickedFeature.getProperty(modelKey);
        }
        if (!modelKey) {
          return this.$message('没有模型主键ID,无法查询数据');
        }
      } else {
        modelid = '3dml' + result.primitive.id;
      }
      var that = this
      var obj = {
        layerid: pickedFeature.primitive.layerId,
        modelid: pickedFeature.getProperty(modelKey)
        modelid: modelid
      }
      const data1 = await comprehensive_selectModelByGuid(obj);
@@ -863,7 +885,7 @@
      }
      that.$store.state.catModelInfo = {
        id: pickedFeature.getProperty(modelKey),
        id: modelid,
        name: name,
        type: type,
        bak: bak,
@@ -904,8 +926,13 @@
        licenseServer: window.sceneConfig.licenseServer,
      });
      window.Viewer = window.sgworld._Viewer;
      if (is_production) {
        Viewer.imageryLayers.removeAll();
      }
      //定位
      // sgworld.Navigate.jumpTo({
      //   //跳转视角
@@ -935,6 +962,25 @@
      //开启深度检测
      // sgworld.Analysis.depthTestAgainstTerrain(true)
      Viewer.scene.globe.depthTestAgainstTerrain = true;
      if (is_production) {
        var base_ulr = window.sceneConfig.baseUrl;
        if (base_ulr.indexOf('{host}') > -1) {
          base_ulr = base_ulr.replace("{host}", iisHost)
        }
        Viewer.imageryLayers.addImageryProvider(
          new Cesium.UrlTemplateImageryProvider({
            url: base_ulr,
            maximumLevel: 9
          })
        );
        window.BaseMapLayer = Viewer.imageryLayers.addImageryProvider(
          new Cesium.UrlTemplateImageryProvider({
            url: base_ulr,
          })
        );
      }
      var option = {
        url: window.sceneConfig.SGUrl,
@@ -1147,9 +1193,10 @@
    },
    //定位
    setCoordLocal() {
      var lon = parseFloat(this.coordFrom.lon);
      var lat = parseFloat(this.coordFrom.lat);
      var height = parseFloat(this.coordFrom.height);
      var lon = parseFloat(this.coordFrom.lon)
      var lat = parseFloat(this.coordFrom.lat)
      var height = parseFloat(this.coordFrom.height) == NaN ? parseFloat(this.coordFrom.height) : 100;
      var position = {
        X: lon,
        Y: lat,
@@ -1495,7 +1542,7 @@
        return
      }
      if (res.result.length <= 0) {
        this.$message.error('暂无附件');
        this.$message('暂无附件');
        return
      }