Преглед на файлове

全景页各图片适配不同场景,等等

任一存 преди 1 година
родител
ревизия
445c711cff
променени са 90 файла, в които са добавени 247 реда и са изтрити 22855 реда
  1. 4 1
      README.md
  2. 143 0
      public/sceneTree.js
  3. 0 0
      src/assets/images/btn-close-camera-desc-1.png
  4. BIN
      src/assets/images/btn-close-camera-desc-2.png
  5. BIN
      src/assets/images/btn-close-camera-desc-3.png
  6. 0 0
      src/assets/images/btn-return-home-1.png
  7. BIN
      src/assets/images/btn-return-home-2.png
  8. BIN
      src/assets/images/btn-return-home-3.png
  9. 0 0
      src/assets/images/btn-return-home-active-1.png
  10. BIN
      src/assets/images/btn-return-home-active-2.png
  11. BIN
      src/assets/images/btn-return-home-active-3.png
  12. BIN
      src/assets/images/camera-btn-1-3-1.png
  13. BIN
      src/assets/images/camera-btn-2-1-1-active.png
  14. BIN
      src/assets/images/camera-btn-2-1-1.png
  15. BIN
      src/assets/images/camera-btn-2-1-2-active.png
  16. BIN
      src/assets/images/camera-btn-2-1-2.png
  17. BIN
      src/assets/images/camera-btn-2-1-3-active.png
  18. BIN
      src/assets/images/camera-btn-2-1-3.png
  19. BIN
      src/assets/images/camera-btn-2-1-4-active.png
  20. BIN
      src/assets/images/camera-btn-2-1-4.png
  21. BIN
      src/assets/images/camera-btn-2-2-1-active.png
  22. BIN
      src/assets/images/camera-btn-2-2-1.png
  23. BIN
      src/assets/images/camera-btn-2-2-2-active.png
  24. BIN
      src/assets/images/camera-btn-2-2-2.png
  25. BIN
      src/assets/images/camera-btn-2-2-3-active.png
  26. BIN
      src/assets/images/camera-btn-2-2-3.png
  27. BIN
      src/assets/images/camera-btn-2-2-4-active.png
  28. BIN
      src/assets/images/camera-btn-2-2-4.png
  29. BIN
      src/assets/images/camera-btn-2-3-1-active.png
  30. BIN
      src/assets/images/camera-btn-2-3-1.png
  31. BIN
      src/assets/images/camera-btn-2-3-2-active.png
  32. BIN
      src/assets/images/camera-btn-2-3-2.png
  33. BIN
      src/assets/images/camera-btn-2-3-3-active.png
  34. BIN
      src/assets/images/camera-btn-2-3-3.png
  35. BIN
      src/assets/images/camera-btn-2-3-4-active.png
  36. BIN
      src/assets/images/camera-btn-2-3-4.png
  37. BIN
      src/assets/images/camera-btn-3-1-1-active.png
  38. BIN
      src/assets/images/camera-btn-3-1-1.png
  39. BIN
      src/assets/images/camera-btn-3-1-2-active.png
  40. BIN
      src/assets/images/camera-btn-3-1-2.png
  41. BIN
      src/assets/images/camera-btn-3-1-3-active.png
  42. BIN
      src/assets/images/camera-btn-3-1-3.png
  43. BIN
      src/assets/images/camera-btn-3-1-4-active.png
  44. BIN
      src/assets/images/camera-btn-3-1-4.png
  45. BIN
      src/assets/images/camera-btn-3-2-1-active.png
  46. BIN
      src/assets/images/camera-btn-3-2-1.png
  47. BIN
      src/assets/images/camera-btn-3-2-2-active.png
  48. BIN
      src/assets/images/camera-btn-3-2-2.png
  49. BIN
      src/assets/images/camera-btn-3-2-3-active.png
  50. BIN
      src/assets/images/camera-btn-3-2-3.png
  51. BIN
      src/assets/images/camera-btn-3-2-4-active.png
  52. BIN
      src/assets/images/camera-btn-3-2-4.png
  53. 0 0
      src/assets/images/camera-desc-bg-1.png
  54. BIN
      src/assets/images/camera-desc-bg-2.png
  55. BIN
      src/assets/images/camera-desc-bg-3.png
  56. 0 0
      src/assets/images/camera-desc-title-bg-1.png
  57. BIN
      src/assets/images/camera-desc-title-bg-2.png
  58. BIN
      src/assets/images/camera-desc-title-bg-3.png
  59. 0 0
      src/assets/images/camera-list-bg-1.png
  60. BIN
      src/assets/images/camera-list-bg-2.png
  61. BIN
      src/assets/images/camera-list-bg-3.png
  62. BIN
      src/assets/images/camera-list-item-active.png
  63. 0 0
      src/assets/images/camera-list-item-bg-1.png
  64. BIN
      src/assets/images/camera-list-item-bg-2.png
  65. BIN
      src/assets/images/camera-list-item-bg-3.png
  66. 0 0
      src/assets/images/camera-list-item-bg-active-1.png
  67. BIN
      src/assets/images/camera-list-item-bg-active-2.png
  68. BIN
      src/assets/images/camera-list-item-bg-active-3.png
  69. BIN
      src/assets/images/camera-list-item-bg-active.png
  70. BIN
      src/assets/images/camera-list-item-bg.png
  71. 0 0
      src/assets/images/people-btn-track-1.png
  72. BIN
      src/assets/images/people-btn-track-2.png
  73. BIN
      src/assets/images/people-btn-track-3.png
  74. BIN
      src/assets/images/people-btn-track.png
  75. 0 2275
      src/assets/images/大都:元代北京城.html
  76. BIN
      src/assets/images/大都:元代北京城_files/A1-min.f8a089e8.png
  77. BIN
      src/assets/images/大都:元代北京城_files/A2-min.db7c9c0c.png
  78. BIN
      src/assets/images/大都:元代北京城_files/A3-min.b0f7d793.png
  79. 0 3421
      src/assets/images/大都:元代北京城_files/app.js.download
  80. 0 16383
      src/assets/images/大都:元代北京城_files/chunk-vendors.js.download
  81. 0 483
      src/assets/images/大都:元代北京城_files/iconfont.css
  82. 0 4
      src/assets/images/大都:元代北京城_files/jquery-2.1.1.min.js.download
  83. 0 5
      src/assets/images/大都:元代北京城_files/jquery.mCustomScrollbar.concat.min.js.download
  84. 0 114
      src/assets/images/大都:元代北京城_files/perfect-scrollbar.css
  85. 0 6
      src/assets/images/大都:元代北京城_files/perfect-scrollbar.min.js.download
  86. 0 2
      src/assets/images/大都:元代北京城_files/sly.min.js.download
  87. 0 14
      src/assets/images/大都:元代北京城_files/tour.js.download
  88. 25 11
      src/components/CameraDesc.vue
  89. 1 1
      src/views/HomeView.vue
  90. 74 135
      src/views/PanoView.vue

