import { d as n, c as r } from "./utils-4kGecFw2.js";
import { _ as e, a as i } from "./record-WJfBn7Fn.js";
import { _ as t } 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 l = {
  props: {
    containerStyle: {
      type: Object,
      "default": function _default() {
        return {};
      }
    },
    position: {
      type: Object,
      "default": function _default() {
        return {};
      }
    },
    payload: {
      type: Array,
      "default": function _default() {
        return [];
      }
    }
  },
  data: function data() {
    return {
      holderModelDomV2: 1,
      holderModelDom: 0,
      radio: 1,
      value: 25,
      value2: 25,
      control_speed: 3,
      ptz_mode: 0,
      HDR_mode: 0,
      zoom: 1,
      pitch: 0,
      yaw: 0,
      camera_mode: 0,
      fog_mode: 0,
      ani_mode: 0,
      osd_mode: 0,
      delay_mode: 0,
      record: !1,
      regList: [{
        val: "复位",
        num: 0
      }, {
        val: "30",
        num: -30
      }, {
        val: "60",
        num: -60
      }, {
        val: "90",
        num: -90
      }],
      drd: {
        ptz_mode: [{
          id: 0,
          label: "锁定"
        }, {
          id: 1,
          label: "跟随"
        }, {
          id: 2,
          label: "回中"
        }],
        camera_mode: [{
          id: 0,
          label: "正常"
        }, {
          id: 1,
          label: "夜间"
        }],
        HDR_mode: [{
          id: 0,
          label: "关闭"
        }, {
          id: 1,
          label: "HDR"
        }, {
          id: 2,
          label: "HDR+"
        }],
        fog_mode: [{
          id: 1,
          label: "关闭"
        }, {
          id: 0,
          label: "打开"
        }],
        ani_mode: [{
          id: 0,
          label: "关闭"
        }, {
          id: 1,
          label: "打开"
        }],
        osd_mode: [{
          id: 0,
          label: "关闭"
        }, {
          id: 1,
          label: "打开"
        }],
        delay_mode: [{
          id: 0,
          label: "关闭"
        }, {
          id: 1,
          label: "打开"
        }]
      },
      timer: null
    };
  },
  watch: {
    payload: {
      handler: function handler(n) {
        this.resolve_payload(n);
      },
      deep: !0
    }
  },
  mounted: function mounted() {
    var _this = this;
    this.$nextTick(function () {
      _this.init_rocker();
    });
  },
  methods: {
    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) {
      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);
      }
    },
    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;
    },
    temperature_correct_get_current_value: function temperature_correct_get_current_value() {
      var n = new Array(165, 13, 5, 101, 116, 245);
      this.commit_directive(n);
    },
    handle_change_ptz_mode: function handle_change_ptz_mode(r) {
      this.holderModelDomV2 = r;
      var e = n.gimbal_mode_ctrl(r);
      this.commit_directive(e);
    },
    handle_change_HDR_mode: function handle_change_HDR_mode(r) {
      this.holderModelDom = r;
      var e = n.gimbal_HDR_mode_ctrl(r);
      this.commit_directive(e);
    },
    handle_change_ani_mode: function handle_change_ani_mode(r) {
      var e = n.gimbal_ani_mode_ctrl(r);
      this.commit_directive(e);
    },
    handle_change_osd_mode: function handle_change_osd_mode(r) {
      var e = n.gimbal_osd_mode_ctrl(r);
      this.commit_directive(e);
    },
    handle_change_delay_mode: function handle_change_delay_mode(r) {
      var e = n.gimbal_delay_mode_ctrl(r);
      this.commit_directive(e);
    },
    handle_zoom: function handle_zoom(r) {
      console.log(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_change_fog_mode: function handle_change_fog_mode(r) {
      var e = n.fog_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_Z20");
    },
    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) {
      this.$emit("directive", n), console.log(n);
    },
    stopfxFn: function stopfxFn() {
      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);
    },
    fangxiang: function fangxiang(r) {
      var e = null;
      switch (r) {
        case "up":
          console.log(this.control_speed), e = n.gimbal_pitch_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 "left":
          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);
      }
    },
    init_rocker: function init_rocker() {
      var _this2 = this;
      var r = null;
      joystick({
        onstart: function onstart(e) {
          switch (e) {
            case "up":
              console.log(_this2.control_speed), r = n.gimbal_pitch_ctrl(1, _this2.control_speed), _this2.commit_directive(r);
              break;
            case "right":
              r = n.gimbal_yaw_ctrl(-1, _this2.control_speed), _this2.commit_directive(r);
              break;
            case "left":
              r = n.gimbal_yaw_ctrl(1, _this2.control_speed), _this2.commit_directive(r);
              break;
            case "down":
              r = n.gimbal_pitch_ctrl(-1, _this2.control_speed), _this2.commit_directive(r);
          }
        },
        onend: function onend() {
          r = n.gimbal_pitch_ctrl(0, _this2.control_speed), _this2.commit_directive(r), r = n.gimbal_yaw_ctrl(0, _this2.control_speed), _this2.commit_directive(r);
        }
      });
    }
  }
};
var d = function d() {
    var n = this,
      r = n.$createElement,
      t = n._self._c || r;
    return t("div", {
      staticClass: "cpt-MMC_Gimbal_Z20",
      style: n.containerStyle
    }, [t("div", {
      directives: [{
        name: "interact",
        rawName: "v-interact"
      }],
      staticClass: "hd"
    }, [n._m(0), n._v(" "), t("div", {
      staticClass: "close",
      on: {
        click: function click(r) {
          return n.$emit("close");
        }
      }
    }, [n._v("关闭")])]), n._v(" "), t("div", {
      staticClass: "bd"
    }, [t("div", {
      staticClass: "form-wrap"
    }, [t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("控制速度")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("div", {
      staticClass: "speedC"
    }, n._l(new Array(5).fill(1), function (r, e) {
      return t("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(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("云台模式")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("div", {
      staticClass: "mono"
    }, [t("div", {
      staticClass: "mono-long"
    }, [t("div", {
      staticClass: "mono-left mono_box",
      "class": {
        active: 0 == n.holderModelDomV2
      },
      on: {
        click: function click(r) {
          return n.handle_change_ptz_mode(0);
        }
      }
    }), n._v(" "), t("div", {
      staticClass: "mono-middle mono_box",
      "class": {
        active: 1 == n.holderModelDomV2
      },
      on: {
        click: function click(r) {
          return n.handle_change_ptz_mode(1);
        }
      }
    }), n._v(" "), t("div", {
      staticClass: "mono-right mono_box",
      "class": {
        active: 2 == n.holderModelDomV2
      },
      on: {
        click: function click(r) {
          return n.handle_change_ptz_mode(2);
        }
      }
    })]), n._v(" "), n._m(1)])])]), n._v(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("HDR")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("div", {
      staticClass: "mono"
    }, [t("div", {
      staticClass: "mono-long"
    }, [t("div", {
      staticClass: "mono-left mono_box",
      "class": {
        active: 0 == n.holderModelDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_HDR_mode(0);
        }
      }
    }), n._v(" "), t("div", {
      staticClass: "mono-middle mono_box",
      "class": {
        active: 1 == n.holderModelDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_HDR_mode(1);
        }
      }
    }), n._v(" "), t("div", {
      staticClass: "mono-right mono_box",
      "class": {
        active: 2 == n.holderModelDom
      },
      on: {
        click: function click(r) {
          return n.handle_change_HDR_mode(2);
        }
      }
    })]), n._v(" "), n._m(2)])])]), n._v(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("相机模式")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("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 t("el-radio", {
        key: r.id,
        attrs: {
          size: "mini",
          label: r.id
        }
      }, [n._v(n._s(r.label))]);
    }), 1)], 1)]), n._v(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("透雾")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("el-radio-group", {
      on: {
        change: n.handle_change_fog_mode
      },
      model: {
        value: n.fog_mode,
        callback: function callback(r) {
          n.fog_mode = r;
        },
        expression: "fog_mode"
      }
    }, n._l(n.drd.fog_mode, function (r) {
      return t("el-radio", {
        key: r.id,
        attrs: {
          size: "mini",
          label: r.id
        }
      }, [n._v(n._s(r.label))]);
    }), 1)], 1)]), n._v(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("变       焦")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("div", {
      staticClass: "mr10",
      staticStyle: {
        cursor: "pointer"
      },
      on: {
        mousedown: function mousedown(r) {
          return n.handle_zoom(-1);
        },
        mouseup: n.stopChange,
        mouseout: n.stopChange
      }
    }, [t("span", {
      staticClass: "iconfont icon-shanchu3"
    })]), n._v(" "), t("el-slider", {
      staticStyle: {
        width: "10px"
      },
      attrs: {
        max: 50,
        min: 0,
        "show-tooltip": !1
      },
      on: {
        change: n.stopChange,
        input: n.onChangezoom
      },
      model: {
        value: n.value,
        callback: function callback(r) {
          n.value = r;
        },
        expression: "value"
      }
    }), n._v(" "), t("div", {
      staticClass: "ml10",
      staticStyle: {
        cursor: "pointer"
      },
      on: {
        mousedown: function mousedown(r) {
          return n.handle_zoom(1);
        },
        mouseup: n.stopChange,
        mouseout: n.stopChange
      }
    }, [t("span", {
      staticClass: "iconfont icon-tianjia1"
    })])], 1)]), n._v(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("俯       仰")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("div", {
      staticClass: "speedC"
    }, n._l(n.regList, function (r, e) {
      return t("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(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("防抖")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("el-radio-group", {
      on: {
        change: n.handle_change_ani_mode
      },
      model: {
        value: n.ani_mode,
        callback: function callback(r) {
          n.ani_mode = r;
        },
        expression: "ani_mode"
      }
    }, n._l(n.drd.ani_mode, function (r) {
      return t("el-radio", {
        key: r.id,
        attrs: {
          size: "mini",
          label: r.id
        }
      }, [n._v(n._s(r.label))]);
    }), 1)], 1)]), n._v(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("OSD")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("el-radio-group", {
      on: {
        change: n.handle_change_osd_mode
      },
      model: {
        value: n.osd_mode,
        callback: function callback(r) {
          n.osd_mode = r;
        },
        expression: "osd_mode"
      }
    }, n._l(n.drd.osd_mode, function (r) {
      return t("el-radio", {
        key: r.id,
        attrs: {
          size: "mini",
          label: r.id
        }
      }, [n._v(n._s(r.label))]);
    }), 1)], 1)]), n._v(" "), t("div", {
      staticClass: "form-item"
    }, [t("div", {
      staticClass: "label-box"
    }, [n._v("低延")]), n._v(" "), t("div", {
      staticClass: "input-box"
    }, [t("el-radio-group", {
      on: {
        change: n.handle_change_delay_mode
      },
      model: {
        value: n.delay_mode,
        callback: function callback(r) {
          n.delay_mode = r;
        },
        expression: "delay_mode"
      }
    }, n._l(n.drd.delay_mode, function (r) {
      return t("el-radio", {
        key: r.id,
        attrs: {
          size: "mini",
          label: r.id
        }
      }, [n._v(n._s(r.label))]);
    }), 1)], 1)]), n._v(" "), t("div", {
      staticClass: "form-item"
    }, [t("input", {
      staticClass: "btn btn-default",
      attrs: {
        type: "button",
        value: "PID设置"
      },
      on: {
        click: function click(r) {
          return n.temperature_correct_get_current_value();
        }
      }
    })])]), n._v(" "), t("div", {
      staticClass: "rocker-wrap"
    }, [t("div", {
      staticClass: "item-group"
    }, [t("div", {
      staticClass: "item-box",
      on: {
        click: n.handle_take_photo
      }
    }, [t("el-tooltip", {
      staticClass: "item",
      attrs: {
        effect: "dark",
        content: "拍照",
        placement: "top"
      }
    }, [t("div", {
      staticClass: "icon-box"
    }, [t("img", {
      attrs: {
        src: e,
        alt: ""
      }
    })])])], 1), n._v(" "), t("div", {
      staticClass: "item-box",
      on: {
        click: n.handle_record
      }
    }, [t("el-tooltip", {
      staticClass: "item",
      attrs: {
        effect: "dark",
        content: "录像",
        placement: "top"
      }
    }, [t("div", {
      staticClass: "icon-box"
    }, [t("img", {
      attrs: {
        src: i,
        alt: ""
      }
    })])])], 1)]), n._v(" "), t("div", {
      ref: "rocker",
      staticClass: "rocker"
    }, [t("div", {
      staticClass: "shangUp",
      on: {
        mousedown: function mousedown(r) {
          return n.fangxiang("up");
        },
        mouseup: n.stopfxFn,
        mouseout: n.stopfxFn
      }
    }), n._v(" "), t("div", {
      staticClass: "xaiUp",
      on: {
        mousedown: function mousedown(r) {
          return n.fangxiang("down");
        },
        mouseup: n.stopfxFn,
        mouseout: n.stopfxFn
      }
    }), n._v(" "), t("div", {
      staticClass: "zuoUp",
      on: {
        mousedown: function mousedown(r) {
          return n.fangxiang("left");
        },
        mouseup: n.stopfxFn,
        mouseout: n.stopfxFn
      }
    }), n._v(" "), t("div", {
      staticClass: "youUp",
      on: {
        mousedown: function mousedown(r) {
          return n.fangxiang("right");
        },
        mouseup: n.stopfxFn,
        mouseout: n.stopfxFn
      }
    })])])])]);
  },
  s = [function () {
    var n = this,
      r = n.$createElement,
      e = n._self._c || r;
    return e("div", {
      staticClass: "left ml8"
    }, [e("img", {
      attrs: {
        src: t
      }
    }), 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("跟随")]), n._v(" "), e("div", {
      staticClass: "text-right"
    }, [n._v("回中")])]);
  }];
