import { a as n, c as r } from "./utils-4kGecFw2.js";
import { _ as e, a as t } from "./record-WJfBn7Fn.js";
import { _ as i } from "./mount_head-c1OIlkSj.js";
import { n as o, c as a } from "./index-BcLRpF0n.js";
import "./index-YqpN0yec.js";
import "./index-CZypPRsn.js";
import "vue";
import "vue-clipboard2";
import "interactjs";
import "prismjs";
import "prismjs/themes/prism-okaidia.css";
import "@liveqing/liveplayer";
import "jquery";
import "mqtt/dist/mqtt";
import "vuex";
import "axios";
import "element-ui";
import "vue-router";
import "moment";
import "terraformer-wkt-parser";
import "dayjs";
import "file-saver";
import "nanoid";
import "jspack";
import "recorder-core";
import "recorder-core/src/engine/mp3";
import "recorder-core/src/engine/mp3-engine";
import "recorder-core/src/engine/pcm";
import "js-base64";
import "element-ui/lib/theme-chalk/index.css";
var s = {
  props: {
    containerStyle: {
      type: Object,
      "default": function _default() {
        return {};
      }
    },
    position: {
      type: Object,
      "default": function _default() {
        return {};
      }
    },
    device: {
      type: Object,
      "default": function _default() {
        return {};
      }
    },
    payload: {
      type: Array,
      "default": function _default() {
        return [];
      }
    },
    selected_mount: {
      type: Object,
      "default": function _default() {
        return {};
      }
    },
    moveType: {
      type: String,
      "default": function _default() {
        return "";
      }
    },
    offline: {
      type: Boolean,
      "default": function _default() {
        return !0;
      }
    }
  },
  data: function data() {
    return {
      holderModelDom: 1,
      hdrModeDom: 1,
      radio: 1,
      value: 25,
      value2: 25,
      control_speed: 3,
      ptz_mode: 0,
      zoom: 1,
      pitch: 0,
      yaw: 0,
      camera_mode: 0,
      record: !1,
      dj_mode: 0,
      regList: [{
        val: "复位",
        num: 0
      }, {
        val: "30",
        num: -30
      }, {
        val: "60",
        num: -60
      }, {
        val: "90",
        num: -90
      }],
      drd: {
        dj_mode: [{
          id: 0,
          label: "关闭"
        }, {
          id: 1,
          label: "打开"
        }],
        ptz_mode: [{
          id: 0,
          label: "锁定"
        }, {
          id: 1,
          label: "跟随"
        }, {
          id: 2,
          label: "回中"
        }],
        camera_mode: [{
          id: 0,
          label: "录像"
        }, {
          id: 2,
          label: "拍照"
        }]
      },
      timer: null,
      time: null
    };
  },
  watch: {
    payload: {
      handler: function handler(n) {
        this.resolve_payload(n);
      },
      deep: !0
    }
  },
  beforeDestroy: function beforeDestroy() {},
  methods: {
    handle_change_dj_mode: function handle_change_dj_mode(n) {
      console.log(this.selected_mount, "selected_mount");
    },
    onChangezoom: function onChangezoom(n) {
      this.value2 < this.value ? this.handle_zoom(1) : this.value2 > this.value && this.handle_zoom(-1), this.value2 = n;
    },
    stopChange: function stopChange() {
      this.value = 25, this.value2 = 25;
      var r = n.zoom(this.zoom = 1);
      this.commit_directive(r);
    },
    resolve_payload: function resolve_payload(n) {
      try {
        var _e = new Uint8Array(n);
        if (165 === _e[0] && r(_e) === _e[_e.length - 1]) switch (_e[1]) {
          case 1:
            this.msg_key_status1(_e);
            break;
          case 248:
            this.gcs_button_ctrl(_e);
        }
      } catch (n) {}
    },
    gcs_button_ctrl: function gcs_button_ctrl(n) {
      var r = n[3],
        e = n[4];
      if (4 === r) this.gimbal_mode_ctrl(e);
    },
    msg_key_status1: function msg_key_status1(n) {
      this.gimbal_mode_ctrl(3 & n[7]);
    },
    gimbal_mode_ctrl: function gimbal_mode_ctrl(n) {
      this.ptz_mode = n;
    },
    handle_change_ptz_mode: function handle_change_ptz_mode(r) {
      this.holderModelDom = r;
      var e = n.gimbal_mode_ctrl(r);
      this.commit_directive(e);
    },
    handle_change_hdr_mode: function handle_change_hdr_mode(r) {
      this.hdrModeDom = r;
      var e = n.camera_mode_ctrl(r);
      this.commit_directive(e);
    },
    handle_zoom: function handle_zoom(r) {
      var e = n.zoom(this.zoom + r);
      this.commit_directive(e);
    },
    handle_change_pitch: function handle_change_pitch(r) {
      this.pitch = r;
      var e = n.change_pitch_angle(this.pitch);
      this.commit_directive(e);
    },
    handle_change_yaw: function handle_change_yaw() {
      var r = n.change_yaw_angle(this.yaw);
      this.commit_directive(r);
    },
    handle_change_camera_mode: function handle_change_camera_mode(r) {
      var e = n.camera_mode_ctrl(r);
      this.commit_directive(e);
    },
    handle_take_photo: function handle_take_photo() {
      var r = this.position,
        e = n.take_photo(r || {});
      this.commit_directive(e), this.$emit("take_photo", "MMC_Gimbal_Z40N");
    },
    handle_record: function handle_record() {
      this.record = !this.record;
      var r = n.record(this.record);
      this.commit_directive(r);
    },
    commit_directive: function commit_directive(n) {
      console.log(n), this.$emit("directive", n);
    },
    fangxiang: function fangxiang(r) {
      var _this = this;
      clearTimeout(this.time);
      var e = null;
      switch (this.flag = !0, this.flag && (this.time = setTimeout(function () {
        _this.fangxiang(r);
      }, 500)), r) {
        case "up":
          e = n.gimbal_pitch_ctrl(1, this.control_speed), this.commit_directive(e);
          break;
        case "left":
          e = n.gimbal_yaw_ctrl(1, this.control_speed), this.commit_directive(e);
          break;
        case "right":
          e = n.gimbal_yaw_ctrl(-1, this.control_speed), this.commit_directive(e);
          break;
        case "down":
          e = n.gimbal_pitch_ctrl(-1, this.control_speed), this.commit_directive(e);
      }
    },
    stopfxFn: function stopfxFn() {
      this.flag = !1, clearTimeout(this.time);
      var r = null;
      r = n.gimbal_pitch_ctrl(0, this.control_speed), this.commit_directive(r), r = n.gimbal_yaw_ctrl(0, this.control_speed), this.commit_directive(r);
    }
  }
};
var d = function d() {
    var n = this,
      r = n.$createElement,
      i = n._self._c || r;
    return i("div", {
      staticClass: "cpt-MMC_Gimbal_Z40N",
      style: n.containerStyle
    }, [i("div", {
      directives: [{
        name: "interact",
        rawName: "v-interact"
      }],
      staticClass: "hd"
    }, [n._m(0), n._v(" "), i("div", {
      staticClass: "close",
      on: {
        click: function click(r) {
          return n.$emit("close");
        }
      }
    }, [n._v("关闭")])]), n._v(" "), i("div", {
      staticClass: "bd"
    }, [i("div", {
      staticClass: "form-wrap"
    }, [i("div", {
      staticClass: "form-item"
    }, [i("div", {
      staticClass: "label-box"
    }, [n._v("控制速度:")]), n._v(" "), i("div", {
      staticClass: "input-box"
    }, [i("div", {
      staticClass: "speedC"
    }, n._l(new Array(5).fill(1), function (r, e) {
      return i("div", {
        key: e,
        staticClass: "speed",
        style: n.control_speed == e + 1 ? "background: #FFFFFF;color: #333333;" : "",
        on: {
          click: function click(r) {
            n.control_speed = e + 1;
          }
        }
      }, [n._v("\n              " + n._s(e + 1) + "\n            ")]);
    }), 0)])]), n._v(" "), i("div", {
      staticClass: "form-item"
    }, [i("div", {
      staticClass: "label-box"
    }, [n._v("云台模式:")]), n._v(" "), i("div", {
      staticClass: "input-box"
    }, [i("div", {
      staticClass: "mono"
    }, [i("div", {
      staticClass: "mono-long"
    }, [i("div", {
      staticClass: "mono-left mono_box",
      "class": {
        active: 0 == n.holderModelDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_ptz_mode(0);
        }
      }
    }), n._v(" "), i("div", {
      staticClass: "mono-middle mono_box",
      "class": {
        active: 1 == n.holderModelDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_ptz_mode(1);
        }
      }
    }), n._v(" "), i("div", {
      staticClass: "mono-right mono_box",
      "class": {
        active: 2 == n.holderModelDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_ptz_mode(2);
        }
      }
    })]), n._v(" "), n._m(1)])])]), n._v(" "), i("div", {
      staticClass: "form-item",
      staticStyle: {
        "margin-top": "10px"
      }
    }, [i("div", {
      staticClass: "label-box",
      staticStyle: {
        width: "68px",
        "text-align": "right"
      }
    }, [n._v("HDR:")]), n._v(" "), i("div", {
      staticClass: "input-box"
    }, [i("div", {
      staticClass: "mono"
    }, [i("div", {
      staticClass: "mono-long"
    }, [i("div", {
      staticClass: "mono-left mono_box",
      "class": {
        active: 0 == n.hdrModeDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_hdr_mode(0);
        }
      }
    }), n._v(" "), i("div", {
      staticClass: "mono-middle mono_box",
      "class": {
        active: 1 == n.hdrModeDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_hdr_mode(1);
        }
      }
    }), n._v(" "), i("div", {
      staticClass: "mono-right mono_box",
      "class": {
        active: 2 == n.hdrModeDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_hdr_mode(2);
        }
      }
    })]), n._v(" "), n._m(2)])])]), n._v(" "), i("div", {
      staticClass: "form-item"
    }, [i("div", {
      staticClass: "label-box"
    }, [n._v("视频指点:")]), n._v(" "), i("div", {
      staticClass: "input-box"
    }, [i("el-radio-group", {
      on: {
        change: n.handle_change_dj_mode
      },
      model: {
        value: n.dj_mode,
        callback: function callback(r) {
          n.dj_mode = r;
        },
        expression: "dj_mode"
      }
    }, n._l(n.drd.dj_mode, function (r) {
      return i("el-radio", {
        key: r.id,
        attrs: {
          size: "mini",
          label: r.id
        }
      }, [n._v(n._s(r.label))]);
    }), 1)], 1)]), n._v(" "), i("div", {
      staticClass: "form-item"
    }, [i("div", {
      staticClass: "label-box"
    }, [n._v("变       焦:")]), n._v(" "), i("div", {
      staticClass: "input-box"
    }, [i("div", {
      staticClass: "mr10",
      staticStyle: {
        cursor: "pointer"
      },
      on: {
        mousedown: function mousedown(r) {
          return n.handle_zoom(-1);
        },
        mouseup: n.stopChange,
        mouseout: n.stopChange
      }
    }, [i("span", {
      staticClass: "iconfont icon-shanchu3"
    })]), n._v(" "), i("el-slider", {
      staticStyle: {
        width: "10px"
      },
      attrs: {
        max: 50,
        min: 0,
        "show-tooltip": !1,
        disabled: ""
      },
      on: {
        change: n.stopChange,
        input: n.onChangezoom
      },
      model: {
        value: n.value,
        callback: function callback(r) {
          n.value = r;
        },
        expression: "value"
      }
    }), n._v(" "), i("div", {
      staticClass: "ml10",
      staticStyle: {
        cursor: "pointer"
      },
      on: {
        mousedown: function mousedown(r) {
          return n.handle_zoom(1);
        },
        mouseup: n.stopChange,
        mouseout: n.stopChange
      }
    }, [i("span", {
      staticClass: "iconfont icon-tianjia1"
    })])], 1)]), n._v(" "), i("div", {
      staticClass: "form-item"
    }, [i("div", {
      staticClass: "label-box"
    }, [n._v("俯       仰:")]), n._v(" "), i("div", {
      staticClass: "input-box"
    }, [i("div", {
      staticClass: "speedC"
    }, n._l(n.regList, function (r, e) {
      return i("div", {
        key: e,
        staticClass: "pitch",
        style: n.pitch == r.num ? "background: #FFFFFF;color: #333333;" : "",
        on: {
          click: function click(e) {
            return n.handle_change_pitch(r.num);
          }
        }
      }, [n._v("\n              " + n._s(r.val) + "\n            ")]);
    }), 0)])]), n._v(" "), i("div", {
      staticClass: "form-item"
    }, [i("div", {
      staticClass: "label-box"
    }, [n._v("相机模式")]), n._v(" "), i("div", {
      staticClass: "input-box"
    }, [i("el-radio-group", {
      on: {
        change: n.handle_change_camera_mode
      },
      model: {
        value: n.camera_mode,
        callback: function callback(r) {
          n.camera_mode = r;
        },
        expression: "camera_mode"
      }
    }, n._l(n.drd.camera_mode, function (r) {
      return i("el-radio", {
        key: r.id,
        attrs: {
          size: "mini",
          label: r.id
        }
      }, [n._v(n._s(r.label))]);
    }), 1)], 1)])]), n._v(" "), i("div", {
      staticClass: "rocker-wrap"
    }, [i("div", {
      staticClass: "item-group"
    }, [i("div", {
      staticClass: "item-box",
      on: {
        click: n.handle_take_photo
      }
    }, [i("el-tooltip", {
      staticClass: "item",
      attrs: {
        effect: "dark",
        content: "拍照",
        placement: "top"
      }
    }, [i("div", {
      staticClass: "icon-box"
    }, [i("img", {
      attrs: {
        src: e,
        alt: ""
      }
    })])])], 1), n._v(" "), i("div", {
      staticClass: "item-box",
      on: {
        click: n.handle_record
      }
    }, [i("el-tooltip", {
      staticClass: "item",
      attrs: {
        effect: "dark",
        content: "录像",
        placement: "top"
      }
    }, [i("div", {
      staticClass: "icon-box"
    }, [i("img", {
      attrs: {
        src: t,
        alt: ""
      }
    })])])], 1)]), n._v(" "), i("div", {
      ref: "rocker",
      staticClass: "rocker"
    }, [i("div", {
      staticClass: "shangUp",
      on: {
        mousedown: function mousedown(r) {
          return n.fangxiang("up");
        },
        mouseup: n.stopfxFn,
        mouseout: n.stopfxFn
      }
    }), n._v(" "), i("div", {
      staticClass: "xaiUp",
      on: {
        mousedown: function mousedown(r) {
          return n.fangxiang("down");
        },
        mouseup: n.stopfxFn,
        mouseout: n.stopfxFn
      }
    }), n._v(" "), i("div", {
      staticClass: "zuoUp",
      on: {
        mousedown: function mousedown(r) {
          return n.fangxiang("right");
        },
        mouseup: n.stopfxFn,
        mouseout: n.stopfxFn
      }
    }), n._v(" "), i("div", {
      staticClass: "youUp",
      on: {
        mousedown: function mousedown(r) {
          return n.fangxiang("left");
        },
        mouseup: n.stopfxFn,
        mouseout: n.stopfxFn
      }
    })])])])]);
  },
  l = [function () {
    var n = this,
      r = n.$createElement,
      e = n._self._c || r;
    return e("div", {
      staticClass: "left ml8"
    }, [e("img", {
      attrs: {
        src: i
      }
    }), n._v(" "), e("div", {
      staticClass: "title"
    }, [n._v("高清变焦相机")])]);
  }, function () {
    var n = this,
      r = n.$createElement,
      e = n._self._c || r;
    return e("div", {
      staticClass: "text"
    }, [e("div", {
      staticClass: "text-left"
    }, [n._v("锁定")]), n._v(" "), e("div", {
      staticClass: "text-right"
    }, [n._v("跟随")]), n._v(" "), e("div", {
      staticClass: "text-right"
    }, [n._v("回中")])]);
  }, function () {
    var n = this,
      r = n.$createElement,
      e = n._self._c || r;
    return e("div", {
      staticClass: "text"
    }, [e("div", {
      staticClass: "text-left"
    }, [n._v("关闭")]), n._v(" "), e("div", {
      staticClass: "text-right"
    }, [n._v("HDR")]), n._v(" "), e("div", {
      staticClass: "text-right"
    }, [n._v("HDR+")])]);
  }];
d._withStripped = !0;
var c = o({
  render: d,
  staticRenderFns: l
}, function (n) {
  n && n("data-v-a7ed371c_0", {
    source: '.cpt-MMC_Gimbal_Z40N[data-v-a7ed371c] {\n  position: absolute;\n  top: 100px;\n  right: 0px !important;\n  background: rgba(12, 34, 73, 0.7);\n  border-radius: 10px;\n  border: 1px solid rgba(26, 92, 246, 0.5);\n  backdrop-filter: blur(1px);\n  width: 470px;\n  height: 290px;\n  box-sizing: border-box;\n}\n.cpt-MMC_Gimbal_Z40N .hd[data-v-a7ed371c] {\n  height: 32px;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  background: rgba(16, 65, 215, 0.2);\n  box-shadow: inset 0 0 15px 0 rgba(0, 182, 255, 0.6);\n  border-radius: 10px 10px 0 0;\n}\n.cpt-MMC_Gimbal_Z40N .hd .left[data-v-a7ed371c] {\n  display: flex;\n  align-items: center;\n}\n.cpt-MMC_Gimbal_Z40N .hd .left .title[data-v-a7ed371c] {\n  font-size: 20px;\n  font-family: YouSheBiaoTiHei;\n  color: #14faff;\n  line-height: 26px;\n  text-shadow: 0px 1px 1px rgba(2, 32, 56, 0.2);\n  background: linear-gradient(135deg, #e3aa77 0%, #f5cda9 38%, #f9ecd3 58%, #fcdbb1 79%, #edb07a 100%);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n}\n.cpt-MMC_Gimbal_Z40N .hd .close[data-v-a7ed371c] {\n  font-size: 14px;\n  font-family: MicrosoftYaHei;\n  color: #d2dfff;\n  margin-right: 8px;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd[data-v-a7ed371c] {\n  padding: 10px 20px;\n  display: flex;\n  justify-content: space-between;\n  height: 230px;\n  overflow-y: auto;\n  overflow-x: hidden;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap[data-v-a7ed371c] {\n  flex-shrink: 0;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item[data-v-a7ed371c] {\n  display: flex;\n  align-items: center;\n  height: 40px;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .label-box[data-v-a7ed371c] {\n  margin-right: 14px;\n  font-size: 16px;\n  font-family: MicrosoftYaHei;\n  color: #ffffff;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box[data-v-a7ed371c] {\n  display: flex;\n  align-items: center;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono[data-v-a7ed371c] {\n  display: flex;\n  flex-direction: column;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono .mono-long[data-v-a7ed371c] {\n  display: flex;\n  justify-content: space-between;\n  width: 168px;\n  height: 17px;\n  background: url("../assets/images/mount_long.png") no-repeat;\n  background-size: 100%;\n  margin-bottom: 5px;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono .mono-long .mono_box[data-v-a7ed371c] {\n  width: 28px;\n  height: 13px;\n  border-radius: 3px;\n  margin-top: 2px;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono .mono-long .active[data-v-a7ed371c] {\n  background: url("../assets/images/mount/mount_control.png") no-repeat !important;\n  background-size: 100% 100%;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono .text[data-v-a7ed371c] {\n  font-size: 14px;\n  font-family: MicrosoftYaHei;\n  color: #ffffff;\n  display: flex;\n  justify-content: space-between;\n  font-size: 14px;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap[data-v-a7ed371c] {\n  flex: 1;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .item-group[data-v-a7ed371c] {\n  display: flex;\n  justify-content: space-evenly;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .item-group .item-box .icon-box[data-v-a7ed371c] {\n  width: 32px;\n  height: 32px;\n  background: #000000;\n  border-radius: 32px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .item-group .item-box .icon-box .iconfont[data-v-a7ed371c] {\n  font-size: 24px;\n  color: #dce9ff;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker[data-v-a7ed371c] {\n  margin: 10px auto 0;\n  width: 150px;\n  height: 150px;\n  position: relative;\n  margin: 0 auto;\n  background: center url("../assets/images/accident/caozuo.png") no-repeat;\n  background-size: 100% 100%;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker .shangUp[data-v-a7ed371c] {\n  position: absolute;\n  left: 37%;\n  top: 4px;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  border: 0px solid red;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker .xaiUp[data-v-a7ed371c] {\n  position: absolute;\n  left: 37%;\n  bottom: 4px;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  border: 0px solid red;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker .zuoUp[data-v-a7ed371c] {\n  position: absolute;\n  left: 4px;\n  top: 37%;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  border: 0px solid red;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker .youUp[data-v-a7ed371c] {\n  position: absolute;\n  right: 4px;\n  top: 37%;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  border: 0px solid red;\n  cursor: pointer;\n}\n[data-v-a7ed371c] .el-select {\n  width: 165px;\n  margin-right: 5px;\n}\n[data-v-a7ed371c] .el-select .el-input .el-input__inner {\n  background: #000000;\n  border: 1px solid #004fff;\n  color: #dce9ff;\n}\n[data-v-a7ed371c] .el-input {\n  width: 130px;\n  margin-right: 5px;\n}\n[data-v-a7ed371c] .el-input .el-input__inner {\n  background: #000000;\n  border: 1px solid #004fff;\n  color: #dce9ff;\n}\n[data-v-a7ed371c] .el-radio-group .el-radio .el-radio__input.is-checked .el-radio__inner {\n  border-color: #004fff;\n  background: #004fff;\n}\n[data-v-a7ed371c] .el-radio-group .el-radio .el-radio__label {\n  color: #cbd0eb;\n}\n[data-v-a7ed371c] .butto {\n  width: 35px;\n  height: 25px;\n  font-size: 12px;\n  line-height: 25px;\n  text-align: center;\n  background: #004fff;\n  color: #000;\n  border-radius: 5px;\n}\n[data-v-a7ed371c] .el-button {\n  width: 35px;\n  height: 25px;\n  text-align: center;\n  background: #2aefed;\n  color: #000;\n  border: none;\n}\n[data-v-a7ed371c] .el-slider__bar {\n  background: #fff;\n}\n.speedC[data-v-a7ed371c] {\n  display: flex;\n  width: 173px;\n  height: 24px;\n  background: rgba(13, 34, 79, 0.65);\n  border-radius: 12px;\n  border: 1px solid #427dff;\n}\n.speedC .speed[data-v-a7ed371c] {\n  width: 34px;\n  color: #ffffff;\n  border-radius: 12px;\n  text-align: center;\n  line-height: 24px;\n}\n.speedC .pitch[data-v-a7ed371c] {\n  font-size: 12px;\n  margin-left: 12px;\n  width: 34px;\n  height: 24px;\n  border-radius: 12px;\n  text-align: center;\n  line-height: 24px;\n  color: #fff;\n}\n.iconfont[data-v-a7ed371c] {\n  color: #004fff;\n}\n[data-v-a7ed371c] .el-slider__runway {\n  visibility: hidden;\n}\n\n/*# sourceMappingURL=index.vue.map */',
    map: {
      version: 3,
      sources: ["E:\\work\\standardization\\mmc-stl-module\\src\\components\\MMCFlightControlCenter\\components\\mount\\MMC_Gimbal_Z40N\\index.vue", "index.vue"],
      names: [],
      mappings: "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",
      file: "index.vue",
      sourcesContent: ['<template>\r\n  <div class="cpt-MMC_Gimbal_Z40N" :style="containerStyle">\r\n    <div v-interact class="hd">\r\n      <div class="left ml8">\r\n        <img src="../assets/images/mount/mount_head.png" />\r\n        <div class="title">高清变焦相机</div>\r\n      </div>\r\n      <div class="close" @click="$emit(\'close\')">关闭</div>\r\n    </div>\r\n    <div class="bd">\r\n      <div class="form-wrap">\r\n        <div class="form-item">\r\n          <div class="label-box">控制速度:</div>\r\n          <div class="input-box">\r\n            <div class="speedC">\r\n              <div\r\n                v-for="(item, index) in new Array(5).fill(1)"\r\n                :key="index"\r\n                class="speed"\r\n                :style="control_speed == index + 1 ? \'background: #FFFFFF;color: #333333;\' : \'\'"\r\n                @click="control_speed = index + 1"\r\n              >\r\n                {{ index + 1 }}\r\n              </div>\r\n            </div>\r\n            \x3c!-- <el-select\r\n              v-model="control_speed"\r\n              size="mini"\r\n              placeholder="请选择控制速度"\r\n            >\r\n              <el-option\r\n                v-for="(item, index) in new Array(5).fill(1)"\r\n                :key="index"\r\n                :label="index + 1"\r\n                :value="index + 1"\r\n              ></el-option>\r\n            </el-select>--\x3e\r\n          </div>\r\n        </div>\r\n        <div class="form-item">\r\n          <div class="label-box">云台模式:</div>\r\n          <div class="input-box">\r\n            <div class="mono">\r\n              <div class="mono-long">\r\n                <div\r\n                  class="mono-left mono_box"\r\n                  :class="{ active: holderModelDom == 0 }"\r\n                  @click="handle_change_ptz_mode(0)"\r\n                />\r\n                <div\r\n                  class="mono-middle mono_box"\r\n                  :class="{ active: holderModelDom == 1 }"\r\n                  @click="handle_change_ptz_mode(1)"\r\n                />\r\n                <div\r\n                  class="mono-right mono_box"\r\n                  :class="{ active: holderModelDom == 2 }"\r\n                  @click="handle_change_ptz_mode(2)"\r\n                />\r\n              </div>\r\n              <div class="text">\r\n                <div class="text-left">锁定</div>\r\n                <div class="text-right">跟随</div>\r\n                <div class="text-right">回中</div>\r\n              </div>\r\n            </div>\r\n            \x3c!-- <el-radio-group @change="handle_change_ptz_mode" v-model="ptz_mode">\r\n              <el-radio\r\n                size="mini"\r\n                v-for="item in drd.ptz_mode"\r\n                :key="item.id"\r\n                :label="item.id"\r\n                >{{ item.label }}\r\n              </el-radio>\r\n            </el-radio-group>--\x3e\r\n          </div>\r\n        </div>\r\n        <div class="form-item" style="margin-top: 10px">\r\n          <div class="label-box" style="width: 68px; text-align: right">HDR:</div>\r\n          <div class="input-box">\r\n            <div class="mono">\r\n              <div class="mono-long">\r\n                <div\r\n                  class="mono-left mono_box"\r\n                  :class="{ active: hdrModeDom == 0 }"\r\n                  @click="handle_change_hdr_mode(0)"\r\n                />\r\n                <div\r\n                  class="mono-middle mono_box"\r\n                  :class="{ active: hdrModeDom == 1 }"\r\n                  @click="handle_change_hdr_mode(1)"\r\n                />\r\n                <div\r\n                  class="mono-right mono_box"\r\n                  :class="{ active: hdrModeDom == 2 }"\r\n                  @click="handle_change_hdr_mode(2)"\r\n                />\r\n              </div>\r\n              <div class="text">\r\n                <div class="text-left">关闭</div>\r\n                <div class="text-right">HDR</div>\r\n                <div class="text-right">HDR+</div>\r\n              </div>\r\n            </div>\r\n            \x3c!-- <el-radio-group @change="handle_change_ptz_mode" v-model="ptz_mode">\r\n              <el-radio\r\n                size="mini"\r\n                v-for="item in drd.ptz_mode"\r\n                :key="item.id"\r\n                :label="item.id"\r\n                >{{ item.label }}\r\n              </el-radio>\r\n            </el-radio-group>--\x3e\r\n          </div>\r\n        </div>\r\n        <div class="form-item">\r\n          <div class="label-box">视频指点:</div>\r\n          <div class="input-box">\r\n            <el-radio-group v-model="dj_mode" @change="handle_change_dj_mode">\r\n              <el-radio v-for="item in drd.dj_mode" :key="item.id" size="mini" :label="item.id">{{\r\n                item.label\r\n              }}</el-radio>\r\n            </el-radio-group>\r\n          </div>\r\n        </div>\r\n        <div class="form-item">\r\n          <div class="label-box">变&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;焦:</div>\r\n          <div class="input-box">\r\n            <div\r\n              class="mr10"\r\n              style="cursor: pointer"\r\n              @mousedown="handle_zoom(-1)"\r\n              @mouseup="stopChange"\r\n              @mouseout="stopChange"\r\n            >\r\n              <span class="iconfont icon-shanchu3" />\r\n            </div>\r\n            \x3c!-- <el-button\r\n              @click="handle_zoom(-1)"\r\n              size="mini"\r\n              icon="el-icon-minus"\r\n              circle\r\n            ></el-button>--\x3e\r\n            <el-slider\r\n              v-model="value"\r\n              :max="50"\r\n              :min="0"\r\n              :show-tooltip="false"\r\n              style="width: 10px"\r\n              disabled\r\n              @change="stopChange"\r\n              @input="onChangezoom"\r\n            />\r\n            <div\r\n              class="ml10"\r\n              style="cursor: pointer"\r\n              @mousedown="handle_zoom(1)"\r\n              @mouseup="stopChange"\r\n              @mouseout="stopChange"\r\n            >\r\n              <span class="iconfont icon-tianjia1" />\r\n            </div>\r\n          </div>\r\n        </div>\r\n        <div class="form-item">\r\n          <div class="label-box">俯&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;仰:</div>\r\n          <div class="input-box">\r\n            <div class="speedC">\r\n              <div\r\n                v-for="(item, index) in regList"\r\n                :key="index"\r\n                class="pitch"\r\n                :style="pitch == item.num ? \'background: #FFFFFF;color: #333333;\' : \'\'"\r\n                @click="handle_change_pitch(item.num)"\r\n              >\r\n                {{ item.val }}\r\n              </div>\r\n            </div>\r\n            \x3c!-- <el-input\r\n              v-model.number="pitch"\r\n              size="mini"\r\n              placeholder="请输入俯仰"\r\n            />\r\n            <span class="iconfont icon-shanchu3" @click="pitch--"></span>\r\n            <span\r\n              class="iconfont icon-tianjia1 mr5 ml3"\r\n              @click="pitch++"\r\n            ></span>--\x3e\r\n\r\n            \x3c!-- <el-button\r\n              @click="pitch--"\r\n              size="mini"\r\n              icon="el-icon-minus"\r\n              circle\r\n            ></el-button>\r\n            <el-button\r\n              @click="pitch++"\r\n              size="mini"\r\n              icon="el-icon-plus"\r\n              circle\r\n            ></el-button>--\x3e\r\n\r\n            \x3c!-- <div class="butto" @click="handle_change_pitch" size="mini" type="primary"\r\n              >设置</div\r\n            >--\x3e\r\n          </div>\r\n        </div>\r\n        \x3c!-- <div class="form-item">\r\n          <div class="label-box">\r\n            航&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;向:\r\n          </div>\r\n          <div class="input-box">\r\n            <el-input\r\n              v-model.number="yaw"\r\n              size="mini"\r\n              placeholder="请输入航向"\r\n            />\r\n            <span class="iconfont icon-shanchu3" @click="yaw--"></span>\r\n            <span class="iconfont icon-tianjia1 mr5 ml3" @click="yaw++"></span>\r\n            <div class="butto" @click="handle_change_yaw" size="mini" type="primary"\r\n              >设置</div\r\n            >\r\n          </div>\r\n        </div>--\x3e\r\n        <div class="form-item">\r\n          <div class="label-box">相机模式</div>\r\n          <div class="input-box">\r\n            <el-radio-group v-model="camera_mode" @change="handle_change_camera_mode">\r\n              <el-radio\r\n                v-for="item in drd.camera_mode"\r\n                :key="item.id"\r\n                size="mini"\r\n                :label="item.id"\r\n                >{{ item.label }}</el-radio\r\n              >\r\n            </el-radio-group>\r\n          </div>\r\n        </div>\r\n      </div>\r\n      <div class="rocker-wrap">\r\n        <div class="item-group">\r\n          <div class="item-box" @click="handle_take_photo">\r\n            <el-tooltip class="item" effect="dark" content="拍照" placement="top">\r\n              <div class="icon-box">\r\n                \x3c!-- <span class="iconfont icon-paizhao1"></span> --\x3e\r\n                <img src="../assets/images/mount/photo.png" alt />\r\n              </div>\r\n            </el-tooltip>\r\n          </div>\r\n          <div class="item-box" @click="handle_record">\r\n            <el-tooltip class="item" effect="dark" content="录像" placement="top">\r\n              <div class="icon-box">\r\n                \x3c!-- <span class="iconfont icon-dandianshipin"></span> --\x3e\r\n                <img src="../assets/images/mount/record.png" alt />\r\n              </div>\r\n            </el-tooltip>\r\n          </div>\r\n        </div>\r\n        <div ref="rocker" class="rocker">\r\n          <div\r\n            class="shangUp"\r\n            @mousedown="fangxiang(\'up\')"\r\n            @mouseup="stopfxFn"\r\n            @mouseout="stopfxFn"\r\n          />\r\n          <div\r\n            class="xaiUp"\r\n            @mousedown="fangxiang(\'down\')"\r\n            @mouseup="stopfxFn"\r\n            @mouseout="stopfxFn"\r\n          />\r\n          <div\r\n            class="zuoUp"\r\n            @mousedown="fangxiang(\'right\')"\r\n            @mouseup="stopfxFn"\r\n            @mouseout="stopfxFn"\r\n          />\r\n          <div\r\n            class="youUp"\r\n            @mousedown="fangxiang(\'left\')"\r\n            @mouseup="stopfxFn"\r\n            @mouseout="stopfxFn"\r\n          />\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</template>\r\n\r\n<script>\r\nimport { cal_crc_table, MMC_Gimbal_Z40N } from \'../utils\';\r\nexport default {\r\n  props: {\r\n    containerStyle: {\r\n      type: Object,\r\n      default: () => ({})\r\n    },\r\n    position: {\r\n      type: Object,\r\n      default: () => ({})\r\n    },\r\n    device: {\r\n      type: Object,\r\n      default: () => ({})\r\n    },\r\n    payload: {\r\n      type: Array,\r\n      default: () => []\r\n    },\r\n    selected_mount: {\r\n      type: Object,\r\n      default: () => ({})\r\n    },\r\n    moveType: {\r\n      type: String,\r\n      default: () => \'\'\r\n    },\r\n    offline: {\r\n      type: Boolean,\r\n      default: () => true\r\n    }\r\n  },\r\n  data() {\r\n    return {\r\n      holderModelDom: 1,\r\n      hdrModeDom: 1,\r\n      radio: 1,\r\n      value: 25,\r\n      value2: 25,\r\n      control_speed: 3,\r\n      ptz_mode: 0,\r\n      zoom: 1,\r\n      pitch: 0,\r\n      yaw: 0,\r\n      camera_mode: 0,\r\n      record: false,\r\n      dj_mode: 0,\r\n      regList: [\r\n        {\r\n          val: \'复位\',\r\n          num: 0\r\n        },\r\n        {\r\n          val: \'30\',\r\n          num: -30\r\n        },\r\n        {\r\n          val: \'60\',\r\n          num: -60\r\n        },\r\n        {\r\n          val: \'90\',\r\n          num: -90\r\n        }\r\n      ],\r\n      drd: {\r\n        dj_mode: [\r\n          { id: 0, label: \'关闭\' },\r\n          { id: 1, label: \'打开\' }\r\n        ],\r\n        ptz_mode: [\r\n          { id: 0, label: \'锁定\' },\r\n          { id: 1, label: \'跟随\' },\r\n          { id: 2, label: \'回中\' }\r\n        ],\r\n        camera_mode: [\r\n          { id: 0, label: \'录像\' },\r\n          { id: 2, label: \'拍照\' }\r\n        ]\r\n      },\r\n      timer: null,\r\n      time: null\r\n    };\r\n  },\r\n  watch: {\r\n    payload: {\r\n      handler(value) {\r\n        this.resolve_payload(value);\r\n      },\r\n      deep: true\r\n    }\r\n  },\r\n  beforeDestroy() {\r\n    /* this.$store.commit("device/SET_MOVE_DATA", {\r\n      ...this.device,\r\n      mountStatus: 0,\r\n    }); */\r\n  },\r\n  methods: {\r\n    handle_change_dj_mode(id) {\r\n      console.log(this.selected_mount, \'selected_mount\');\r\n      /* this.$store.commit("device/SET_MOVE_DATA", {\r\n        ...this.device,\r\n        mountStatus: id,\r\n        mountId: this.selected_mount.mountId || this.selected_mount.mountType,\r\n        moveType: this.moveType,\r\n        name: this.selected_mount.name,\r\n      }); */\r\n    },\r\n    onChangezoom(e) {\r\n      if (this.value2 < this.value) {\r\n        this.handle_zoom(1);\r\n      } else if (this.value2 > this.value) {\r\n        this.handle_zoom(-1);\r\n      }\r\n      this.value2 = e;\r\n    },\r\n    stopChange() {\r\n      this.value = 25;\r\n      this.value2 = 25;\r\n      // this.handle_zoom(this)\r\n      const buffer = MMC_Gimbal_Z40N.zoom((this.zoom = 1));\r\n      this.commit_directive(buffer);\r\n    },\r\n    resolve_payload(buff) {\r\n      try {\r\n        const dataArray = new Uint8Array(buff);\r\n        // console.log(dataArray,\'dataArray\');\r\n        if (dataArray[0] === 0xa5 && cal_crc_table(dataArray) === dataArray[dataArray.length - 1]) {\r\n          switch (dataArray[1]) {\r\n            case 0x01:\r\n              this.msg_key_status1(dataArray);\r\n              break;\r\n            case 0xf8:\r\n              this.gcs_button_ctrl(dataArray);\r\n              break;\r\n          }\r\n        }\r\n      } catch (error) {}\r\n    },\r\n    gcs_button_ctrl(data) {\r\n      const button = data[3];\r\n      const status = data[4];\r\n\r\n      switch (button) {\r\n        case 4:\r\n          this.gimbal_mode_ctrl(status);\r\n          break;\r\n        default:\r\n          break;\r\n      }\r\n    },\r\n    msg_key_status1(data) {\r\n      this.gimbal_mode_ctrl(data[7] & 0x3);\r\n    },\r\n    gimbal_mode_ctrl(mode) {\r\n      this.ptz_mode = mode;\r\n    },\r\n\r\n    handle_change_ptz_mode(value) {\r\n      this.holderModelDom = value;\r\n      const buffer = MMC_Gimbal_Z40N.gimbal_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_hdr_mode(value) {\r\n      this.hdrModeDom = value;\r\n      const buffer = MMC_Gimbal_Z40N.camera_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_zoom(value) {\r\n      const buffer = MMC_Gimbal_Z40N.zoom(this.zoom + value);\r\n      this.commit_directive(buffer);\r\n      // buffer = MMC_Gimbal_Z40N.zoom((this.zoom = 1));\r\n      // this.commit_directive(buffer);\r\n    },\r\n    handle_change_pitch(num) {\r\n      this.pitch = num;\r\n      const buffer = MMC_Gimbal_Z40N.change_pitch_angle(this.pitch);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_yaw() {\r\n      const buffer = MMC_Gimbal_Z40N.change_yaw_angle(this.yaw);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_camera_mode(value) {\r\n      const buffer = MMC_Gimbal_Z40N.camera_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_take_photo() {\r\n      const { position } = this;\r\n      const buffer = MMC_Gimbal_Z40N.take_photo(position || {});\r\n      this.commit_directive(buffer);\r\n      this.$emit(\'take_photo\', \'MMC_Gimbal_Z40N\');\r\n    },\r\n    handle_record() {\r\n      this.record = !this.record;\r\n      const buffer = MMC_Gimbal_Z40N.record(this.record);\r\n      this.commit_directive(buffer);\r\n    },\r\n    commit_directive(buffer) {\r\n      console.log(buffer);\r\n      this.$emit(\'directive\', buffer);\r\n    },\r\n    fangxiang(type) {\r\n      clearTimeout(this.time);\r\n      let buffer = null;\r\n      this.flag = true;\r\n      if (this.flag) {\r\n        this.time = setTimeout(() => {\r\n          this.fangxiang(type);\r\n        }, 500);\r\n      }\r\n      switch (type) {\r\n        case \'up\':\r\n          buffer = MMC_Gimbal_Z40N.gimbal_pitch_ctrl(1, this.control_speed);\r\n          this.commit_directive(buffer);\r\n          break;\r\n        case \'left\':\r\n          buffer = MMC_Gimbal_Z40N.gimbal_yaw_ctrl(1, this.control_speed);\r\n          this.commit_directive(buffer);\r\n          break;\r\n        case \'right\':\r\n          buffer = MMC_Gimbal_Z40N.gimbal_yaw_ctrl(-1, this.control_speed);\r\n          this.commit_directive(buffer);\r\n          break;\r\n        case \'down\':\r\n          buffer = MMC_Gimbal_Z40N.gimbal_pitch_ctrl(-1, this.control_speed);\r\n          this.commit_directive(buffer);\r\n      }\r\n      // this.timer = setTimeout(() => {\r\n      //   clearTimeout(this.timer)\r\n      //   buffer = MMC_Gimbal_Z40N.gimbal_pitch_ctrl(0, this.control_speed);\r\n      //   this.commit_directive(buffer);\r\n      //   buffer = MMC_Gimbal_Z40N.gimbal_yaw_ctrl(0, this.control_speed);\r\n      //   this.commit_directive(buffer);\r\n      // }, 500);\r\n    },\r\n    stopfxFn() {\r\n      this.flag = false;\r\n      clearTimeout(this.time);\r\n      let buffer = null;\r\n      buffer = MMC_Gimbal_Z40N.gimbal_pitch_ctrl(0, this.control_speed);\r\n      this.commit_directive(buffer);\r\n      buffer = MMC_Gimbal_Z40N.gimbal_yaw_ctrl(0, this.control_speed);\r\n      this.commit_directive(buffer);\r\n    }\r\n  }\r\n};\r\n<\/script>\r\n\r\n<style lang="scss" scoped>\r\n.cpt-MMC_Gimbal_Z40N {\r\n  position: absolute;\r\n  top: 100px;\r\n  right: 0px !important;\r\n  background: rgba(12, 34, 73, 0.7);\r\n  border-radius: 10px;\r\n  border: 1px solid rgba(26, 92, 246, 0.5);\r\n  backdrop-filter: blur(1px);\r\n  width: 470px;\r\n  height: 290px;\r\n  box-sizing: border-box;\r\n\r\n  // padding: 10px 20px;\r\n  .hd {\r\n    height: 32px;\r\n    display: flex;\r\n    justify-content: space-between;\r\n    align-items: center;\r\n    background: rgba(16, 65, 215, 0.2);\r\n    box-shadow: inset 0 0 15px 0 rgba(0, 182, 255, 0.6);\r\n    border-radius: 10px 10px 0 0;\r\n\r\n    .left {\r\n      display: flex;\r\n      align-items: center;\r\n\r\n      .title {\r\n        font-size: 20px;\r\n        font-family: YouSheBiaoTiHei;\r\n        color: #14faff;\r\n        line-height: 26px;\r\n        text-shadow: 0px 1px 1px rgba(2, 32, 56, 0.2);\r\n        background: linear-gradient(\r\n          135deg,\r\n          #e3aa77 0%,\r\n          #f5cda9 38%,\r\n          #f9ecd3 58%,\r\n          #fcdbb1 79%,\r\n          #edb07a 100%\r\n        );\r\n        -webkit-background-clip: text;\r\n        -webkit-text-fill-color: transparent;\r\n      }\r\n    }\r\n\r\n    .close {\r\n      font-size: 14px;\r\n      font-family: MicrosoftYaHei;\r\n      color: #d2dfff;\r\n      margin-right: 8px;\r\n      cursor: pointer;\r\n    }\r\n  }\r\n\r\n  .bd {\r\n    padding: 10px 20px;\r\n    display: flex;\r\n    justify-content: space-between;\r\n    height: 230px;\r\n\r\n    overflow-y: auto;\r\n    overflow-x: hidden;\r\n\r\n    .form-wrap {\r\n      flex-shrink: 0;\r\n\r\n      .form-item {\r\n        display: flex;\r\n        align-items: center;\r\n        height: 40px;\r\n\r\n        .label-box {\r\n          margin-right: 14px;\r\n          font-size: 16px;\r\n          font-family: MicrosoftYaHei;\r\n          color: #ffffff;\r\n        }\r\n\r\n        .input-box {\r\n          display: flex;\r\n          align-items: center;\r\n\r\n          .mono {\r\n            display: flex;\r\n            flex-direction: column;\r\n\r\n            .mono-long {\r\n              display: flex;\r\n              justify-content: space-between;\r\n              width: 168px;\r\n              height: 17px;\r\n              background: url(\'../assets/images/mount_long.png\') no-repeat;\r\n              background-size: 100%;\r\n              margin-bottom: 5px;\r\n\r\n              .mono_box {\r\n                width: 28px;\r\n                height: 13px;\r\n                border-radius: 3px;\r\n                margin-top: 2px;\r\n                cursor: pointer;\r\n              }\r\n\r\n              .active {\r\n                background: url(\'../assets/images/mount/mount_control.png\') no-repeat !important;\r\n                background-size: 100% 100%;\r\n              }\r\n            }\r\n\r\n            .text {\r\n              font-size: 14px;\r\n              font-family: MicrosoftYaHei;\r\n              color: #ffffff;\r\n              display: flex;\r\n              justify-content: space-between;\r\n              font-size: 14px;\r\n            }\r\n          }\r\n        }\r\n      }\r\n    }\r\n\r\n    .rocker-wrap {\r\n      flex: 1;\r\n\r\n      .item-group {\r\n        display: flex;\r\n        justify-content: space-evenly;\r\n\r\n        .item-box {\r\n          .icon-box {\r\n            width: 32px;\r\n            height: 32px;\r\n            background: #000000;\r\n            border-radius: 32px;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n\r\n            .iconfont {\r\n              font-size: 24px;\r\n              color: #dce9ff;\r\n              cursor: pointer;\r\n            }\r\n          }\r\n        }\r\n      }\r\n\r\n      .rocker {\r\n        margin: 10px auto 0;\r\n        width: 150px;\r\n        height: 150px;\r\n        position: relative;\r\n        margin: 0 auto;\r\n        background: center url(\'../assets/images/accident/caozuo.png\') no-repeat;\r\n        background-size: 100% 100%;\r\n\r\n        .shangUp {\r\n          position: absolute;\r\n          left: 37%;\r\n          top: 4px;\r\n          border-radius: 50%;\r\n          width: 40px;\r\n          height: 40px;\r\n          border: 0px solid red;\r\n          cursor: pointer;\r\n        }\r\n\r\n        .xaiUp {\r\n          position: absolute;\r\n          left: 37%;\r\n          bottom: 4px;\r\n          border-radius: 50%;\r\n          width: 40px;\r\n          height: 40px;\r\n          border: 0px solid red;\r\n          cursor: pointer;\r\n        }\r\n\r\n        .zuoUp {\r\n          position: absolute;\r\n          left: 4px;\r\n          top: 37%;\r\n          border-radius: 50%;\r\n          width: 40px;\r\n          height: 40px;\r\n          border: 0px solid red;\r\n          cursor: pointer;\r\n        }\r\n\r\n        .youUp {\r\n          position: absolute;\r\n          right: 4px;\r\n          top: 37%;\r\n          border-radius: 50%;\r\n          width: 40px;\r\n          height: 40px;\r\n          border: 0px solid red;\r\n          cursor: pointer;\r\n        }\r\n      }\r\n    }\r\n  }\r\n}\r\n\r\n::v-deep {\r\n  .el-select {\r\n    width: 165px;\r\n    margin-right: 5px;\r\n\r\n    .el-input {\r\n      .el-input__inner {\r\n        background: #000000;\r\n        border: 1px solid #004fff;\r\n        color: #dce9ff;\r\n      }\r\n    }\r\n  }\r\n\r\n  .el-input {\r\n    width: 130px;\r\n    margin-right: 5px;\r\n\r\n    .el-input__inner {\r\n      background: #000000;\r\n      border: 1px solid #004fff;\r\n      color: #dce9ff;\r\n    }\r\n  }\r\n\r\n  .el-radio-group {\r\n    .el-radio {\r\n      .el-radio__input {\r\n        &.is-checked {\r\n          .el-radio__inner {\r\n            border-color: #004fff;\r\n            background: #004fff;\r\n          }\r\n        }\r\n      }\r\n\r\n      .el-radio__label {\r\n        color: #cbd0eb;\r\n      }\r\n    }\r\n  }\r\n\r\n  .butto {\r\n    width: 35px;\r\n    height: 25px;\r\n    font-size: 12px;\r\n    line-height: 25px;\r\n    text-align: center;\r\n    background: #004fff;\r\n    color: #000;\r\n    border-radius: 5px;\r\n  }\r\n\r\n  .el-button {\r\n    width: 35px;\r\n    height: 25px;\r\n    text-align: center;\r\n    background: #2aefed;\r\n    color: #000;\r\n    border: none;\r\n  }\r\n}\r\n\r\n::v-deep .el-slider__bar {\r\n  background: #fff;\r\n}\r\n\r\n.speedC {\r\n  display: flex;\r\n  width: 173px;\r\n  height: 24px;\r\n  background: rgba(13, 34, 79, 0.65);\r\n  border-radius: 12px;\r\n  border: 1px solid #427dff;\r\n\r\n  .speed {\r\n    width: 34px;\r\n    // background: #FFFFFF;\r\n    color: #ffffff;\r\n    border-radius: 12px;\r\n    text-align: center;\r\n    line-height: 24px;\r\n  }\r\n\r\n  .pitch {\r\n    font-size: 12px;\r\n    margin-left: 12px;\r\n    width: 34px;\r\n    height: 24px;\r\n    border-radius: 12px;\r\n    text-align: center;\r\n    line-height: 24px;\r\n    color: #fff;\r\n  }\r\n}\r\n\r\n.iconfont {\r\n  color: #004fff;\r\n}\r\n\r\n// 变焦功能\r\n::v-deep .el-slider__runway {\r\n  visibility: hidden;\r\n}\r\n</style>\r\n', '.cpt-MMC_Gimbal_Z40N {\n  position: absolute;\n  top: 100px;\n  right: 0px !important;\n  background: rgba(12, 34, 73, 0.7);\n  border-radius: 10px;\n  border: 1px solid rgba(26, 92, 246, 0.5);\n  backdrop-filter: blur(1px);\n  width: 470px;\n  height: 290px;\n  box-sizing: border-box;\n}\n.cpt-MMC_Gimbal_Z40N .hd {\n  height: 32px;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  background: rgba(16, 65, 215, 0.2);\n  box-shadow: inset 0 0 15px 0 rgba(0, 182, 255, 0.6);\n  border-radius: 10px 10px 0 0;\n}\n.cpt-MMC_Gimbal_Z40N .hd .left {\n  display: flex;\n  align-items: center;\n}\n.cpt-MMC_Gimbal_Z40N .hd .left .title {\n  font-size: 20px;\n  font-family: YouSheBiaoTiHei;\n  color: #14faff;\n  line-height: 26px;\n  text-shadow: 0px 1px 1px rgba(2, 32, 56, 0.2);\n  background: linear-gradient(135deg, #e3aa77 0%, #f5cda9 38%, #f9ecd3 58%, #fcdbb1 79%, #edb07a 100%);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n}\n.cpt-MMC_Gimbal_Z40N .hd .close {\n  font-size: 14px;\n  font-family: MicrosoftYaHei;\n  color: #d2dfff;\n  margin-right: 8px;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd {\n  padding: 10px 20px;\n  display: flex;\n  justify-content: space-between;\n  height: 230px;\n  overflow-y: auto;\n  overflow-x: hidden;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap {\n  flex-shrink: 0;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item {\n  display: flex;\n  align-items: center;\n  height: 40px;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .label-box {\n  margin-right: 14px;\n  font-size: 16px;\n  font-family: MicrosoftYaHei;\n  color: #ffffff;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box {\n  display: flex;\n  align-items: center;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono {\n  display: flex;\n  flex-direction: column;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono .mono-long {\n  display: flex;\n  justify-content: space-between;\n  width: 168px;\n  height: 17px;\n  background: url("../assets/images/mount_long.png") no-repeat;\n  background-size: 100%;\n  margin-bottom: 5px;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono .mono-long .mono_box {\n  width: 28px;\n  height: 13px;\n  border-radius: 3px;\n  margin-top: 2px;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono .mono-long .active {\n  background: url("../assets/images/mount/mount_control.png") no-repeat !important;\n  background-size: 100% 100%;\n}\n.cpt-MMC_Gimbal_Z40N .bd .form-wrap .form-item .input-box .mono .text {\n  font-size: 14px;\n  font-family: MicrosoftYaHei;\n  color: #ffffff;\n  display: flex;\n  justify-content: space-between;\n  font-size: 14px;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap {\n  flex: 1;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .item-group {\n  display: flex;\n  justify-content: space-evenly;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .item-group .item-box .icon-box {\n  width: 32px;\n  height: 32px;\n  background: #000000;\n  border-radius: 32px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .item-group .item-box .icon-box .iconfont {\n  font-size: 24px;\n  color: #dce9ff;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker {\n  margin: 10px auto 0;\n  width: 150px;\n  height: 150px;\n  position: relative;\n  margin: 0 auto;\n  background: center url("../assets/images/accident/caozuo.png") no-repeat;\n  background-size: 100% 100%;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker .shangUp {\n  position: absolute;\n  left: 37%;\n  top: 4px;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  border: 0px solid red;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker .xaiUp {\n  position: absolute;\n  left: 37%;\n  bottom: 4px;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  border: 0px solid red;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker .zuoUp {\n  position: absolute;\n  left: 4px;\n  top: 37%;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  border: 0px solid red;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z40N .bd .rocker-wrap .rocker .youUp {\n  position: absolute;\n  right: 4px;\n  top: 37%;\n  border-radius: 50%;\n  width: 40px;\n  height: 40px;\n  border: 0px solid red;\n  cursor: pointer;\n}\n\n::v-deep .el-select {\n  width: 165px;\n  margin-right: 5px;\n}\n::v-deep .el-select .el-input .el-input__inner {\n  background: #000000;\n  border: 1px solid #004fff;\n  color: #dce9ff;\n}\n::v-deep .el-input {\n  width: 130px;\n  margin-right: 5px;\n}\n::v-deep .el-input .el-input__inner {\n  background: #000000;\n  border: 1px solid #004fff;\n  color: #dce9ff;\n}\n::v-deep .el-radio-group .el-radio .el-radio__input.is-checked .el-radio__inner {\n  border-color: #004fff;\n  background: #004fff;\n}\n::v-deep .el-radio-group .el-radio .el-radio__label {\n  color: #cbd0eb;\n}\n::v-deep .butto {\n  width: 35px;\n  height: 25px;\n  font-size: 12px;\n  line-height: 25px;\n  text-align: center;\n  background: #004fff;\n  color: #000;\n  border-radius: 5px;\n}\n::v-deep .el-button {\n  width: 35px;\n  height: 25px;\n  text-align: center;\n  background: #2aefed;\n  color: #000;\n  border: none;\n}\n\n::v-deep .el-slider__bar {\n  background: #fff;\n}\n\n.speedC {\n  display: flex;\n  width: 173px;\n  height: 24px;\n  background: rgba(13, 34, 79, 0.65);\n  border-radius: 12px;\n  border: 1px solid #427dff;\n}\n.speedC .speed {\n  width: 34px;\n  color: #ffffff;\n  border-radius: 12px;\n  text-align: center;\n  line-height: 24px;\n}\n.speedC .pitch {\n  font-size: 12px;\n  margin-left: 12px;\n  width: 34px;\n  height: 24px;\n  border-radius: 12px;\n  text-align: center;\n  line-height: 24px;\n  color: #fff;\n}\n\n.iconfont {\n  color: #004fff;\n}\n\n::v-deep .el-slider__runway {\n  visibility: hidden;\n}\n\n/*# sourceMappingURL=index.vue.map */']
    },
    media: void 0
  });
}, s, "data-v-a7ed371c", false, undefined, !1, a);
export { c as default };