+ 4 - 1
README.md

@@ -1,4 +1,7 @@
 ## 部署测试环境
 文件存放位置:
 
-访问url:
+访问url:
+
+## todo
+import ... from '/public/dsflksdfj/...' 这样没意义吧?

Файловите разлики са ограничени, защото са твърде много
+ 143 - 0
public/sceneTree.js


src/assets/images/btn-close-camera-desc.png → src/assets/images/btn-close-camera-desc-1.png


BIN
src/assets/images/btn-close-camera-desc-2.png


BIN
src/assets/images/btn-close-camera-desc-3.png


src/assets/images/btn-return-home.png → src/assets/images/btn-return-home-1.png


BIN
src/assets/images/btn-return-home-2.png


BIN
src/assets/images/btn-return-home-3.png


src/assets/images/btn-return-home-active.png → src/assets/images/btn-return-home-active-1.png


BIN
src/assets/images/btn-return-home-active-2.png


BIN
src/assets/images/btn-return-home-active-3.png


BIN
src/assets/images/camera-btn-1-3-1.png


BIN
src/assets/images/camera-btn-2-1-1-active.png


BIN
src/assets/images/camera-btn-2-1-1.png


BIN
src/assets/images/camera-btn-2-1-2-active.png


BIN
src/assets/images/camera-btn-2-1-2.png


BIN
src/assets/images/camera-btn-2-1-3-active.png


BIN
src/assets/images/camera-btn-2-1-3.png


BIN
src/assets/images/camera-btn-2-1-4-active.png


BIN
src/assets/images/camera-btn-2-1-4.png


BIN
src/assets/images/camera-btn-2-2-1-active.png


BIN
src/assets/images/camera-btn-2-2-1.png


BIN
src/assets/images/camera-btn-2-2-2-active.png


BIN
src/assets/images/camera-btn-2-2-2.png


BIN
src/assets/images/camera-btn-2-2-3-active.png


BIN
src/assets/images/camera-btn-2-2-3.png


BIN
src/assets/images/camera-btn-2-2-4-active.png


BIN
src/assets/images/camera-btn-2-2-4.png


BIN
src/assets/images/camera-btn-2-3-1-active.png


BIN
src/assets/images/camera-btn-2-3-1.png


BIN
src/assets/images/camera-btn-2-3-2-active.png


BIN
src/assets/images/camera-btn-2-3-2.png


