tremble 3 år sedan
förälder
incheckning
a8253829a8
45 ändrade filer med 793 tillägg och 369 borttagningar
  1. 701 296
      public/floor/floor.json
  2. 43 34
      public/static/js/CAD/loadCAD.js
  3. 4 0
      public/static/js/Hot.js
  4. 3 1
      public/static/js/loadCAD.js
  5. BIN
      src/assets/images/proj2022/ditu.png
  6. BIN
      src/assets/images/proj2022/ditu_m.png
  7. 0 0
      src/assets/images/proj2022/icon/auto_2x.png
  8. 0 0
      src/assets/images/proj2022/icon/auto_active_2x.png
  9. 0 0
      src/assets/images/proj2022/icon/back.png
  10. 0 0
      src/assets/images/proj2022/icon/clear_2x.png
  11. 0 0
      src/assets/images/proj2022/icon/clear_active.png
  12. 0 0
      src/assets/images/proj2022/icon/dollhouse.png
  13. 0 0
      src/assets/images/proj2022/icon/floor_2x.png
  14. 0 0
      src/assets/images/proj2022/icon/floor_active.png
  15. 0 0
      src/assets/images/proj2022/icon/like_2x.png
  16. 0 0
      src/assets/images/proj2022/icon/like_active_2x.png
  17. 0 0
      src/assets/images/proj2022/icon/menu_2x.png
  18. 0 0
      src/assets/images/proj2022/icon/menu_active_2x.png
  19. 0 0
      src/assets/images/proj2022/icon/message_2x.png
  20. 0 0
      src/assets/images/proj2022/icon/message_active_2x.png
  21. 0 0
      src/assets/images/proj2022/icon/musicoff_2x.png
  22. 0 0
      src/assets/images/proj2022/icon/musicon_2x.png
  23. 0 0
      src/assets/images/proj2022/icon/pause_2x.png
  24. 0 0
      src/assets/images/proj2022/icon/play_2x.png
  25. 0 0
      src/assets/images/proj2022/icon/search_2x.png
  26. 0 0
      src/assets/images/proj2022/icon/share_2x.png
  27. 0 0
      src/assets/images/proj2022/icon/share_active_2x.png
  28. 0 0
      src/assets/images/proj2022/mobile/left.png
  29. 0 0
      src/assets/images/proj2022/mobile/search.png
  30. 0 0
      src/assets/images/proj2022/pc/logo.png
  31. 9 5
      src/components/hotspot/image.vue
  32. 6 0
      src/components/hotspot/index.vue
  33. 0 1
      src/components/menu/index.vue
  34. 1 1
      src/config/http.js
  35. 2 0
      src/pages/mobilescene/components/qrcode.vue
  36. 3 3
      src/pages/mobilescene/index.vue
  37. 5 5
      src/pages/mobilescene/map.vue
  38. 0 1
      src/pages/mobilescene/menu.vue
  39. 2 2
      src/pages/mobilescene/search/index.vue
  40. 2 2
      src/pages/scene/index.vue
  41. 1 1
      src/pages/scene/menu.vue
  42. 10 7
      src/pages/scene/raside/map.vue
  43. 0 6
      src/pages/scene/raside/rmenu.vue
  44. 0 2
      src/pages/scene/raside/search.vue
  45. 1 2
      src/pages/scenePage/views/gui/guide.vue

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 701 - 296
public/floor/floor.json


+ 43 - 34
public/static/js/CAD/loadCAD.js

