menu.vue 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444
  1. <template>
  2. <div
  3. class="pinBottom-container"
  4. :class="{
  5. mobile: isMobile,
  6. }"
  7. >
  8. <div class="pinBottom center">
  9. <div id="view-controllers"></div>
  10. </div>
  11. <div class="pinBottom left">
  12. <div>
  13. <div class="viewContainer">
  14. <!-- <div
  15. id="previous"
  16. class="previous desktop-only ui-icon"
  17. style="display: none"
  18. >
  19. <a>
  20. <img
  21. rel="tooltip"
  22. title=""
  23. :src="require('@/assets/images/play.png')"
  24. data-original-title="播放"
  25. />
  26. </a>
  27. </div> -->
  28. <div
  29. id="play"
  30. class="ui-icon"
  31. rel="tooltip"
  32. data-original-title="播放"
  33. >
  34. <!-- 鼠标移入的显示 -->
  35. <!-- <div class="hoverTit">自动导览</div> -->
  36. <a>
  37. <img
  38. :src="require('@/assets/images/play.png')"
  39. />
  40. </a>
  41. </div>
  42. <div
  43. id="pause"
  44. class="ui-icon"
  45. style="display: none"
  46. >
  47. <!-- 鼠标移入的显示 -->
  48. <!-- <div class="hoverTit">自动导览</div> -->
  49. <a>
  50. <img
  51. rel="tooltip"
  52. title=""
  53. :src="require('@/assets/images/pause.png')"
  54. data-original-title="暂停"
  55. :style="{opacity: '1',}"
  56. />
  57. </a>
  58. </div>
  59. <!-- <div
  60. id="next"
  61. class="next desktop-only ui-icon wide"
  62. style="display: none"
  63. >
  64. <a>
  65. <i
  66. rel="tooltip"
  67. title=""
  68. class="icon icon-dpad-right"
  69. data-original-title="下一个"
  70. ></i>
  71. </a>
  72. </div> -->
  73. <div id="gui-modes-map" class="ui-icon double active">
  74. <div
  75. data-original-title="导览"
  76. @click="isGuide = !isGuide"
  77. id="pullTab"
  78. rel="tooltip"
  79. title="场景导览"
  80. >
  81. <!-- 鼠标移入的显示 -->
  82. <!-- <div class="hoverTit">导览列表</div> -->
  83. <img
  84. title=""
  85. class="icon icon-inside"
  86. src="@/assets/images/auto.png"
  87. :style="{
  88. opacity: isGuide ? '1' : '',
  89. }"
  90. />
  91. </div>
  92. <div
  93. v-show="!isMobile"
  94. data-original-title="全景漫游"
  95. id="gui-modes-inside"
  96. rel="tooltip"
  97. >
  98. <!-- 鼠标移入的显示 -->
  99. <!-- <div class="hoverTit">自由漫游</div> -->
  100. <img
  101. class="icon icon-inside"
  102. :src="require('@/assets/images/inside.png')"
  103. />
  104. </div>
  105. <div
  106. v-show="!isMobile"
  107. title="迷你模型"
  108. data-original-title="迷你模型"
  109. id="gui-modes-dollhouse"
  110. rel="tooltip"
  111. >
  112. <!-- 鼠标移入的显示 -->
  113. <!-- <div class="hoverTit">三维视觉</div> -->
  114. <img
  115. class="icon icon-inside"
  116. :src="require('@/assets/images/dollhouse.png')"
  117. />
  118. </div>
  119. <div
  120. v-show="!isMobile"
  121. data-original-title="俯视图"
  122. id="gui-modes-floorplan"
  123. rel="tooltip"
  124. title="顶部俯视"
  125. >
  126. <!-- 鼠标移入的显示 -->
  127. <!-- <div class="hoverTit">平面视觉</div> -->
  128. <img
  129. class="icon icon-inside"
  130. :src="require('@/assets/images/floor.png')"
  131. />
  132. </div>
  133. <!-- <div
  134. data-original-title="VR"
  135. id="vr"
  136. rel="tooltip"
  137. title=""
  138. style="display: none"
  139. >
  140. <img
  141. class="icon icon-inside"
  142. :src="require('@/assets/images/VR.png')"
  143. />
  144. </div> -->
  145. <!-- <div
  146. data-original-title="热点列表"
  147. id="hotList"
  148. rel="tooltip"
  149. title=""
  150. >
  151. <img
  152. class="icon icon-inside"
  153. :src="require('@/assets/images/hotlist.png')"
  154. />
  155. </div> -->
  156. <!-- <div
  157. data-original-title="消除外壳"
  158. id="gui-remove-face"
  159. rel="tooltip"
  160. title=""
  161. style="display: none; float: left"
  162. >
  163. <img
  164. class="icon icon-inside"
  165. :src="require('@/assets/images/face.jpg')"
  166. />
  167. </div> -->
  168. </div>
  169. </div>
  170. </div>
  171. </div>
  172. <div class="pinBottom right hideTarget">
  173. <div class="rightViewContainer clearfix">
  174. <!-- 音乐 -->
  175. <div
  176. id="volume"
  177. class="ui-icon wide"
  178. title="音乐"
  179. >
  180. <a>
  181. <img
  182. id="openMusic"
  183. style="display: block"
  184. @click="switchBGM(true)"
  185. src="../../assets/images/music-muted.png"
  186. alt=""
  187. title="打开音乐"
  188. />
  189. <img
  190. id="closeMusic"
  191. style="display: none"
  192. @click="switchBGM(false)"
  193. :style="{
  194. opacity: '1',
  195. }"
  196. src="../../assets/images/music.png"
  197. alt=""
  198. title="关闭音乐"
  199. />
  200. </a>
  201. </div>
  202. <!-- 全屏 -->
  203. <div
  204. id="gui-fullscreen"
  205. class="ui-icon wide"
  206. data-placement="top"
  207. rel="tooltip"
  208. title="全屏"
  209. >
  210. <a>
  211. <img title="全屏" :src="require('@/assets/images/full.png')" />
  212. </a>
  213. </div>
  214. <!-- 取消全屏 -->
  215. <div
  216. id="gui-fullscreen-exit"
  217. class="ui-icon wide"
  218. data-placement="top"
  219. rel="tooltip"
  220. title="关闭全屏"
  221. style="display: none"
  222. >
  223. <a>
  224. <img
  225. title="关闭全屏"
  226. :src="require('@/assets/images/fullAc.png')"
  227. />
  228. </a>
  229. </div>
  230. </div>
  231. </div>
  232. </div>
  233. </template>
  234. <script>
  235. export default {
  236. data() {
  237. return {
  238. isGuide: false,
  239. };
  240. },
  241. watch: {
  242. },
  243. computed: {},
  244. mounted() {
  245. },
  246. methods: {
  247. switchBGM(flag) {
  248. if (flag) {
  249. window.manage.switchBgmState(true);
  250. document.querySelector("#openMusic").style.display = "none";
  251. document.querySelector("#closeMusic").style.display = "block";
  252. } else {
  253. window.manage.switchBgmState(false);
  254. document.querySelector("#openMusic").style.display = "block";
  255. document.querySelector("#closeMusic").style.display = "none";
  256. }
  257. },
  258. },
  259. };
  260. </script>
  261. <style lang="less" scoped>
  262. ::-webkit-scrollbar {
  263. width: 5px; /*高宽分别对应横竖滚动条的尺寸*/
  264. }
  265. ::-webkit-scrollbar-thumb {
  266. // box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2);
  267. background: #edd3b0;
  268. border-color: #edd3b0;
  269. color: #edd3b0;
  270. outline: none;
  271. }
  272. // ------tooltip相关--------------
  273. // #gui-modes-inside {
  274. // position: relative;
  275. // }
  276. // #gui-modes-dollhouse {
  277. // position: relative;
  278. // }
  279. // #gui-modes-floorplan {
  280. // position: relative;
  281. // }
  282. // .hoverTit {
  283. // pointer-events: none;
  284. // transition: all 0.5s;
  285. // opacity: 0;
  286. // position: absolute;
  287. // left: 50%;
  288. // transform: translateX(-50%);
  289. // top: -40px;
  290. // width: 80px;
  291. // height: 37px;
  292. // line-height: 30px;
  293. // text-align: center;
  294. // background: url("../../assets/img/hoverTit.png");
  295. // background-size: 100% 100%;
  296. // font-size: 14px;
  297. // color: #fff6d2;
  298. // }
  299. // #play:hover {
  300. // .hoverTit {
  301. // opacity: 1;
  302. // }
  303. // }
  304. // #pause:hover {
  305. // .hoverTit {
  306. // opacity: 1;
  307. // }
  308. // }
  309. // #gui-modes-map > div:hover {
  310. // .hoverTit {
  311. // opacity: 1;
  312. // }
  313. // }
  314. // -------end of tooltip相关--------------
  315. @wh: 50px;
  316. // ----------左下方菜单--------------
  317. .pinBottom.left {
  318. bottom: 30px;
  319. > div {
  320. > .viewContainer {
  321. flex-direction: row;
  322. margin-left: 30px;
  323. padding: 0;
  324. #play,
  325. #pause {
  326. margin-right: 30px;
  327. width: @wh;
  328. height: @wh;
  329. padding: 0;
  330. img {
  331. height: 100%;
  332. width: 100%;
  333. opacity: 0.7;
  334. }
  335. }
  336. #gui-modes-map {
  337. > div {
  338. margin-right: 30px;
  339. width: @wh;
  340. height: @wh;
  341. padding: 0;
  342. > img {
  343. height: 100%;
  344. width: 100%;
  345. opacity: 0.7;
  346. display: block !important;
  347. }
  348. &.active {
  349. > img {
  350. opacity: 1;
  351. }
  352. }
  353. }
  354. }
  355. }
  356. }
  357. }
  358. // ----------end of 左下方菜单--------------
  359. // ----------右下方菜单---------------
  360. .pinBottom.right {
  361. bottom: 30px;
  362. .rightViewContainer {
  363. display: flex !important;
  364. align-items: center !important;
  365. margin-right: 30px;
  366. .ui-icon {
  367. width: @wh;
  368. height: @wh;
  369. margin-left: 30px;
  370. margin-right: initial;
  371. background: none;
  372. border: none;
  373. padding: 0 !important;
  374. > a {
  375. width: 100% !important;
  376. height: 100% !important;
  377. > img {
  378. width: 100%;
  379. height: 100%;
  380. opacity: 0.7;
  381. }
  382. }
  383. }
  384. }
  385. }
  386. // ----------end of 右下方菜单---------------
  387. // -------------移动端特殊样式---------------
  388. @button-margin: calc((100vw - 50px * 4) / 5);
  389. .mobile {
  390. .pinBottom.left {
  391. > div {
  392. > .viewContainer {
  393. margin-left: @button-margin;
  394. #play,
  395. #pause {
  396. margin-right: @button-margin;
  397. img {
  398. }
  399. }
  400. #gui-modes-map {
  401. > div {
  402. margin-right: @button-margin;
  403. > img {
  404. }
  405. &.active {
  406. > img {
  407. }
  408. }
  409. }
  410. }
  411. }
  412. }
  413. }
  414. .pinBottom.right {
  415. .rightViewContainer {
  416. margin-right: @button-margin;
  417. .ui-icon {
  418. margin-left: @button-margin;
  419. > a {
  420. > img {
  421. }
  422. }
  423. }
  424. }
  425. }
  426. }
  427. // -------------end of 移动端特殊样式---------------
  428. </style>