BIN
src/assets/images/camera-btn-2-3-3-active.png


BIN
src/assets/images/camera-btn-2-3-3.png


BIN
src/assets/images/camera-btn-2-3-4-active.png


BIN
src/assets/images/camera-btn-2-3-4.png


BIN
src/assets/images/camera-btn-3-1-1-active.png


BIN
src/assets/images/camera-btn-3-1-1.png


BIN
src/assets/images/camera-btn-3-1-2-active.png


BIN
src/assets/images/camera-btn-3-1-2.png


BIN
src/assets/images/camera-btn-3-1-3-active.png


BIN
src/assets/images/camera-btn-3-1-3.png


BIN
src/assets/images/camera-btn-3-1-4-active.png


BIN
src/assets/images/camera-btn-3-1-4.png


BIN
src/assets/images/camera-btn-3-2-1-active.png


BIN
src/assets/images/camera-btn-3-2-1.png


BIN
src/assets/images/camera-btn-3-2-2-active.png


BIN
src/assets/images/camera-btn-3-2-2.png


BIN
src/assets/images/camera-btn-3-2-3-active.png


BIN
src/assets/images/camera-btn-3-2-3.png


BIN
src/assets/images/camera-btn-3-2-4-active.png


BIN
src/assets/images/camera-btn-3-2-4.png


src/assets/images/camera-desc-bg.png → src/assets/images/camera-desc-bg-1.png


BIN
src/assets/images/camera-desc-bg-2.png


BIN
src/assets/images/camera-desc-bg-3.png


src/assets/images/camera-desc-title-bg.png → src/assets/images/camera-desc-title-bg-1.png


BIN
src/assets/images/camera-desc-title-bg-2.png


BIN
src/assets/images/camera-desc-title-bg-3.png


src/assets/images/camera-list-bg.png → src/assets/images/camera-list-bg-1.png


BIN
src/assets/images/camera-list-bg-2.png


BIN
src/assets/images/camera-list-bg-3.png


BIN
src/assets/images/camera-list-item-active.png


src/assets/images/大都:元代北京城_files/camera-list-item-bg.5b238b78.png → src/assets/images/camera-list-item-bg-1.png


BIN
src/assets/images/camera-list-item-bg-2.png


BIN
src/assets/images/camera-list-item-bg-3.png


src/assets/images/大都:元代北京城_files/camera-list-item-bg-active.87fec3a7.png → src/assets/images/camera-list-item-bg-active-1.png


BIN
src/assets/images/camera-list-item-bg-active-2.png


BIN
src/assets/images/camera-list-item-bg-active-3.png


BIN
src/assets/images/camera-list-item-bg-active.png


BIN
src/assets/images/camera-list-item-bg.png


src/assets/images/大都:元代北京城_files/people-btn-track.7fec2f06.png → src/assets/images/people-btn-track-1.png


BIN
src/assets/images/people-btn-track-2.png


BIN
src/assets/images/people-btn-track-3.png


BIN
src/assets/images/people-btn-track.png


Файловите разлики са ограничени, защото са твърде много
+ 0 - 2275
src/assets/images/大都:元代北京城.html


BIN
src/assets/images/大都:元代北京城_files/A1-min.f8a089e8.png


BIN
src/assets/images/大都:元代北京城_files/A2-min.db7c9c0c.png


BIN
src/assets/images/大都:元代北京城_files/A3-min.b0f7d793.png


Файловите разлики са ограничени, защото са твърде много
+ 0 - 3421
src/assets/images/大都:元代北京城_files/app.js.download


Файловите разлики са ограничени, защото са твърде много
+ 0 - 16383
src/assets/images/大都:元代北京城_files/chunk-vendors.js.download


+ 0 - 483
src/assets/images/大都:元代北京城_files/iconfont.css