@@ -4,7 +4,7 @@ window.grendCAD = (function grendCAD() {
   let point, dire
 
   window.cad = {
-    setSign: function(p, d) {
+    setSign: function (p, d) {
       point = p
       dire = d
     }
@@ -24,10 +24,10 @@ window.grendCAD = (function grendCAD() {
     style.innerHTML = `
       .cad {
         position: absolute;
-        width: 100%;
-        height: 100%;
-        top: 0;
-        right: 10px;
+        width: 108%;
+        height: 108%;
+        top: -12px;
+        right: -12px;
       }
 
       #cad{
@@ -39,6 +39,15 @@ window.grendCAD = (function grendCAD() {
         opacity: 0;
       }
 
+      @media only screen and (max-width: 600px) { 
+        .cad {
+          width: 138%;
+          height: 138%;
+          transform: rotate(90deg);
+          top: -24px;
+          right: -30px;
+          }
+      }
     `
 
     document.documentElement.appendChild(style)
@@ -68,7 +77,7 @@ window.grendCAD = (function grendCAD() {
   }
 
 
-  return function(floor, $parent, signColor, borderColor, borderWidth) {
+  return function (floor, $parent, signColor, borderColor, borderWidth) {
     // if (initFloor) {
     //   console.log('cache')
     //   return setStyle(signColor, borderColor, borderWidth)
@@ -76,34 +85,34 @@ window.grendCAD = (function grendCAD() {
     console.log('load')
     initFloor = floor
 
-      let $layer = loadDOM($parent)
-
-      $layer.style.visibility = 'hidden'
-      window.cad = structureCAD({
-        data: {
-            block: [],
-            column: [],
-            door: [],
-            hole: [],
-            segment: [],
-            "vertex-xy": [],
-            "vertex-z": [],
-        }, 
-        layer: $layer.querySelector('#cad'),
-        edit: false
-      });
-      
-      setStyle(signColor, borderColor, borderWidth)
-      cad.hideDire()
-      cad.hideGauge()
-  
-      console.log('loadData')
-      cad.loadData(initFloor);
-
-      if (point && dire) {
-        window.cad.setSign(point, dire)
-      }
-      $layer.style.visibility = 'visible'
+    let $layer = loadDOM($parent)
+
+    $layer.style.visibility = 'hidden'
+    window.cad = structureCAD({
+      data: {
+        block: [],
+        column: [],
+        door: [],
+        hole: [],
+        segment: [],
+        "vertex-xy": [],
+        "vertex-z": [],
+      },
+      layer: $layer.querySelector('#cad'),
+      edit: false
+    });
+
+    setStyle(signColor, borderColor, borderWidth)
+    cad.hideDire()
+    cad.hideGauge()
+
+    console.log('loadData')
+    cad.loadData(initFloor);
+
+    if (point && dire) {
+      window.cad.setSign(point, dire)
+    }
+    $layer.style.visibility = 'visible'
 
   }
 })();

+ 4 - 0
public/static/js/Hot.js

@@ -1032,6 +1032,10 @@ window.initHot = function(model){
         setTitleElem(){ 
             var title = this.info.title; 
             if(title){
+                if (title.indexOf("(视频)") > -1) {
+                    let tmp = title.split("(视频)");
+                    title = tmp[0];
+                  }
                 if (title.length>30) {
                     title = title.slice(0,30) + '...';
                 }

+ 3 - 1
public/static/js/loadCAD.js

@@ -41,9 +41,11 @@ window.grendCAD = (function grendCAD() {
         right: 80px;
         top: 16px;
         width: 200px;
-        height: 200px;
+        height: 165px;
         background: rgba(0, 0, 0, .3);
         border-radius: 5px;
+        top: -12px;
+        right: 12px;
       }
 
       .cad > div {

BIN
src/assets/images/proj2022/ditu.png


BIN
src/assets/images/proj2022/ditu_m.png


src/assets/images/proj2022/icon/auto@2x.png → src/assets/images/proj2022/icon/auto_2x.png


src/assets/images/proj2022/icon/auto_active@2x.png → src/assets/images/proj2022/icon/auto_active_2x.png


src/assets/images/proj2022/icon/back@2x.png → src/assets/images/proj2022/icon/back.png


src/assets/images/proj2022/icon/clear@2x.png → src/assets/images/proj2022/icon/clear_2x.png


src/assets/images/proj2022/icon/clear_active@2x.png → src/assets/images/proj2022/icon/clear_active.png


src/assets/images/proj2022/icon/dollhouse@2x.png → src/assets/images/proj2022/icon/dollhouse.png


src/assets/images/proj2022/icon/floor@2x.png → src/assets/images/proj2022/icon/floor_2x.png


src/assets/images/proj2022/icon/floor_active@2x.png → src/assets/images/proj2022/icon/floor_active.png


src/assets/images/proj2022/icon/like@2x.png → src/assets/images/proj2022/icon/like_2x.png


src/assets/images/proj2022/icon/like_active@2x.png → src/assets/images/proj2022/icon/like_active_2x.png


src/assets/images/proj2022/icon/menu@2x.png → src/assets/images/proj2022/icon/menu_2x.png


src/assets/images/proj2022/icon/menu_active@2x.png → src/assets/images/proj2022/icon/menu_active_2x.png


src/assets/images/proj2022/icon/message@2x.png → src/assets/images/proj2022/icon/message_2x.png


src/assets/images/proj2022/icon/message_active@2x.png → src/assets/images/proj2022/icon/message_active_2x.png


src/assets/images/proj2022/icon/musicoff@2x.png → src/assets/images/proj2022/icon/musicoff_2x.png


src/assets/images/proj2022/icon/musicon@2x.png → src/assets/images/proj2022/icon/musicon_2x.png


src/assets/images/proj2022/icon/pause@2x.png → src/assets/images/proj2022/icon/pause_2x.png


src/assets/images/proj2022/icon/play@2x.png → src/assets/images/proj2022/icon/play_2x.png


src/assets/images/proj2022/icon/search@2x.png → src/assets/images/proj2022/icon/search_2x.png


src/assets/images/proj2022/icon/share_active@2x.png → src/assets/images/proj2022/icon/share_2x.png


src/assets/images/proj2022/icon/share@2x.png → src/assets/images/proj2022/icon/share_active_2x.png


src/assets/images/proj2022/mobile/left@2x.png → src/assets/images/proj2022/mobile/left.png


src/assets/images/proj2022/mobile/search@2x.png → src/assets/images/proj2022/mobile/search.png


src/assets/images/proj2022/pc/logo@2x.png → src/assets/images/proj2022/pc/logo.png


+ 9 - 5
src/components/hotspot/image.vue

@@ -30,7 +30,7 @@
         </div>
         <img class="aa"  v-if="hotspot.images.length > 1" :src="require('@/assets/images/proj2022/mobile/next.png')" alt="" @click="handlePage('next')" />
       </div>
-      <div class="desc" v-if="hotspot.title||hotspot.imagesDesc[active]">
+      <div class="desc" v-if="hotspot.imagesDesc[active]">
         <div class="title" v-html="hotspot.title"></div>
         <div v-html="handleContent(hotspot.imagesDesc[active], 14)"></div>
       </div>
@@ -97,14 +97,16 @@ export default {
       maxScale: 10,
       startScale: this.isMobile ? 1 : !this.hotspot.content ? 0.8 : 1,
     });
-    elem.addEventListener("wheel", this.panzoom.zoomWithWheel);
-    elem.addEventListener("load", () => {
+    const parent = elem.parentElement
+    // No function bind needed
+    parent.addEventListener("wheel", this.panzoom.zoomWithWheel);
+    parent.addEventListener("load", () => {
       this.reset();
     });
-    elem.addEventListener("abort", () => {
+    parent.addEventListener("abort", () => {
       this.reset();
     });
-    elem.addEventListener("error", () => {
+    parent.addEventListener("error", () => {
       this.reset();
     });
   },
@@ -160,6 +162,7 @@ export default {
         display: flex;
         align-items: center;
         justify-content: center;
+        text-align: center;
         img {
           cursor: pointer;
           max-width: 100%;
@@ -216,6 +219,7 @@ export default {
         min-height: 100%;
         display: flex;
         align-items: center;
+        text-align: center;
       }
     }
   }

+ 6 - 0
src/components/hotspot/index.vue

@@ -150,12 +150,14 @@ export default {
             display: flex;
             align-items: center;
             justify-content: center;
+            text-align: center;
             img {
               cursor: pointer;
               max-width: 100%;
               width: auto;
               max-height: 100%;
               height: auto;
+              margin: 0 auto;
             }
             > iframe {
               width: 100%;
@@ -212,6 +214,10 @@ export default {
           .imgmain {
             width: 100%;
             height: 100%;
+            text-align: center;
+            >img{
+              margin: 0 auto;
+            }
           }
         }
       }

+ 0 - 1
src/components/menu/index.vue

@@ -24,7 +24,6 @@
             :style="{ backgroundImage: `url(${require(`@/assets/images/proj2022/xueliezhen/menu.png`)})` }"
           ></div>
 
-          <!-- <img @click="isShow = !isShow" :src="require(`@/assets/images/proj2022/icon/menu${isShow ? '_active' : ''}@2x.png`)" alt="" /> -->
         </section>
         <div v-if="!noMode" @click="changeMode('dollhouse')">
           <div

+ 1 - 1
src/config/http.js

@@ -8,7 +8,7 @@ import Vue from 'vue'
 let vue = new Vue()
 
 
-const serverName = 'http://newcomment.cntv.cn/'
+const serverName = 'https://newcomment.cntv.cn/'
 
 const orginLink = window.location.origin
 

+ 2 - 0
src/pages/mobilescene/components/qrcode.vue

@@ -140,6 +140,8 @@ export default {
     text-align: center;
     padding: 20px 0 0;
     position: relative;
+    overflow-y: auto;
+
     > h3 {
       font-weight: bold;
       font-size: 20px;

+ 3 - 3
src/pages/mobilescene/index.vue

@@ -8,11 +8,11 @@
           <div :class="{ disabled: flying }" class="tab-layer">
             <div class="tabs">
               <div :class="{ active: mode === 'floorplan' }" @click="changeMode('floorplan', $event)">
-                <img :src="require('@/assets/images/proj2022/icon/floor_active@2x.png')" alt="" />
+                <img :src="require('@/assets/images/proj2022/icon/floor_active.png')" alt="" />
                 <span>平面</span>
               </div>
               <div :class="{ active: mode === 'dollhouse' }" @click="changeMode('dollhouse', $event)">
-                <img :src="require('@/assets/images/proj2022/icon/dollhouse@2x.png')" alt="" />
+                <img :src="require('@/assets/images/proj2022/icon/dollhouse.png')" alt="" />
                 <span>三维</span>
               </div>
             </div>
@@ -27,7 +27,7 @@
           <vsearch :currentPanoid="currentPanoid" @closeSearch="closeSearch" v-if="showSearch" />
 
           <div v-if="isClear" @click.stop="clicktoClear" class="isClear">
-            <img :src="require('@/assets/images/proj2022/icon/clear_active@2x.png')" alt="" />
+            <img :src="require('@/assets/images/proj2022/icon/clear_active.png')" alt="" />
             <span>恢复</span>
           </div>
         </div>

+ 5 - 5
src/pages/mobilescene/map.vue

@@ -3,9 +3,9 @@
     <div class="cadmap mapshow" :class="isShow?'':'maphide'" @click="onClickMap">
       <div class="close" @click.stop="isShow = !isShow">
         <div class="cline"></div>
-        <img :src="require(`@/assets/images/proj2022/icon/back@2x.png`)" alt="" />
+        <img :src="require(`@/assets/images/proj2022/icon/back.png`)" alt="" />
       </div>
-      <div class="mapbig" :style="{ backgroundImage: `url(${require(`@/assets/images/proj2022/ditu.png`)})` }" ></div>
+      <div class="mapbig" :style="{ backgroundImage: `url(${require(`@/assets/images/proj2022/ditu_m.png`)})` }" ></div>
     </div>
    
   </div>
@@ -33,7 +33,7 @@ export default {
   top: 0;
   z-index: 999;
   .mapshow {
-    width: 166px;
+    width: 186px;
     height: 120px;
     background: rgba(0, 0, 0, 0.2);
     border-radius: 1px;
@@ -68,14 +68,14 @@ export default {
     .mapbig {
       width: 100%;
       height: 100%;
-      background-size: auto 116%;
+      background-size: auto 100%;
       background-repeat: no-repeat;
       background-position: center center;
       background-color: rgba(0, 0, 0, 0.2);
     }
   }
   .maphide {
-   transform: translateX(166px);
+   transform: translateX(186px);
     .close {
       > img {
         width: 8px;

+ 0 - 1
src/pages/mobilescene/menu.vue

@@ -79,7 +79,6 @@ export default {
     z-index: 999;
     width: 100%;
     height: 103px;
-    background-image: url('~@/assets/images/proj2022/mobile/tab@2x.png');
     background-size: 100% auto;
     background-repeat: no-repeat;
     background-position: bottom left;

+ 2 - 2
src/pages/mobilescene/search/index.vue

@@ -3,10 +3,10 @@
     <img class="searchbg" :src="require(`@/assets/images/proj2022/mobile/search_bg.png`)" alt="" />
     <div class="brightness"></div>
     <div class="vinput">
-      <img @click.stop="$emit('closeSearch')" :src="require('@/assets/images/proj2022/mobile/left@2x.png')" alt="" />
+      <img @click.stop="$emit('closeSearch')" :src="require('@/assets/images/proj2022/mobile/left.png')" alt="" />
       <div>
         <input v-model="key" type="text" placeholder="请输入关键字..." />
-        <img :src="require('@/assets/images/proj2022/mobile/search@2x.png')" alt="" />
+        <img :src="require('@/assets/images/proj2022/mobile/search.png')" alt="" />
       </div>
     </div>
     <div class="cpylist">

+ 2 - 2
src/pages/scene/index.vue

@@ -1,7 +1,7 @@
 <template>
   <div :class="`theme${theme}`" id="scenebody" class="scene-body">
     <div class="logo" @click="$router.push({ path: '/' })">
-      <img :src="require(`@/assets/images/proj2022/pc/logo@2x.png`)" alt="" />
+      <img :src="require(`@/assets/images/proj2022/pc/logo.png`)" alt="" />
     </div>
 
     <div class="scene-con" :class="{ showscene: showAll }">
@@ -10,7 +10,7 @@
 
         <!-- <zhanxiang :currentPanoid="currentPanoid" v-show="!tourStatus && !isClear" :zxdata="zhanxiangData" :class="{ zxshow: isShowZX }" /> -->
         <div v-if="isClear" @click.stop="clicktoClear" class="isClear">
-          <img :src="require('@/assets/images/proj2022/icon/clear_active@2x.png')" alt="" />
+          <img :src="require('@/assets/images/proj2022/icon/clear_active.png')" alt="" />
           <span>恢复</span>
         </div>
       </div>

+ 1 - 1
src/pages/scene/menu.vue

@@ -229,7 +229,7 @@ export default {
 <style lang="less" scoped>
 .raside {
   position: fixed;
-  top: 190px;
+  top: 170px;
   right: 0;
   z-index: 999;
   height: 100%;

+ 10 - 7
src/pages/scene/raside/map.vue

@@ -2,7 +2,7 @@
   <div class="map" :class="{ showmap: isShow }">
     <div class="cadcon">
       <div class="cadmap">
-        <!-- <div class="cadtu" :style="{ backgroundImage: `url(${require(`@/assets/images/proj2022/ditu.png`)})` }"></div> -->
+        <div class="cadtu" :style="{ backgroundImage: `url(${require(`@/assets/images/proj2022/ditu.png`)})` }"></div>
       </div>
     </div>
 
@@ -52,19 +52,21 @@ export default {
 </script>
 
 <style lang="less" scoped>
-@conw: 290px;
+@conw: 224px;
 .map {
   position: fixed;
   top: 0;
-  right: 10px;
+  right: 100px;
   z-index: 999;
-  right: -@conw;
+  right: -293px;
   transition: 0.3s ease all;
   text-align: center;
   .cadcon {
-    width: @conw;
+    width: 181px;
     border-bottom-left-radius: 5px;
     overflow: hidden;
+    transform: rotate(90deg) translate(-70px, 57px);
+    // transform-origin:  left top;
     @supports (backdrop-filter: brightness(60%)) {
       .cadmap {
         backdrop-filter: blur(30px) brightness(60%) !important;
@@ -75,8 +77,9 @@ export default {
       position: relative;
       margin: 0 auto;
       width: 100%;
-      height: 190px;
+      height: 296px;
       background-color: rgba(0, 0, 0, 0.5);
+      padding-bottom: 10px;
       .cad {
         position: absolute;
         width: 100%;
@@ -146,7 +149,7 @@ export default {
     height: 70px;
     cursor: pointer;
     position: absolute;
-    left: -38px;
+    left: -152px;
     border-radius: 6px 0 0 6px;
     overflow: hidden;
     font-size: 0;

+ 0 - 6
src/pages/scene/raside/rmenu.vue

@@ -6,12 +6,6 @@
         :title="item.name"
         :style="{ backgroundImage: `url(${require(`@/assets/images/proj2022/xueliezhen/play_pause.png`)})` }"
       ></div>
-      <!-- <img
-        @click="onClick(item)"
-        :title="item.name"
-        :src="require(`@/assets/images/proj2022/icon/${isBgm && item.id == 'music' ? item.active : item.default}@2x.png`)"
-        alt=""
-      /> -->
     </li>
   </ul>
 </template>

+ 0 - 2
src/pages/scene/raside/search.vue

@@ -1,8 +1,6 @@
 <template>
   <div class="vsearchtt">
     <div class="searchicon" v-if="!isShow" @click="isShow = true" :style="{ backgroundImage: `url(${require(`@/assets/images/proj2022/xueliezhen/search.png`)})` }"></div>
-
-    <!-- <img @click="isShow=true" v-if="!isShow" :src="require(`@/assets/images/proj2022/icon/search@2x.png`)" alt="" /> -->
     <searchshow @close="isShow = false" v-else />
   </div>
 </template>

+ 1 - 2
src/pages/scenePage/views/gui/guide.vue

@@ -3,7 +3,7 @@
     <div class="stoptour">
       <template>
         <div @click.stop="stop()">
-          <img :src="require(`@/assets/images/proj2022/icon/pause@2x.png`)" />
+          <img :src="require(`@/assets/images/proj2022/icon/pause_2x.png`)" />
         </div>
         <div>
           <div
@@ -11,7 +11,6 @@
             :class="{ iactive: !isZhankai }"
             :style="{ backgroundImage: `url(${require(`@/assets/images/proj2022/xueliezhen/project.png`)})` }"
           ></div>
-          <!-- <img @click.stop="isZhankai = !isZhankai" :src="require(`@/assets/images/proj2022/icon/${!isZhankai ? 'auto_active@2x' : 'auto@2x'}.png`)" /> -->
         </div>
       </template>
       <!-- <img v-else @click.stop="stop()" :src="require(`@/assets/images/proj2022/mobile/pause_${themescene}.png`)" /> -->