博客
关于我
Cesium案例解析(六)——3DTilesInspector监视器
阅读量:272 次
发布时间:2019-03-01

本文共 2116 字,大约阅读时间需要 7 分钟。

文章目录

1. 概述

3D Tiles作为传输和渲染大规模3D地理空间数据的格式,应对的都是大规模数据的场景,Cesium提供了一个监视3D Tiles数据的监视器,可以通过这个监视器观察3D Tiles数据的效果。

2. 案例

HTML页面3DTilesInspector.html代码如下:

<!DOCTYPE html><html lang="en"><head>    <meta charset="utf-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport"        content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">    <meta name="description" content="Use the 3D Tiles inspector as a debugging tool for different tilesets.">    <meta name="cesium-sandcastle-labels" content="Beginner, Tutorials, Showcases">    <title>Cesium Demo</title>    <script type="text/javascript" src="../Build/Cesium/Cesium.js"></script>    <style>        @import url(../Build/Cesium/Widgets/widgets.css);        html,        body {                width: 100%;            height: 100%;            margin: 0;            padding: 0;            overflow: hidden;            font-family: sans-serif;            background: #000;        }        .fullSize {                display: block;            position: absolute;            top: 0;            left: 0;            border: none;            width: 100%;            height: 100%;        }    </style></head><body>    <div id="cesiumContainer" class="fullSize"></div>    <script src="3DTilesInspector.js"></script></body></html>

主要的javascript代码3DTilesInspector.js如下:

'use strict';var viewer = new Cesium.Viewer('cesiumContainer', {       terrainProvider: Cesium.createWorldTerrain()});viewer.scene.globe.depthTestAgainstTerrain = true;viewer.extend(Cesium.viewerCesium3DTilesInspectorMixin);var inspectorViewModel = viewer.cesium3DTilesInspector.viewModel;var tileset = new Cesium.Cesium3DTileset({       url: "../dayanta/tileset.json"});viewer.scene.primitives.add(tileset);tileset.readyPromise.then(function () {       viewer.zoomTo(tileset);});

可以看到添加3DTiles监视器的代码比较简单,将Cesium.viewerCesium3DTilesInspectorMixin对象传入拓展函数viewer.extend()即可。最终显示的效果如下:

3DTiles监视器

可以看到右边出现了一个3D Tiles Inspector窗体,里面包含了与3D Tiles格式相关的状态参数:

3DTiles监视器

其中勾选Performance,就可以显示当前的具体帧数;Screen Space Error也是个很重要的参数,决定了当前模型细分的层级。参数设置的越小,细分的层度就会越高,相应的也会耗费更多的性能。

转载地址:http://mawx.baihongyu.com/

你可能感兴趣的文章
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>
MySQL 8.0 恢复孤立文件每表ibd文件
查看>>
MySQL 8.0开始Group by不再排序
查看>>
mysql ansi nulls_SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON 什么意思
查看>>
multi swiper bug solution
查看>>
MySQL Binlog 日志监听与 Spring 集成实战
查看>>
MySQL binlog三种模式
查看>>
multi-angle cosine and sines
查看>>
Mysql Can't connect to MySQL server
查看>>
mysql case when 乱码_Mysql CASE WHEN 用法
查看>>
Multicast1
查看>>
mysql client library_MySQL数据库之zabbix3.x安装出现“configure: error: Not found mysqlclient library”的解决办法...
查看>>
MySQL Cluster 7.0.36 发布
查看>>
Multimodal Unsupervised Image-to-Image Translation多通道无监督图像翻译
查看>>
MySQL Cluster与MGR集群实战
查看>>
multipart/form-data与application/octet-stream的区别、application/x-www-form-urlencoded
查看>>
mysql cmake 报错,MySQL云服务器应用及cmake报错解决办法
查看>>
Multiple websites on single instance of IIS
查看>>
mysql CONCAT()函数拼接有NULL
查看>>
multiprocessing.Manager 嵌套共享对象不适用于队列
查看>>