原文地址:点击打开链接

Viewer request volume 视景器请求体

A tile's viewerRequestVolume can be used for combining heterogeneous datasets, and can be combined with external tilesets.

一个瓦片的viewerRequestVolume可用于兼容异构数据集和外部瓦片集。

The following example has a building in a b3dm tile and a point cloud inside the building in a pnts tile. The point cloud tile's boundingVolume is a sphere with a radius of 1.25. It also has a larger sphere with a radius of 15 for the viewerRequestVolume. Since the geometricError is zero, the point cloud tile's content is always rendered (and initially requested) when the viewer is inside the large sphere defined by viewerRequestVolume.

下面的示例中有一个建筑物在b3dm文件中,一个建筑物中的点云在pnts文件中。点云瓦片的boundingVolume是一个半径1.25的球,它还有一个半径15的球作为viewerRequestVolume。由于geometricError的值为0,当视景器进入viewerRequestVolume定义的较大球体时,点云数据从最初请求开始一直被渲染出来。

"children": [{"transform": [4.843178171884396,   1.2424271388626869, 0,                  0,-0.7993325488216595,  3.1159251367235608, 3.8278032889280675, 0,0.9511533376784163, -3.7077466670407433, 3.2168186118075526, 0,1215001.7612985559, -4736269.697480114,  4081650.708604793,  1],"boundingVolume": {"box": [0,     0,    6.701,3.738, 0,    0,0,     3.72, 0,0,     0,    13.402]},"geometricError": 32,"content": {"url": "building.b3dm"}
}, {"transform": [0.968635634376879,    0.24848542777253732, 0,                  0,-0.15986650990768783,  0.6231850279035362,  0.7655606573007809, 0,0.19023066741520941, -0.7415493329385225,  0.6433637229384295, 0,1215002.0371330238,  -4736270.772726648,   4081651.6414821907, 1],"viewerRequestVolume": {"sphere": [0, 0, 0, 15]},"boundingVolume": {"sphere": [0, 0, 0, 1.25]},"geometricError": 0,"content": {"url": "points.pnts"}
}]

tileset.json

tileset.json文件

tileset.json defines a tileset. Here is a subset of the tileset.json used for Canary Wharf (also see the complete tileset.json):

tileset.json定义一个瓦片集。下面是Canary Wharf的tileset.json文件中一部分:

{"asset" : {"version": "0.0","tilesetVersion": "e575c6f1-a45b-420a-b172-6449fa6e0a59","gltfUpAxis": "Y"},"properties": {"Height": {"minimum": 1,"maximum": 241.6}},"geometricError": 494.50961650991815,"root": {"boundingVolume": {"region": [-0.0005682966577418737,0.8987233516605286,0.00011646582098558159,0.8990603398325034,0,241.6]},"geometricError": 268.37878244706053,"content": {"url": "0/0/0.b3dm","boundingVolume": {"region": [-0.0004001690908972599,0.8988700116775743,0.00010096729722787196,0.8989625664878067,0,241.6]}},"children": [..]}
}

The top-level object in tileset.json has four properties: asset, properties, geometricError, and root.

tileset.json的顶级对象有四个属性:assetpropertiesgeometricErrorroot

asset is an object containing properties with metadata about the entire tileset. Its version property is a string that defines the 3D Tiles version. The version defines the JSON schema for tileset.json and the base set of tile formats. The tilesetVersion property is an optional string that defines an application-specific version of a tileset, e.g., for when an existing tileset is updated. The gltfUpAxis property is an optional string that specifies the up-axis of glTF models contained in the tileset.

asset对象包含整个瓦片集元数据属性,它的version属性是一个定义3D Tiles版本的字符串。版本定义了tileset.json的JSON模式和瓦片格式的基本集合。tilesetVersion是一个可选的字符串属性,定义瓦片集的专业版本号,例如用于当前瓦片集更新时。gltfUpAxis属性是一个可选的字符串属性,指定瓦片集中glTF模型的向上坐标轴。

properties is an object containing objects for each per-feature property in the tileset. This tileset.json snippet is for 3D buildings, so each tile has building models, and each building model has a Height property (see Batch Table). The name of each object in properties matches the name of a per-feature property, and defines its minimum and maximum numeric values, which are useful, for example, for creating color ramps for styling.

properties是一个对象,包含了瓦片集中每一个要素属性对象。上述tileset.json片段是针对3D建筑物的,所以每个瓦片都有建筑物模型,每个建筑物模型都有Height属性。properties属性中每个对象的名字都和要素属性的名字相匹配,并且定义了它的minimum最小和maximum最大数值,用于为样式创建色带时。

geometricError is a nonnegative number that defines the error, in meters, when the tileset is not rendered.

geometricError属性是一个非负数字,定义了一个以米为单位的误差,在这个误差下瓦片集不被渲染。

root is an object that defines the root tile using the JSON described in the above section. root.geometricError is not the same as tileset.json's top-level geometricError. tileset.json's geometricError is the error when the entire tileset is not rendered; root.geometricError is the error when only the root tile is rendered.

root是一个定义根瓦片的对象。root.geometricError与tileset.json中顶层geometricError不同。后者是整个瓦片集不被渲染的误差,前者是只有根瓦片被渲染的误差。

root.children is an array of objects that define child tiles. Each child tile has a boundingVolume fully enclosed by its parent tile's boundingVolume and, generally, a geometricError less than its parent tile's geometricError. For leaf tiles, the length of this array is zero, and children may not be defined.

root.children是定义子瓦片的对象数组。每个子瓦片都有一个被其父瓦片boundingVolume包围的boundingVolume和一个通常小于父瓦片geometricErrorgeometricError。对于叶子瓦片root.children的长度是0,children可能未定义。

3D Tiles 介绍(三)相关推荐

  1. 3D Tiles介绍(一)

    原文地址:点击打开链接 Spec status The 3D Tiles spec is pre-1.0 (indicated by "version": "0.0&qu ...

  2. 全面了解3D Tiles

    一.3D Tiles介绍 Cesium是一个虚拟地球三维平台,可视化范围上至太空中每一颗卫星,下至地面上每一幢建筑物.为了实现数字地球(Digital Earth vision)的蓝图,使连接世界上的 ...

  3. 3D Tiles 1.1规范【中文版】

    本文档描述了 3D Tiles 1.1规范,这是一种用于流式传输大量异构 3D 地理空间数据集的开放标准.本规范中文版由BimAnt翻译整理. 1.3D Tiles介绍 3D Tiles 专为流式传输 ...

  4. cesium之3D tiles格式介绍

    文章目录 1. 介绍 2. 文件扩展和MIME类型 3. JSON编码 4. URIs 5. 单位 6. 概念 6.1 坐标参考系 6.2 瓦片 6.2.1 几何误差 6.2.2 细化 6.2.2.1 ...

  5. 3D Tiles 简单介绍

    3D Tiles是用于流式传输大规模异构3D地理空间数据集的开放规范.为了扩展Cesium的地形和图像流,3D Tiles将用于流式传输3D内容,包括建筑物,树木,点云和矢量数据. 3D Tiles ...

  6. cesium之3D Tiles Next(下一代的3D Tiles)介绍

    文章目录 1. 概述 2. 元数据的有效流式传输 2.1 类型系统 2.2 不同层级 2.3 语义规范 3. 空间索引增强 3.1 隐式分割 3.2 S2分割算法 4.复合内容分层 5. 与glTF的 ...

  7. cesium入门(三)添加3D Tiles,并调整位置,贴地

    一.3D Tiles是什么 3D Tiles数据集以分块.分级渲染,将大数据量三维数据以分块.分层形式组织起来,可以大量减轻浏览器和GPU的负担,3D Tiles包括建筑物.树木.点云和矢量数据. 二 ...

  8. Udacity机器人软件工程师课程笔记(十九) - 3D感知介绍 - 主动/被动式传感器、RGB-D相机、点云

    3D感知介绍 目录 传感器 RGB-D相机 点云 1.传感器 主动式传感器是指向目标发射电磁波,然后收集从目标反射回来的电磁波信息的传感器,如合成孔径雷达等. 被动式传感器指只能收集地而目标反时来自太 ...

  9. 进一步学习 Cesium 和 3D Tiles 数据相关

    接此: https://blog.csdn.net/bcbobo21cn/article/details/112464630 如下一段代码:也能加载出3D Tiles数据:此段代码和前文的有些相似: ...

最新文章

  1. 教你怎么在Dreamweaver中创建数据库
  2. 《MySQL技术内幕:InnoDB存储引擎第2版》——3.1 参数文件
  3. Kali Linux 2020.1b发布了
  4. ssm框架app管理平台_后端程序员跨平台应用的前端框架uni-app初探
  5. java math round小数_Java Math round() 使用方法及示例
  6. matlab 三维模型怎么导入ansys,Ansys怎么导入模型?Ansys导入模型的方法
  7. boost::icl模块interval_map 的最简单示例是重叠计数器
  8. zoj 1115 Digital Roots
  9. oracle数据库触发器删除不,Oracle之后删除触发器
  10. CSS基础「七」精灵图 \ 字体图标 \ 三角 \ 用户界面样式 \ 页面初始化
  11. 构建之法第4.17章读书笔记
  12. introduction of servlet filter
  13. 八年测开经验面试28K公司后,吐血整理出高频面试题和答案
  14. vue分享卡住_【面经分享】华为测试工程师面经
  15. Linux下C语言开发环境的搭建
  16. 联想小新i1000拆机图解_小白晒小白:Lenovo 联想 小新 I1000 笔记本电脑
  17. 如何下载江苏省卫星地图高清版大图
  18. cf1299C-Water Balance
  19. Senparc.Weixin.MP SDK 微信公众平台开发教程(一):微信公众平台注册
  20. comet 简单了解

热门文章

  1. Linux安装Mysql5.5
  2. 黑白,照片滤镜,通道混合器,阈值,渐变映射,可选颜色,阴影高光,去色,匹配颜色
  3. 最近演唱会挺多的,今天就分享下怎么用Python自动抢票吧!
  4. thinkphp设置.html,thinkphp生成静态页面
  5. 如何查看CPU指令集
  6. C#中如何绘制一个四分之一的圆锥
  7. express app.set()
  8. python 基础 字符串烧烤流程
  9. 深度体验:6.2英寸大屏手机三星S8+ 让你玩到爽
  10. 程序员的思维,难以逗内室欢颜