1.1.1 • Published 1 year ago

map3d-gallery v1.1.1

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

这是一个 3d 地图ui租还

联系作者:梦玉 mengyu6668@163.com

使用方法

vue2下载依赖
npm install map3d-gallery@latest

导入map3d-gallery
import xxx from "map3d-gallery";

导入组件样式
import "map3d-gallery/index.css";

组件使用
1.注册组件
components: { xxx },

1.组件初始化
<xxx v-if="mapProps.show"  :mapProps="mapProps" class="xxx" ref="refMap" >
<template #detailBox><div class="paramsName"><span>{{ detailData.paramsName }}</span></div></template>
</xxx>

2.组件参数说明
props: {
      mapProps: {
        // 地图操作回调
        mapParameters: {
          // 地图颜色
          map3dParam: {
            detailTexture: require('map3d-gallery/img/xxx.jpg'), // 地图表面贴图
          },
          labelSubAndText: {
            label2Sub: 'mainBodyCount',// mainBodyCount接口里需要展示到地图上的总数字段 字段名可以修改 没设置不显示
            label2Text: '家', // label2Sub有值才会显示 柱子上显示的数据和单位
          },
        },
        show: true, // 是否显示
        urlJson: "430000", // 地图code  也是请求数据地址 geojson/430000.json
        fatherCallBack: this.fatherCallBack,  // 地图操作回调
      },
},


3.组件方法说明
methods: { 
    // 回调更新数据
    fatherCallBack(datas) {
      const { name, data } = datas;
      switch (name) {
        case "cityPoint":  // 城市点位
          const arr = data.urlJson ? data.features : data;
          console.log(datas, "-----------cityPoint")
          const newArr = arr.map(element => {
            const { name, adcode, parent, level, center, centroid } = element.properties;
            // abnormalColor 异常颜色//预警主体:  粉红色
            // greenColor 废弃物回收信息 绿色 
            // orangeColor 主体 橙色
            // 默认蓝色
            let color = "";
            if (adcode == 430421) {
              color = "orangeColor"
            } else if (adcode == 430422) {
              color = "greenColor"
            } else if (adcode == 430423) {
              color = "abnormalColor"
            }
            return {
              centroid: adcode == 430900 ? center : centroid,
              level,
              adcode,
              parent,
              placeName: name,
              mainBodyCount: 3,
              color
            }
          });
          if (data.urlJson) {
            this.goback.paramsName = data.paramsName
            this.goback.urlJson = data.urlJson
          }
          return newArr;
        case "showDetails": // 是否显示详情
          this.detailData = data;
          this.$refs.xxx.detailUpdate();
          break;
        case "switchMaps": // 切换地图
          this.mapInit.show = false;
          this.mapInit.urlJson = data.urlJson;
          break;
      }
    },
}

4. 给元素设置高度
<style scoped lang="scss">
.xxx {
  height: 60vh;
}
</style>
1.1.1

1 year ago

1.1.0

1 year ago

1.0.9

2 years ago

1.0.8

2 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago