最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue使用cesium創(chuàng)建數據白模方式

 更新時間:2023年10月31日 10:57:06   作者:Demain-  
這篇文章主要介紹了vue使用cesium創(chuàng)建數據白模方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

使用cesium創(chuàng)建數據白模

引入cesium

引入cesium.js相關資源,這這里說明一下為什么沒有使用npm install cesium,因為使用npm下載cesium,打包的時候文件太大了,所以在這里使用了cdn引入的方式;

<link  rel="external nofollow"    rel="stylesheet">
<script src="https://cesium.com/downloads/cesiumjs/releases/1.74/Build/Cesium/Cesium.js"></script>

使用

在使用的頁面引入widgets.css,也可以直接在main.js中直接引入

<template>
  <div class="">
    <div id="cesiumContainer">
    </div>
  </div>
</template>
<script>
import 'cesium/Build/Cesium/Widgets/widgets.css';
 
export default {
  name: 'HelloWorld',
  data() {
    return {
      viewer:null
    }
  },
  mounted(){
    this.initCesium()
  },
  methods:{
    initCesium(){
      Cesium.Ion.defaultAccessToken = "申請的token"; 
      Cesium.Camera.DEFAULT_VIEW_RECTANGLE = Cesium.Rectangle.fromDegrees( 90, -20, 110, 90); //西南東北,默認顯示中國
      this.viewer = new Cesium.Viewer('cesiumContainer', {
        imageryProvider: new Cesium.ArcGisMapServerImageryProvider({
          url: 'https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer'
        }),
        animation: false,
        timeline: false,  //時間線
        fullscreenButton: true,  //全屏模式
        infoBox: false,  //要素信息框
        homeButton: false, //顯示主頁
        geocoder: true, //搜索位置
        sceneModePicker: true,//模式切換
        selectionIndicator: true, //展示三維的指示器
        navigationHelpButton: false, //幫助按鈕
        navigationInstructionsInitiallyVisible: false
      });
      // var longitude = 113.3061993318322; //地圖設置默認位置
      // var latitude = 22.97302468714043;
      var height = -1.1406325468715177e-9;
      var heading = 0;
      var tileset = new Cesium.Cesium3DTileset({
        url:'https://lab.earthsdk.com/model/702aa950d03c11e99f7ddd77cbe22fea/tileset.json', //測試數據上海東方明珠建筑數據
      
        maximumMemoryUsage: 100,//不可設置太高,目標機子空閑內存值以內,防止瀏覽器過于卡
        maximumScreenSpaceError: 32,//用于驅動細節(jié)細化級別的最大屏幕空間錯誤;較高的值可提供更好的性能,但視覺質量較低。
        maximumNumberOfLoadedTiles: 1000,  //最大加載瓦片個數
        shadows: false,//是否顯示陰影
        skipLevelOfDetail: true,// 確定是否應在遍歷期間應用詳細級別跳過(默認false)
        baseScreenSpaceError: 1024,//When skipLevelOfDetailis true,在跳過詳細級別之前必須達到的屏幕空間錯誤(默認1024)
        skipScreenSpaceErrorFactor: 16,// 定義要跳過的最小屏幕空間錯誤的乘數。與 一起使用skipLevels來確定要加載哪些圖塊(默認16)
        skipLevels: 1,//skipLevelOfDetail是true 一個常量,定義了加載圖塊時要跳過的最小級別數。為 0 時,不跳過任何級別。與 一起使用skipScreenSpaceErrorFactor來確定要加載哪些圖塊。(默認1)
        immediatelyLoadDesiredLevelOfDetail: false,//當skipLevelOfDetail是時true,只會下載滿足最大屏幕空間錯誤的圖塊。忽略跳過因素,只加載所需的圖塊(默認false)
        loadSiblings: false,// 如果為true則不會在已加載完概況房屋后,自動從中心開始超清化房屋 --- 何時確定在遍歷期間skipLevelOfDetail是否true始終下載可見瓦片的兄弟姐妹(默認false)
        cullWithChildrenBounds: true,//是否使用子邊界體積的并集來剔除瓦片(默認true)
        dynamicScreenSpaceError: true,//減少距離相機較遠的圖塊的屏幕空間錯誤(默認false)
        dynamicScreenSpaceErrorDensity: 0.00278,//數值加大,能讓周邊加載變快 --- 用于調整動態(tài)屏幕空間誤差的密度,類似于霧密度(默認0.00278)
        dynamicScreenSpaceErrorFactor: 4.0,// 用于增加計算的動態(tài)屏幕空間誤差的因素(默認4.0)
        dynamicScreenSpaceErrorHeightFalloff: 0.25//密度開始下降的瓦片集高度的比率(默認0.25)
      });
      this.viewer.scene.primitives.add(tileset);
      tileset.readyPromise.then(function(argument) {
        var position = Cesium.Cartesian3.fromDegrees(longitude, latitude, height);
        var mat = Cesium.Transforms.eastNorthUpToFixedFrame(position);
        var rotationX = Cesium.Matrix4.fromRotationTranslation(Cesium.Matrix3.fromRotationZ(Cesium.Math.toRadians(heading)));
        Cesium.Matrix4.multiply(mat, rotationX, mat);
        tileset._root.transform = mat;
        this.viewer.camera.flyTo({destination: Cesium.Cartesian3.fromDegrees(longitude, latitude, height + 1000)});
      });
   
    },
  }
}
</script>
<style lang="scss" scoped>
#cesiumContainer{
  width: 100%;
  height: 1000px;
}
</style>

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • vue底部加載更多的實例代碼

    vue底部加載更多的實例代碼

    本文通過實例代碼給大家介紹了vue底部加載更多,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-06-06
  • 從0到1解鎖Element-Plus組件二次封裝El-Dialog動態(tài)調用的原理解析

    從0到1解鎖Element-Plus組件二次封裝El-Dialog動態(tài)調用的原理解析

    作者通過二次封裝Element-Plus的el-dialog組件,實現動態(tài)顯示與數據傳遞功能,提升項目靈活性和代碼復用性,適用于用戶編輯、文件上傳確認、權限管理等多場景需求,本文給大家介紹從0到1解鎖Element-Plus組件二次封裝El-Dialog動態(tài)調用的原理解析,感興趣的朋友一起看看吧
    2025-07-07
  • vue文本識別"\n"換行問題的解決方式

    vue文本識別"\n"換行問題的解決方式

    在頁面中經常會遇到自定義文本,如果文本過長就需要換行,在HTML中可以通過標簽換行,也可以通過\n轉椅字符換行,下面這篇文章主要給大家介紹了關于vue文本識別“\n”換行問題的解決方式,需要的朋友可以參考下
    2022-11-11
  • el-table實現轉置表格的示例代碼(行列互換)

    el-table實現轉置表格的示例代碼(行列互換)

    這篇文章主要介紹了el-table實現轉置表格的示例代碼(行列互換),本文結合示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-02-02
  • Vue中使用vux的配置詳解

    Vue中使用vux的配置詳解

    這篇文章主要為大家詳細介紹了Vue中使用vux配置的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Vue.js?的計算屬性和偵聽器詳解(提升數據處理與交互的關鍵工具)

    Vue.js?的計算屬性和偵聽器詳解(提升數據處理與交互的關鍵工具)

    在Vue.js開發(fā)中,計算屬性與偵聽器是極為關鍵的特性,它們極大地提升了數據處理與交互邏輯實現的便捷性和高效性,本文給大家介紹Vue.js?的計算屬性和偵聽器:提升數據處理與交互的關鍵工具,感興趣的朋友一起看看吧
    2025-04-04
  • 在Vue2項目中使用Mock.js的詳細教程

    在Vue2項目中使用Mock.js的詳細教程

    Mock.js?是一個用于生成隨機數據和攔截?Ajax?請求的?JavaScript?庫,它非常適合在前端開發(fā)中模擬后端?API,尤其是在前后端分離的開發(fā)模式下,本文給大家介紹了如何在Vue2項目中使用Mock.js,需要的朋友可以參考下
    2024-10-10
  • vue3-ace-editor如何配置語法

    vue3-ace-editor如何配置語法

    這篇文章主要介紹了vue3-ace-editor如何配置語法問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • 詳解Vue.js 可拖放文本框組件的使用

    詳解Vue.js 可拖放文本框組件的使用

    這篇文章主要介紹了詳解Vue.js 可拖放文本框組件的相關資料,幫助大家更好的理解和學習使用vue框架,感興趣的朋友可以了解下
    2021-03-03
  • vscode中prettier和eslint換行縮進沖突的問題

    vscode中prettier和eslint換行縮進沖突的問題

    這篇文章主要介紹了vscode中prettier和eslint換行縮進沖突的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10

最新評論

庆云县| 普兰店市| 巴楚县| 德钦县| 绥滨县| 台北县| 龙南县| 柳江县| 巴马| 西贡区| 望谟县| 察隅县| 东源县| 剑河县| 淄博市| 英德市| 苏州市| 赤峰市| 永平县| 安仁县| 阿城市| 灵丘县| 西吉县| 安义县| 轮台县| 阳山县| 景宁| 漯河市| 延安市| 安图县| 吴川市| 密云县| 文登市| 平顺县| 遂昌县| 武穴市| 龙里县| 怀来县| 赣榆县| 平度市| 望城县|