@@ -1,483 +0,0 @@
-@font-face {
-  font-family: "iconfont"; /* Project id 2947721 */
-  src: url('iconfont.woff2?t=1647573254226') format('woff2'),
-       url('iconfont.woff?t=1647573254226') format('woff'),
-       url('iconfont.ttf?t=1647573254226') format('truetype');
-}
-
-.iconfont {
-  font-family: "iconfont" !important;
-  font-size: 16px;
-  font-style: normal;
-  -webkit-font-smoothing: antialiased;
-  -moz-osx-font-smoothing: grayscale;
-}
-
-.iconshow_more_finish:before {
-  content: "\e67a";
-}
-
-.iconshow_more_music:before {
-  content: "\e67c";
-}
-
-.iconshow_more:before {
-  content: "\e67e";
-}
-
-.iconshow_more_vr:before {
-  content: "\e67f";
-}
-
-.icontop:before {
-  content: "\e6f3";
-}
-
-.iconeditor_play:before {
-  content: "\e6ef";
-}
-
-.iconeditor_3d:before {
-  content: "\e6f0";
-}
-
-.iconeditor_update:before {
-  content: "\e6f1";
-}
-
-.iconeditor_list_delete:before {
-  content: "\e6f2";
-}
-
-.iconmaterial_panoramic_picture:before {
-  content: "\e6e8";
-}
-
-.iconmaterial_preview_upload:before {
-  content: "\e6e9";
-}
-
-.icontoast_yellow:before {
-  content: "\e6ea";
-}
-
-.iconworks_search:before {
-  content: "\e6eb";
-}
-
-.iconworks_share:before {
-  content: "\e6ec";
-}
-
-.iconworks_look:before {
-  content: "\e6ed";
-}
-
-.iconworks_delete:before {
-  content: "\e6ee";
-}
-
-.iconeditor_folder_off:before {
-  content: "\e6c5";
-}
-
-.iconeditor_folder_on:before {
-  content: "\e6c6";
-}
-
-.iconeditor_add:before {
-  content: "\e6c7";
-}
-
-.iconeditor_hot_add:before {
-  content: "\e6c8";
-}
-
-.iconeditor_off:before {
-  content: "\e6c9";
-}
-
-.iconeditor_list_add:before {
-  content: "\e6ca";
-}
-
-.iconeditor_on:before {
-  content: "\e6cb";
-}
-
-.iconeditor_playback:before {
-  content: "\e6cc";
-}
-
-.iconeditor_list_edit:before {
-  content: "\e6cd";
-}
-
-.iconmaterial_image:before {
-  content: "\e6ce";
-}
-
-.iconmaterial_music:before {
-  content: "\e6cf";
-}
-
-.iconeditor_panoramic:before {
-  content: "\e6d0";
-}
-
-.iconeditor_list_image:before {
-  content: "\e6d1";
-}
-
-.iconmaterial_preview_drop_out:before {
-  content: "\e6d2";
-}
-
-.iconeditor_preview:before {
-  content: "\e6d3";
-}
-
-.iconeditor_search:before {
-  content: "\e6d4";
-}
-
-.iconmaterial_operation_delete:before {
-  content: "\e6d5";
-}
-
-.iconmaterial_operation_editor:before {
-  content: "\e6d6";
-}
-
-.iconeditor_return:before {
-  content: "\e6d7";
-}
-
-.iconmaterial_preview_full_screen:before {
-  content: "\e6d8";
-}
-
-.iconmaterial_preview_enlarge:before {
-  content: "\e6d9";
-}
-
-.iconeditor_save:before {
-  content: "\e6da";
-}
-
-.iconmaterial_preview_next1:before {
-  content: "\e6db";
-}
-
-.iconmaterial_preview_next:before {
-  content: "\e6dc";
-}
-
-.iconmaterial_preview_narrow:before {
-  content: "\e6dd";
-}
-
-.iconmaterial_preview_previous:before {
-  content: "\e6de";
-}
-
-.iconmaterial_operation_image:before {
-  content: "\e6df";
-}
-
-.iconmaterial_video:before {
-  content: "\e6e0";
-}
-
-.iconmaterial_preview_upload_collect:before {
-  content: "\e6e1";
-}
-
-.iconpop-ups_shut-down:before {
-  content: "\e6e2";
-}
-
-.icontoast_green:before {
-  content: "\e6e3";
-}
-
-.icontoast_red:before {
-  content: "\e6e4";
-}
-
-.iconworks_editor:before {
-  content: "\e6e5";
-}
-
-.iconpop-ups_crop:before {
-  content: "\e6e6";
-}
-
-.iconmaterial_prompt:before {
-  content: "\e6e7";
-}
-
-.iconbs_close:before {
-  content: "\e74c";
-}
-
-.iconbs_folder:before {
-  content: "\e74d";
-}
-
-.iconbs_list_menu:before {
-  content: "\e74e";
-}
-
-.iconbs_list_edit:before {
-  content: "\e74f";
-}
-
-.iconbs_list_info:before {
-  content: "\e750";
-}
-
-.iconbs_list_play:before {
-  content: "\e751";
-}
-
-.iconbs_list_stop:before {
-  content: "\e752";
-}
-
-.iconbs_plus:before {
-  content: "\e753";
-}
-
-.iconbs_reduce:before {
-  content: "\e754";
-}
-
-.iconbs_next:before {
-  content: "\e755";
-}
-
-.iconbs_nav_panorama:before {
-  content: "\e756";
-}
-
-.iconbs_upload:before {
-  content: "\e757";
-}
-
-.iconbs_search:before {
-  content: "\e758";
-}
-
-.iconbs_nav_photo:before {
-  content: "\e759";
-}
-
-.iconbs_nav_video:before {
-  content: "\e75a";
-}
-
-.iconedit_add:before {
-  content: "\e75b";
-}
-
-.iconbs_nav_sound:before {
-  content: "\e75c";
-}
-
-.iconedit_input_arrow:before {
-  content: "\e75d";
-}
-
-.iconedit_close:before {
-  content: "\e75e";
-}
-
-.iconedit_case_delete:before {
-  content: "\e75f";
-}
-
-.iconbs_share:before {
-  content: "\e760";
-}
-
-.iconedit_input_unvisible:before {
-  content: "\e761";
-}
-
-.iconedit_input_visible:before {
-  content: "\e762";
-}
-
-.iconedit_list_more:before {
-  content: "\e763";
-}
-
-.iconedit_list_default:before {
-  content: "\e764";
-}
-
-.iconedit_nav_hotpoint:before {
-  content: "\e765";
-}
-
-.iconedit_nav_base:before {
-  content: "\e766";
-}
-
-.iconedit_next:before {
-  content: "\e767";
-}
-
-.iconedit_jumpsview:before {
-  content: "\e768";
-}
-
-.iconedit_pre:before {
-  content: "\e769";
-}
-
-.iconedit_linkview:before {
-  content: "\e76a";
-}
-
-.iconedit_select:before {
-  content: "\e76b";
-}
-
-.iconedit_nav_scenenav:before {
-  content: "\e76c";
-}
-
-.iconedit_soundview:before {
-  content: "\e76d";
-}
-
-.iconedit_photoview:before {
-  content: "\e76e";
-}
-
-.iconedit_search:before {
-  content: "\e76f";
-}
-
-.iconedit_textview:before {
-  content: "\e770";
-}
-
-.iconedit_nav_screen:before {
-  content: "\e771";
-}
-
-.iconedit_type_3d:before {
-  content: "\e772";
-}
-
-.iconedit_top_save:before {
-  content: "\e773";
-}
-
-.iconedit_type_panorama:before {
-  content: "\e774";
-}
-
-.iconedit_top_view:before {
-  content: "\e775";
-}
-
-.iconedit_videoview:before {
-  content: "\e776";
-}
-
-.iconlist_views:before {
-  content: "\e777";
-}
-
-.iconnav_scene_down:before {
-  content: "\e778";
-}
-
-.icontool_about:before {
-  content: "\e779";
-}
-
-.iconnav_scene_up:before {
-  content: "\e77a";
-}
-
-.icontool_vr:before {
-  content: "\e77b";
-}
-
-.icontool_window:before {
-  content: "\e77c";
-}
-
-.icontool_full:before {
-  content: "\e77d";
-}
-
-.iconimg_logo:before {
-  content: "\e77e";
-}
-
-.iconbs_list_cover:before {
-  content: "\e77f";
-}
-
-.iconlist_delete:before {
-  content: "\e780";
-}
-
-.iconbs_stop:before {
-  content: "\e781";
-}
-
-.iconbs_play:before {
-  content: "\e782";
-}
-
-.iconbs_list_circle:before {
-  content: "\e783";
-}
-
-.iconshow_playback:before {
-  content: "\e681";
-}
-
-.iconshow_suspension:before {
-  content: "\e683";
-}
-
-.iconshow_3d_normal:before {
-  content: "\e677";
-}
-
-.iconshow_plane_normal:before {
-  content: "\e67d";
-}
-
-.iconshow_roaming_selected:before {
-  content: "\e682";
-}
-
-.iconshow_plane_selected:before {
-  content: "\e684";
-}
-
-.iconshow_3d_selected:before {
-  content: "\e685";
-}
-
-.iconshow_roaming_normal:before {
-  content: "\e686";
-}
-
-.iconshow_function_collect:before {
-  content: "\e687";
-}
-
-.iconshow_drop-down:before {
-  content: "\e673";
-}
-