d._withStripped = !0;
var c = o({
  render: d,
  staticRenderFns: s
}, function (n) {
  n && n("data-v-728247cd_0", {
    source: '.cpt-MMC_Gimbal_Z20[data-v-728247cd] {\n  position: absolute;\n  top: -1px;\n  right: 0;\n  background: rgba(0, 23, 79, 0.7);\n  box-shadow: 0 2px 4px 0 rgba(1, 162, 255, 0.35), inset 0 0 40px 0 rgba(0, 184, 255, 0.5);\n  border-radius: 10px;\n  width: 470px;\n  height: 290px;\n  box-sizing: border-box;\n}\n.cpt-MMC_Gimbal_Z20 .hd[data-v-728247cd] {\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_Z20 .hd .left[data-v-728247cd] {\n  display: flex;\n  align-items: center;\n}\n.cpt-MMC_Gimbal_Z20 .hd .left .title[data-v-728247cd] {\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_Z20 .hd .close[data-v-728247cd] {\n  font-size: 14px;\n  font-family: MicrosoftYaHei;\n  color: #d2dfff;\n  margin-right: 8px;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z20 .bd[data-v-728247cd] {\n  padding: 10px 20px;\n  display: flex;\n  justify-content: space-between;\n  overflow-y: auto;\n  height: 230px;\n  overflow-x: hidden;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap[data-v-728247cd] {\n  flex-shrink: 0;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item[data-v-728247cd] {\n  display: flex;\n  align-items: center;\n  height: 40px;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .label-box[data-v-728247cd] {\n  color: #cbd0eb;\n  width: 75px;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .btn-default[data-v-728247cd] {\n  padding: 0 10px !important;\n  background: #004fff;\n  border-color: #004fff;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .input-box[data-v-728247cd] {\n  display: flex;\n  align-items: center;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .input-box .mono[data-v-728247cd] {\n  display: flex;\n  flex-direction: column;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .input-box .mono .mono-long[data-v-728247cd] {\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_Z20 .bd .form-wrap .form-item .input-box .mono .mono-long .mono_box[data-v-728247cd] {\n  width: 28px;\n  height: 13px;\n  border-radius: 3px;\n  margin-top: 2px;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .input-box .mono .mono-long .active[data-v-728247cd] {\n  background: url("../assets/images/mount/mount_control.png") no-repeat !important;\n  background-size: 100% 100%;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .input-box .mono .text[data-v-728247cd] {\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_Z20 .bd .rocker-wrap[data-v-728247cd] {\n  flex: 1;\n}\n.cpt-MMC_Gimbal_Z20 .bd .rocker-wrap .item-group[data-v-728247cd] {\n  display: flex;\n  justify-content: space-evenly;\n}\n.cpt-MMC_Gimbal_Z20 .bd .rocker-wrap .item-group .item-box .icon-box[data-v-728247cd] {\n  width: 32px;\n  height: 32px;\n  background: #004fff;\n  border-radius: 32px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.cpt-MMC_Gimbal_Z20 .bd .rocker-wrap .item-group .item-box .icon-box .iconfont[data-v-728247cd] {\n  font-size: 24px;\n  color: #dce9ff;\n  cursor: pointer;\n}\n.cpt-MMC_Gimbal_Z20 .bd .rocker-wrap .rocker[data-v-728247cd] {\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_Z20 .bd .rocker-wrap .rocker .shangUp[data-v-728247cd] {\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_Z20 .bd .rocker-wrap .rocker .xaiUp[data-v-728247cd] {\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_Z20 .bd .rocker-wrap .rocker .zuoUp[data-v-728247cd] {\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_Z20 .bd .rocker-wrap .rocker .youUp[data-v-728247cd] {\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-728247cd] .el-select {\n  width: 165px;\n  margin-right: 5px;\n}\n[data-v-728247cd] .el-select .el-input .el-input__inner {\n  background: #000000;\n  border: 1px solid #004fff;\n  color: #dce9ff;\n}\n[data-v-728247cd] .el-input {\n  width: 165px;\n  margin-right: 5px;\n}\n[data-v-728247cd] .el-input .el-input__inner {\n  background: #000000;\n  border: 1px solid #004fff;\n  color: #dce9ff;\n}\n[data-v-728247cd] .el-radio-group .el-radio .el-radio__input.is-checked .el-radio__inner {\n  border-color: #004fff;\n  background: #004fff;\n}\n[data-v-728247cd] .el-radio-group .el-radio .el-radio__label {\n  color: #cbd0eb;\n}\n[data-v-728247cd] .el-button {\n  background: #004fff;\n  color: #000;\n  border: none;\n}\n[data-v-728247cd] .el-slider__bar {\n  background: #fff;\n}\n.speedC[data-v-728247cd] {\n  width: 203px;\n  height: 24px;\n  display: flex;\n  background: rgba(13, 34, 79, 0.65);\n  border: 1px solid #004fff;\n  border-radius: 12px;\n}\n.speedC .speed[data-v-728247cd] {\n  width: 41px;\n  color: #ffffff;\n  border-radius: 12px;\n  text-align: center;\n  line-height: 24px;\n}\n.speedC .pitch[data-v-728247cd] {\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-728247cd] {\n  color: #004fff;\n}\n[data-v-728247cd] .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_Z20\\index.vue", "index.vue"],
      names: [],
      mappings: "AAwlBA;EACA,kBAAA;EACA,SAAA;EACA,QAAA;EACA,gCAAA;EACA,wFAAA;EACA,mBAAA;EACA,YAAA;EACA,aAAA;EACA,sBAAA;ACvlBA;AD0lBA;EACA,YAAA;EACA,aAAA;EACA,8BAAA;EACA,mBAAA;EACA,kCAAA;EACA,mDAAA;EACA,4BAAA;ACxlBA;AD0lBA;EACA,aAAA;EACA,mBAAA;ACxlBA;AD0lBA;EACA,eAAA;EACA,4BAAA;EACA,cAAA;EACA,iBAAA;EACA,6CAAA;EACA,oGAAA;EAQA,6BAAA;EACA,oCAAA;AC/lBA;ADmmBA;EACA,eAAA;EACA,2BAAA;EACA,cAAA;EACA,iBAAA;EACA,eAAA;ACjmBA;ADqmBA;EACA,kBAAA;EACA,aAAA;EACA,8BAAA;EACA,gBAAA;EACA,aAAA;EACA,kBAAA;ACnmBA;ADomBA;EACA,cAAA;AClmBA;ADomBA;EACA,aAAA;EACA,mBAAA;EACA,YAAA;AClmBA;ADomBA;EACA,cAAA;EACA,WAAA;AClmBA;ADqmBA;EACA,0BAAA;EACA,mBAAA;EACA,qBAAA;ACnmBA;ADsmBA;EACA,aAAA;EACA,mBAAA;ACpmBA;ADsmBA;EACA,aAAA;EACA,sBAAA;ACpmBA;ADsmBA;EACA,aAAA;EACA,8BAAA;EACA,YAAA;EACA,YAAA;EACA,4DAAA;EACA,qBAAA;EACA,kBAAA;ACpmBA;ADsmBA;EACA,WAAA;EACA,YAAA;EACA,kBAAA;EACA,eAAA;EACA,eAAA;ACpmBA;ADumBA;EACA,gFAAA;EACA,0BAAA;ACrmBA;ADymBA;EACA,eAAA;EACA,2BAAA;EACA,cAAA;EACA,aAAA;EACA,8BAAA;EACA,eAAA;ACvmBA;AD8mBA;EACA,OAAA;AC5mBA;AD8mBA;EACA,aAAA;EACA,6BAAA;AC5mBA;AD+mBA;EACA,WAAA;EACA,YAAA;EACA,mBAAA;EACA,mBAAA;EACA,aAAA;EACA,mBAAA;EACA,uBAAA;AC7mBA;AD+mBA;EACA,eAAA;EACA,cAAA;EACA,eAAA;AC7mBA;ADmnBA;EACA,mBAAA;EACA,YAAA;EACA,aAAA;EACA,kBAAA;EACA,cAAA;EACA,wEAAA;EACA,0BAAA;ACjnBA;ADmnBA;EACA,kBAAA;EACA,SAAA;EACA,QAAA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,qBAAA;EACA,eAAA;ACjnBA;ADonBA;EACA,kBAAA;EACA,SAAA;EACA,WAAA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,qBAAA;EACA,eAAA;AClnBA;ADqnBA;EACA,kBAAA;EACA,SAAA;EACA,QAAA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,qBAAA;EACA,eAAA;ACnnBA;ADsnBA;EACA,kBAAA;EACA,UAAA;EACA,QAAA;EACA,kBAAA;EACA,WAAA;EACA,YAAA;EACA,qBAAA;EACA,eAAA;ACpnBA;AD4nBA;EACA,YAAA;EACA,iBAAA;ACznBA;AD4nBA;EACA,mBAAA;EACA,yBAAA;EACA,cAAA;AC1nBA;AD+nBA;EACA,YAAA;EACA,iBAAA;AC7nBA;AD+nBA;EACA,mBAAA;EACA,yBAAA;EACA,cAAA;AC7nBA;ADqoBA;EACA,qBAAA;EACA,mBAAA;ACnoBA;ADwoBA;EACA,cAAA;ACtoBA;AD2oBA;EACA,mBAAA;EACA,WAAA;EACA,YAAA;ACzoBA;AD6oBA;EACA,gBAAA;AC1oBA;AD6oBA;EACA,YAAA;EACA,YAAA;EACA,aAAA;EACA,kCAAA;EACA,yBAAA;EACA,mBAAA;AC1oBA;AD4oBA;EACA,WAAA;EAEA,cAAA;EACA,mBAAA;EACA,kBAAA;EACA,iBAAA;AC3oBA;AD8oBA;EACA,eAAA;EACA,iBAAA;EACA,WAAA;EACA,YAAA;EACA,mBAAA;EACA,kBAAA;EACA,iBAAA;EACA,WAAA;AC5oBA;ADgpBA;EACA,cAAA;AC7oBA;ADipBA;EACA,kBAAA;AC9oBA;;AAEA,oCAAoC",
      file: "index.vue",
      sourcesContent: ['<template>\r\n  <div class="cpt-MMC_Gimbal_Z20" :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: holderModelDomV2 == 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: holderModelDomV2 == 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: holderModelDomV2 == 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 }}</el-radio\r\n              >\r\n            </el-radio-group> --\x3e\r\n          </div>\r\n        </div>\r\n        \x3c!--  --\x3e\r\n        <div class="form-item">\r\n          <div class="label-box">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: holderModelDom == 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: holderModelDom == 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: holderModelDom == 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">跟随</div>\r\n                <div class="text-right">回中</div>\r\n              </div>\r\n            </div>\r\n            \x3c!-- <el-radio-group @change="handle_change_HDR_mode" v-model="HDR_mode">\r\n              <el-radio\r\n                size="mini"\r\n                v-for="item in drd.HDR_mode"\r\n                :key="item.id"\r\n                :label="item.id"\r\n                >{{ item.label }}</el-radio\r\n              >\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="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        \x3c!--  --\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="fog_mode" @change="handle_change_fog_mode">\r\n              <el-radio v-for="item in drd.fog_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              @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            \x3c!-- <el-button\r\n              @click="handle_zoom(1)"\r\n              size="mini"\r\n              icon="el-icon-plus"\r\n              circle\r\n            ></el-button> --\x3e\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          </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            <el-button @click="handle_change_yaw" size="mini" type="primary"\r\n              >设置</el-button\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="ani_mode" @change="handle_change_ani_mode">\r\n              <el-radio v-for="item in drd.ani_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">OSD</div>\r\n          <div class="input-box">\r\n            <el-radio-group v-model="osd_mode" @change="handle_change_osd_mode">\r\n              <el-radio v-for="item in drd.osd_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">低延</div>\r\n          <div class="input-box">\r\n            <el-radio-group v-model="delay_mode" @change="handle_change_delay_mode">\r\n              <el-radio\r\n                v-for="item in drd.delay_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 class="form-item">\r\n          <input\r\n            class="btn btn-default"\r\n            type="button"\r\n            value="PID设置"\r\n            @click="temperature_correct_get_current_value()"\r\n          />\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                <img src="../assets/images/mount/record.png" alt="" />\r\n                \x3c!-- <span class="iconfont icon-dandianshipin"></span> --\x3e\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(\'left\')"\r\n            @mouseup="stopfxFn"\r\n            @mouseout="stopfxFn"\r\n          />\r\n          <div\r\n            class="youUp"\r\n            @mousedown="fangxiang(\'right\')"\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_Z20 } 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    payload: {\r\n      type: Array,\r\n      default: () => []\r\n    }\r\n  },\r\n  data() {\r\n    return {\r\n      holderModelDomV2: 1,\r\n      holderModelDom: 0,\r\n      radio: 1,\r\n      value: 25,\r\n      value2: 25,\r\n      control_speed: 3,\r\n      ptz_mode: 0,\r\n      HDR_mode: 0,\r\n      zoom: 1,\r\n      pitch: 0,\r\n      yaw: 0,\r\n      camera_mode: 0,\r\n      fog_mode: 0,\r\n      ani_mode: 0,\r\n      osd_mode: 0,\r\n      delay_mode: 0,\r\n      record: false,\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        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: 1, label: \'夜间\' }\r\n        ],\r\n        HDR_mode: [\r\n          { id: 0, label: \'关闭\' },\r\n          { id: 1, label: \'HDR\' },\r\n          { id: 2, label: \'HDR+\' }\r\n        ],\r\n        fog_mode: [\r\n          { id: 1, label: \'关闭\' },\r\n          { id: 0, label: \'打开\' }\r\n        ],\r\n        ani_mode: [\r\n          { id: 0, label: \'关闭\' },\r\n          { id: 1, label: \'打开\' }\r\n        ],\r\n        osd_mode: [\r\n          { id: 0, label: \'关闭\' },\r\n          { id: 1, label: \'打开\' }\r\n        ],\r\n        delay_mode: [\r\n          { id: 0, label: \'关闭\' },\r\n          { id: 1, label: \'打开\' }\r\n        ]\r\n      },\r\n      timer: 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  mounted() {\r\n    this.$nextTick(() => {\r\n      this.init_rocker();\r\n    });\r\n  },\r\n  methods: {\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_Z20.zoom((this.zoom = 1));\r\n      this.commit_directive(buffer);\r\n    },\r\n    resolve_payload(buff) {\r\n      const dataArray = new Uint8Array(buff);\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    },\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    temperature_correct_get_current_value() {\r\n      var buffer = new Array(0xa5, 0x0d, 0x05, 0x65, 0x74, 0xf5);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_ptz_mode(value) {\r\n      this.holderModelDomV2 = value;\r\n      const buffer = MMC_Gimbal_Z20.gimbal_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_HDR_mode(value) {\r\n      this.holderModelDom = value;\r\n      const buffer = MMC_Gimbal_Z20.gimbal_HDR_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_ani_mode(value) {\r\n      const buffer = MMC_Gimbal_Z20.gimbal_ani_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_osd_mode(value) {\r\n      const buffer = MMC_Gimbal_Z20.gimbal_osd_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_delay_mode(value) {\r\n      const buffer = MMC_Gimbal_Z20.gimbal_delay_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_zoom(value) {\r\n      console.log(value);\r\n      const buffer = MMC_Gimbal_Z20.zoom(this.zoom + value);\r\n      this.commit_directive(buffer);\r\n      // buffer = MMC_Gimbal_Z20.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_Z20.change_pitch_angle(this.pitch);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_yaw() {\r\n      const buffer = MMC_Gimbal_Z20.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_Z20.camera_mode_ctrl(value);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_change_fog_mode(mode) {\r\n      const buffer = MMC_Gimbal_Z20.fog_mode_ctrl(mode);\r\n      this.commit_directive(buffer);\r\n    },\r\n    handle_take_photo() {\r\n      const { position } = this;\r\n      const buffer = MMC_Gimbal_Z20.take_photo(position || {});\r\n      this.commit_directive(buffer);\r\n      this.$emit(\'take_photo\', \'MMC_Gimbal_Z20\');\r\n    },\r\n    handle_record() {\r\n      this.record = !this.record;\r\n      const buffer = MMC_Gimbal_Z20.record(this.record);\r\n      this.commit_directive(buffer);\r\n    },\r\n    commit_directive(buffer) {\r\n      this.$emit(\'directive\', buffer);\r\n      console.log(buffer);\r\n    },\r\n    stopfxFn() {\r\n      let buffer = null;\r\n      buffer = MMC_Gimbal_Z20.gimbal_pitch_ctrl(0, this.control_speed);\r\n      this.commit_directive(buffer);\r\n      buffer = MMC_Gimbal_Z20.gimbal_yaw_ctrl(0, this.control_speed);\r\n      this.commit_directive(buffer);\r\n    },\r\n    fangxiang(type) {\r\n      let buffer = null;\r\n      switch (type) {\r\n        case \'up\':\r\n          console.log(this.control_speed);\r\n          buffer = MMC_Gimbal_Z20.gimbal_pitch_ctrl(1, this.control_speed);\r\n          this.commit_directive(buffer);\r\n          break;\r\n        case \'right\':\r\n          buffer = MMC_Gimbal_Z20.gimbal_yaw_ctrl(1, this.control_speed);\r\n          this.commit_directive(buffer);\r\n          break;\r\n        case \'left\':\r\n          buffer = MMC_Gimbal_Z20.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_Z20.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_Z20.gimbal_pitch_ctrl(0, this.control_speed);\r\n      //   this.commit_directive(buffer);\r\n      //   buffer = MMC_Gimbal_Z20.gimbal_yaw_ctrl(0, this.control_speed);\r\n      //   this.commit_directive(buffer);\r\n      // }, 500);\r\n    },\r\n    init_rocker() {\r\n      let buffer = null;\r\n      joystick({\r\n        // zone: this.$refs["rocker"],\r\n        // mode: "static",\r\n        // position: { left: "50%", top: "50%" },\r\n        // color: "#9bacbe",\r\n        onstart: (type) => {\r\n          switch (type) {\r\n            case \'up\':\r\n              console.log(this.control_speed);\r\n              buffer = MMC_Gimbal_Z20.gimbal_pitch_ctrl(1, this.control_speed);\r\n              this.commit_directive(buffer);\r\n              break;\r\n            case \'right\':\r\n              buffer = MMC_Gimbal_Z20.gimbal_yaw_ctrl(-1, this.control_speed);\r\n              this.commit_directive(buffer);\r\n              break;\r\n            case \'left\':\r\n              buffer = MMC_Gimbal_Z20.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_Z20.gimbal_pitch_ctrl(-1, this.control_speed);\r\n              this.commit_directive(buffer);\r\n          }\r\n        },\r\n        onend: () => {\r\n          buffer = MMC_Gimbal_Z20.gimbal_pitch_ctrl(0, this.control_speed);\r\n          this.commit_directive(buffer);\r\n          buffer = MMC_Gimbal_Z20.gimbal_yaw_ctrl(0, this.control_speed);\r\n          this.commit_directive(buffer);\r\n        }\r\n      });\r\n    }\r\n  }\r\n};\r\n<\/script>\r\n\r\n<style lang="scss" scoped>\r\n.cpt-MMC_Gimbal_Z20 {\r\n  position: absolute;\r\n  top: -1px;\r\n  right: 0;\r\n  background: rgba(0, 23, 79, 0.7);\r\n  box-shadow: 0 2px 4px 0 rgba(1, 162, 255, 0.35), inset 0 0 40px 0 rgba(0, 184, 255, 0.5);\r\n  border-radius: 10px;\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    overflow-y: auto;\r\n    height: 230px;\r\n    overflow-x: hidden;\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          color: #cbd0eb;\r\n          width: 75px;\r\n        }\r\n\r\n        .btn-default {\r\n          padding: 0 10px !important;\r\n          background: #004fff;\r\n          border-color: #004fff;\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: #004fff;\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: 165px;\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  .el-button {\r\n    background: #004fff;\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  width: 203px;\r\n  height: 24px;\r\n  display: flex;\r\n  background: rgba(13, 34, 79, 0.65);\r\n  border: 1px solid #004fff;\r\n  border-radius: 12px;\r\n\r\n  .speed {\r\n    width: 41px;\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_Z20 {\n  position: absolute;\n  top: -1px;\n  right: 0;\n  background: rgba(0, 23, 79, 0.7);\n  box-shadow: 0 2px 4px 0 rgba(1, 162, 255, 0.35), inset 0 0 40px 0 rgba(0, 184, 255, 0.5);\n  border-radius: 10px;\n  width: 470px;\n  height: 290px;\n  box-sizing: border-box;\n}\n.cpt-MMC_Gimbal_Z20 .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_Z20 .hd .left {\n  display: flex;\n  align-items: center;\n}\n.cpt-MMC_Gimbal_Z20 .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_Z20 .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_Z20 .bd {\n  padding: 10px 20px;\n  display: flex;\n  justify-content: space-between;\n  overflow-y: auto;\n  height: 230px;\n  overflow-x: hidden;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap {\n  flex-shrink: 0;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item {\n  display: flex;\n  align-items: center;\n  height: 40px;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .label-box {\n  color: #cbd0eb;\n  width: 75px;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .btn-default {\n  padding: 0 10px !important;\n  background: #004fff;\n  border-color: #004fff;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .input-box {\n  display: flex;\n  align-items: center;\n}\n.cpt-MMC_Gimbal_Z20 .bd .form-wrap .form-item .input-box .mono {\n  display: flex;\n  flex-direction: column;\n}\n.cpt-MMC_Gimbal_Z20 .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_Z20 .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_Z20 .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_Z20 .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_Z20 .bd .rocker-wrap {\n  flex: 1;\n}\n.cpt-MMC_Gimbal_Z20 .bd .rocker-wrap .item-group {\n  display: flex;\n  justify-content: space-evenly;\n}\n.cpt-MMC_Gimbal_Z20 .bd .rocker-wrap .item-group .item-box .icon-box {\n  width: 32px;\n  height: 32px;\n  background: #004fff;\n  border-radius: 32px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n}\n.cpt-MMC_Gimbal_Z20 .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_Z20 .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_Z20 .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_Z20 .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_Z20 .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_Z20 .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: 165px;\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 .el-button {\n  background: #004fff;\n  color: #000;\n  border: none;\n}\n\n::v-deep .el-slider__bar {\n  background: #fff;\n}\n\n.speedC {\n  width: 203px;\n  height: 24px;\n  display: flex;\n  background: rgba(13, 34, 79, 0.65);\n  border: 1px solid #004fff;\n  border-radius: 12px;\n}\n.speedC .speed {\n  width: 41px;\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
  });
}, l, "data-v-728247cd", false, undefined, !1, a);
export { c as default };
