1
mayisheng
2022-08-15 81f54040c2cb65537c6c6e1db8358a39a57dea0d
src/store/modules/pc/leftNavsData.js
@@ -1,58 +1,61 @@
let leftNavsData = {
const leftNavsData = {
    state: {
        addIconsLayerIconstate: false,
        addIconsLayerIconLayer: null,
        addIconsLayerIconPopup: false, //控制编辑窗口显影
        addIconsLayerIconPosition: [], //发送坐标
        addIconsLayerIconPopup: false, // 控制编辑窗口显影
        addIconsLayerIconPosition: [] // 发送坐标
    },
    actions: {
        chouseAddIconsLayerIcon({
        chouseAddIconsLayerIcon ({
            state,
            commit,
            dispatch
        }, val) {
            //加载图层
            commit("createAddIconsLayerIconLayer", {
            // 加载图层
            commit('createAddIconsLayerIconLayer', {
                viewer: val.viewer
            })
            //重置事件
            state.addIconsLayerIconstate = false;
            commit("set_closeMapClick", true); //关闭其他操作
            //监听鼠标移动
            // 重置事件
            state.addIconsLayerIconstate = false
            commit('set_closeMapClick', true) // 关闭其他操作
            // 监听鼠标移动
            val.viewer.on(global.DC.MouseEventType.MOUSE_MOVE, (e) => {
                if (state.addIconsLayerIconstate) { //事件完成
                    return;
                if (state.addIconsLayerIconstate) { // 事件完成
                    return
                }
                commit("addIconsLayerIconmoveMessage", {
                commit('addIconsLayerIconmoveMessage', {
                    e: e,
                    b: "点击确认标注位置",
                    b: '点击确认标注位置',
                    viewer: val.viewer
                })
            });
            })
            val.viewer.once(global.DC.MouseEventType.CLICK, (e) => {
                commit("addIconsLayerIconmoveMessage", { //取消tip
                if (state.pinchFlag == true) {
                    return
                }
                commit('addIconsLayerIconmoveMessage', { // 取消tip
                    e: e,
                    b: "",
                    b: '',
                    viewer: val.viewer
                })
                dispatch("pcFlyView", { //飞入位置
                dispatch('pcFlyView', { // 飞入位置
                    jd: e.wgs84SurfacePosition.lng,
                    wd: +e.wgs84SurfacePosition.lat + 0.0002,
                    viewer: val.viewer,
                });
                //完成选点操作
                state.addIconsLayerIconstate = true;
                    viewer: val.viewer
                })
                // 完成选点操作
                state.addIconsLayerIconstate = true
                // commit("set_closeMapClick", false); //开启其他操作
                if (val.fn) {
                    let lnglat = [e.wgs84SurfacePosition.lng,
                        e.wgs84SurfacePosition.lat
                    const lnglat = [e.wgs84SurfacePosition.lng,
                    e.wgs84SurfacePosition.lat
                    ]
                    val.fn(lnglat)
                }
            });
            })
        },
        addIconsLayerIcon({
        addIconsLayerIcon ({
            state,
            commit,
            dispatch
@@ -66,18 +69,18 @@
                `
                          <div class="tag-entitys-box">
                              <div class="tag-content">
                                  ${val.name || "我的标签"}
                                  ${val.name || '我的标签'}
                              </div>
                              <div class="tag-angle-content">
                                  <img src="https://map.hit.edu.cn/images/tarrow_xq.png">
                              </div>
                          </div>
                      `
            );
            state.addIconsLayerIconLayer.addOverlay(divIcon);
            //打开编辑窗口弹窗
            new global.DC.DivForms(val.viewer, {
                domId: "leftNavsAdd",
            )
            state.addIconsLayerIconLayer.addOverlay(divIcon)
            // 打开编辑窗口弹窗
            var box = new global.DC.DivForms(val.viewer, {
                domId: 'leftNavsAdd',
                position: [
                    global.DC.Transform.transformWGS84ToCartesian(
                        new global.DC.Position(
@@ -85,47 +88,45 @@
                            Number(val.lnglat[1]),
                            Number(0)
                        )
                    ),
                ],
            });
            commit("SET_addIconsLayerIconPosition", val.lnglat)
            commit("SET_addIconsLayerIconPopup", true);
                    )
                ]
            })
            commit('SET_addIconsLayerIconPosition', val.lnglat)
            commit('SET_addIconsLayerIconPopup', true)
        }
    },
    mutations: {
        createAddIconsLayerIconLayer(state, val) {
        createAddIconsLayerIconLayer (state, val) {
            if (state.addIconsLayerIconLayer == null) {
                state.addIconsLayerIconLayer = new global.DC.HtmlLayer("addIconsLayerIconLayer");
                val.viewer.addLayer(state.addIconsLayerIconLayer);
                state.addIconsLayerIconLayer = new global.DC.HtmlLayer('addIconsLayerIconLayer')
                val.viewer.addLayer(state.addIconsLayerIconLayer)
            }
            if (val.clear) {
                state.addIconsLayerIconLayer.clear();
                state.addIconsLayerIconLayer.clear()
            }
            console.log(state.addIconsLayerIconLayer, "see")
        },
        addIconsLayerIconmoveMessage(state, val) {
            console.log(val)
            if (val.b == "") {
                val.viewer.tooltip.enable = false;
        addIconsLayerIconmoveMessage (state, val) {
            if (val.b == '') {
                val.viewer.tooltip.enable = false
            } else {
                val.viewer.tooltip.enable = true;
                val.viewer.tooltip.showAt(val.e.windowPosition, val.b);
                val.viewer.tooltip.enable = true
                val.viewer.tooltip.showAt(val.e.windowPosition, val.b)
            }
        },
        SET_addIconsLayerIconPopup(state, addIconsLayerIconPopup) {
        SET_addIconsLayerIconPopup (state, addIconsLayerIconPopup) {
            state.addIconsLayerIconPopup = addIconsLayerIconPopup
            if (!state.addIconsLayerIconPopup) { //关闭即关闭图层 并刷新标签
            if (!state.addIconsLayerIconPopup) { // 关闭即关闭图层 并刷新标签
                if (state.addIconsLayerIconLayer) {
                    state.addIconsLayerIconLayer.clear();
                    state.addIconsLayerIconLayer.remove();
                    state.addIconsLayerIconLayer = null;
                    state.addIconsLayerIconLayer.clear()
                    state.addIconsLayerIconLayer.remove()
                    state.addIconsLayerIconLayer = null
                }
            }
        },
        SET_addIconsLayerIconPosition(state, addIconsLayerIconPosition) {
        SET_addIconsLayerIconPosition (state, addIconsLayerIconPosition) {
            state.addIconsLayerIconPosition = addIconsLayerIconPosition
        },
        }
    }
}
export default leftNavsData
export default leftNavsData