Файловите разлики са ограничени, защото са твърде много
+ 0 - 4
src/assets/images/大都:元代北京城_files/jquery-2.1.1.min.js.download


Файловите разлики са ограничени, защото са твърде много
+ 0 - 5
src/assets/images/大都:元代北京城_files/jquery.mCustomScrollbar.concat.min.js.download


+ 0 - 114
src/assets/images/大都:元代北京城_files/perfect-scrollbar.css

@@ -1,114 +0,0 @@
-/*
- * Container style
- */
- .ps {
-    overflow: hidden !important;
-    overflow-anchor: none;
-    -ms-overflow-style: none;
-    touch-action: auto;
-    -ms-touch-action: auto;
-  }
-  
-  /*
-   * Scrollbar rail styles
-   */
-  .ps__rail-x {
-    display: none;
-    opacity: 0;
-    transition: background-color .2s linear, opacity .2s linear;
-    -webkit-transition: background-color .2s linear, opacity .2s linear;
-    height: 6px;
-    /* there must be 'bottom' or 'top' for ps__rail-x */
-    bottom: 0px;
-    /* please don't change 'position' */
-    position: absolute;
-  }
-  
-  .ps__rail-y {
-    display: none;
-    opacity: 0;
-    transition: background-color .2s linear, opacity .2s linear;
-    -webkit-transition: background-color .2s linear, opacity .2s linear;
-    width: 6px;
-    /* there must be 'right' or 'left' for ps__rail-y */
-    right: 0;
-    /* please don't change 'position' */
-    position: absolute;
-  }
-  
-  .ps--active-x > .ps__rail-x,
-  .ps--active-y > .ps__rail-y {
-    display: block;
-    opacity: 0.75;
-  }
-  
-  .ps:hover > .ps__rail-x,
-  .ps:hover > .ps__rail-y,
-  .ps--focus > .ps__rail-x,
-  .ps--focus > .ps__rail-y,
-  .ps--scrolling-x > .ps__rail-x,
-  .ps--scrolling-y > .ps__rail-y {
-    opacity: 0.85;
-  }
-  
-  .ps .ps__rail-x:hover,
-  .ps .ps__rail-y:hover,
-  .ps .ps__rail-x:focus,
-  .ps .ps__rail-y:focus,
-  .ps .ps__rail-x.ps--clicking,
-  .ps .ps__rail-y.ps--clicking {
-    opacity: 0.9;
-  }
-  
-  /*
-   * Scrollbar thumb styles
-   */
-  .ps__thumb-x {
-    background-color: rgb(98, 102, 102);
-    border-radius: 6px;
-    transition: background-color .2s linear, height .2s ease-in-out;
-    -webkit-transition: background-color .2s linear, height .2s ease-in-out;
-    height: 6px;
-    /* there must be 'bottom' for ps__thumb-x */
-    bottom: 0px;
-    /* please don't change 'position' */
-    position: absolute;
-  
-  }
-  
-  .ps__thumb-y {
-    background-color: rgb(98, 102, 102);
-    border-radius: 6px;
-    transition: background-color .2s linear, width .2s ease-in-out;
-    -webkit-transition: background-color .2s linear, width .2s ease-in-out;
-    width: 6px;
-    /* there must be 'right' for ps__thumb-y */
-    right: 0px;
-    /* please don't change 'position' */
-    position: absolute;
-  }
-  
-  .ps__rail-x:hover > .ps__thumb-x,
-  .ps__rail-x:focus > .ps__thumb-x,
-  .ps__rail-x.ps--clicking .ps__thumb-x {
-    background-color: rgb(153,153,153);
-  }
-  
-  .ps__rail-y:hover > .ps__thumb-y,
-  .ps__rail-y:focus > .ps__thumb-y,
-  .ps__rail-y.ps--clicking .ps__thumb-y {
-    background-color: rgb(153,153,153);
-  }
-  
-  /* MS supports */
-  @supports (-ms-overflow-style: none) {
-    .ps {
-      overflow: auto !important;
-    }
-  }
-  
-  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
-    .ps {
-      overflow: auto !important;
-    }
-  }

Файловите разлики са ограничени, защото са твърде много
+ 0 - 6
src/assets/images/大都:元代北京城_files/perfect-scrollbar.min.js.download


Файловите разлики са ограничени, защото са твърде много
+ 0 - 2
src/assets/images/大都:元代北京城_files/sly.min.js.download


Файловите разлики са ограничени, защото са твърде много
+ 0 - 14
src/assets/images/大都:元代北京城_files/tour.js.download


Файловите разлики са ограничени, защото са твърде много
+ 25 - 11
src/components/CameraDesc.vue


+ 1 - 1
src/views/HomeView.vue

@@ -247,7 +247,7 @@ function onClickLogo() {
   >.btn-group{
     position: absolute;
     width: 100%;
-    bottom: 100px;
+    bottom: 50px;
     display: flex;
     >button.scene-entry.entry-1{
       position: absolute;

+ 74 - 135
src/views/PanoView.vue

@@ -65,7 +65,7 @@
       </div>
       <img
         class="btn-track"
-        src="@/assets/images/people-btn-track.png"
+        :src="require(`@/assets/images/people-btn-track-${sceneIdx + 1}.png`)"
         alt=""
         draggable="false"
       >
@@ -106,10 +106,10 @@
         :key="idx"
         class="camera-entry"
         :class="{
-          active: idx === activeCameraIdx
+          active: idx === (mouseEnterCameraItemIdx === -1 ? cameraIdx : mouseEnterCameraItemIdx)
         }"
-        @mouseenter="activeCameraIdx = idx"
-        @mouseleave="activeCameraIdx = sceneIdx"
+        @mouseenter="mouseEnterCameraItemIdx = idx"
+        @mouseleave="mouseEnterCameraItemIdx = -1"
         @click="router.push({
           name: route.name,
           query:{
@@ -121,18 +121,21 @@
         <span>{{ item.name }}</span>
         <img
           class="bg-normal"
-          src="@/assets/images/camera-list-item-bg.png"
+          :src="require(`@/assets/images/camera-list-item-bg-${sceneIdx + 1}.png`)"
           alt=""
           draggable="false"
         >
         <img
           class="bg-active"
-          src="@/assets/images/camera-list-item-bg-active.png"
+          :src="require(`@/assets/images/camera-list-item-bg-active-${sceneIdx + 1}.png`)"
           alt=""
           draggable="false"
         >
       </button>
-      <button class="next-camera" />
+      <button
+        class="next-camera"
+        @click="onClickNextCamera"
+      />
     </div>
     <CameraContent1
       v-if="showingContentIdx === 1"
@@ -160,6 +163,53 @@ import * as krfn from "@/libs/pano-core/index.js"
 import CameraDesc from '@/components/CameraDesc.vue'
 import CharacterDesc from '@/components/CharacterDesc.vue'
 import { defineAsyncComponent } from 'vue'
+import sceneTree from '/public/sceneTree.js'
+
+const btnReturnHomeImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/btn-return-home-${sceneIdx.value + 1}.png`) + ')'
+})
+const btnReturnHomeActiveImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/btn-return-home-active-${sceneIdx.value + 1}.png`) + ')'
+})
+
+const btnOnTrack1ImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-1.png`) + ')'
+})
+const btnOnTrack1ActiveImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-1-active.png`) + ')'
+})
+const btnOnTrack2ImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-2.png`) + ')'
+})
+const btnOnTrack2ActiveImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-2-active.png`) + ')'
+})
+const btnOnTrack3ImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-3.png`) + ')'
+})
+const btnOnTrack3ActiveImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-3-active.png`) + ')'
+})
+const btnOnTrack4ImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-4.png`) + ')'
+})
+const btnOnTrack4ActiveImgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-4-active.png`) + ')'
+})
+
+const cameraListBgUrl = computed(() => {
+  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-list-bg-${sceneIdx.value + 1}.png`) + ')'
+})
+
+const btnOnTrack1Name = computed(() => {
+  return currentCameraList.value[cameraIdx.value].contentPageBtnNameList[0]
+})
+const btnOnTrack2Name = computed(() => {
+  return currentCameraList.value[cameraIdx.value].contentPageBtnNameList[1]
+})
+const btnOnTrack3Name = computed(() => {
+  return currentCameraList.value[cameraIdx.value].contentPageBtnNameList[2]
+})
 
 const CameraContent1 = defineAsyncComponent(() =>
   import(`@/components/CameraContent-${Number(route.query.sceneIdx) + 1}-${Number(route.query.cameraIdx) + 1}-1.vue`)
@@ -171,7 +221,6 @@ const CameraContent3 = defineAsyncComponent(() =>
   import(`@/components/CameraContent-${Number(route.query.sceneIdx) + 1}-${Number(route.query.cameraIdx) + 1}-3.vue`)
 )
 
-
 const {
   windowSizeInCssForRef,
   windowSizeWhenDesignForRef,
@@ -219,131 +268,21 @@ function onClickCharacter() {
   }
 }
 
-const sceneList = ref([
-  {
-    sceneName: '大汗之城',
-    cameraList: [
-      {
-        name: '雄伟帝都',
-        // panoCode: 'WK1730511898643845120',
-        panoCode: 'WK1730428603763576832',
-        contentPageBtnNameList: [
-          '整体设计与规划',
-          '营都人员与机构',
-          '史料中的元大都',
-        ],
-      },
-      {
-        name: '大都宫阙',
-        panoCode: 'WK1730165377477955584',
-        contentPageBtnNameList: [
-          '皇城与宫城',
-          '皇城内的建筑布局',
-          '忽必烈召见赵孟頫',
-        ],
-      },
-      {
-        name: '大都览胜',
-        panoCode: 'WK1730164600466362368',
-        contentPageBtnNameList: [
-          '大都城内的寺庙建筑',
-          '大都城内的官署机构',
-          '重要建筑构件',
-        ],
-      },
-    ]
-  },
-  {
-    sceneName: '河润大都',
-    cameraList: [
-      {
-        name: '通惠河畅',
-        contentPageBtnNameList: [
-          '大运河的历史演变',
-          '元大都用水水系',
-          '水利专家及对通惠河段的治理',
-        ],
-      },
-      {
-        name: '舳舻蔽水',
-        contentPageBtnNameList: [
-          '菏泽沉船',
-          '磁县漕船',
-          '聊城古船',
-        ],
-      },
-      {
-        name: '繁华富庶',
-        contentPageBtnNameList: [
-          '造福百姓',
-          '元代瓷器的发展',
-          ' 商品贸易中的货币',
-        ],
-      },
-    ]
-  },
-  {
-    sceneName: '大都风华',
-    cameraList: [
-      {
-        name: '文人雅集',
-        contentPageBtnNameList: [
-          '元代文化艺术的发展',
-          '上流社会的雅集盛会',
-          '百工精巧',
-        ],
-      },
-      {
-        name: '曲苑杂剧',
-        contentPageBtnNameList: [
-          '元曲的文化成就',
-          '著名元曲作家与作品',
-          '表演元曲的著名演员',
-        ],
-      },
-    ]
-  },
-])
 const currentCameraList = computed(() => {
-  return sceneList.value[sceneIdx.value].cameraList
-})
-const activeCameraIdx = ref(sceneIdx.value)
-
-const btnOnTrack1ImgUrl = computed(() => {
-  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-1.png`) + ')'
-})
-const btnOnTrack1ActiveImgUrl = computed(() => {
-  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-1-active.png`) + ')'
-})
-const btnOnTrack2ImgUrl = computed(() => {
-  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-2.png`) + ')'
-})
-const btnOnTrack2ActiveImgUrl = computed(() => {
-  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-2-active.png`) + ')'
-})
-const btnOnTrack3ImgUrl = computed(() => {
-  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-3.png`) + ')'
-})
-const btnOnTrack3ActiveImgUrl = computed(() => {
-  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-3-active.png`) + ')'
-})
-const btnOnTrack4ImgUrl = computed(() => {
-  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-4.png`) + ')'
-})
-const btnOnTrack4ActiveImgUrl = computed(() => {
-  return `url(${process.env.VUE_APP_CLI_MODE === 'dev' ? '' : '../'}` + require(`@/assets/images/camera-btn-${sceneIdx.value + 1}-${cameraIdx.value + 1}-4-active.png`) + ')'
+  return sceneTree[sceneIdx.value].cameraList
 })
 
-const btnOnTrack1Name = computed(() => {
-  return currentCameraList.value[cameraIdx.value].contentPageBtnNameList[0]
-})
-const btnOnTrack2Name = computed(() => {
-  return currentCameraList.value[cameraIdx.value].contentPageBtnNameList[1]
-})
-const btnOnTrack3Name = computed(() => {
-  return currentCameraList.value[cameraIdx.value].contentPageBtnNameList[2]
-})
+const mouseEnterCameraItemIdx = ref(-1)
 
+function onClickNextCamera() {
+  router.push({
+    name: route.name,
+    query: {
+      sceneIdx: sceneIdx.value + 1,
+      cameraIdx: cameraIdx.value,
+    }
+  })
+}
 
 /**
  * 全景图
@@ -481,9 +420,9 @@ onMounted(() => {
 
 onBeforeRouteUpdate((to, from) => {
   console.log('to: ', to)
-  if (to.name === route.name) {
-    loadScene(Number(to.query.sceneIdx), Number(to.query.cameraIdx))
-  }
+  // if (to.name === route.name) {
+  //   loadScene(Number(to.query.sceneIdx), Number(to.query.cameraIdx))
+  // }
 })
 </script>
 
@@ -507,12 +446,12 @@ onBeforeRouteUpdate((to, from) => {
     height: 77px;
     top: 43px;
     right: 51px;
-    background-image: url(@/assets/images/btn-return-home.png);
+    background-image: v-bind(btnReturnHomeImgUrl);
     background-size: cover;
     background-repeat: no-repeat;
     background-position: center center;
     &:hover{
-      background-image: url(@/assets/images/btn-return-home-active.png);
+      background-image: v-bind(btnReturnHomeActiveImgUrl);
     }
   }
   >.camera-desc{
@@ -679,7 +618,7 @@ onBeforeRouteUpdate((to, from) => {
     right: 0;
     width: calc(1346 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
     height: calc(161 / v-bind('windowSizeWhenDesignForRef') * v-bind('windowSizeInCssForRef'));
-    background-image: url(@/assets/images/camera-list-bg.png);
+    background-image: v-bind(cameraListBgUrl);
     background-size: cover;
     background-repeat: no-repeat;
     background-position: center center;