cesium--3d-tiles译文[官方]
前言
3d-tiles文件是cesium官方和開(kāi)源社區(qū)發(fā)布的專用格式.要想深刻體會(huì),還的看官方原文檔.借此機(jī)會(huì)翻譯,以便日后查用.
譯文
3d tiles 格式規(guī)范 2018年6月6日 版本1.0
目錄
Introduction#簡(jiǎn)介
File extensions and MIME types#文件擴(kuò)展和MIME類型
JSON encoding#json編碼
URIs#路徑
Units#模塊
Coordinate reference system (CRS)#坐標(biāo)參考系
Concepts#概念理解
Declarative styling specification#聲明性樣式規(guī)范
Property reference#屬性引用
License#許可證
Introduction#簡(jiǎn)介
3D tiles被設(shè)計(jì)用于流媒體和渲染大量3D地理空間內(nèi)容,如攝影測(cè)量、3D建筑、BIM/CAD、實(shí)例特征和點(diǎn)云。它定義了一個(gè)層次數(shù)據(jù)結(jié)構(gòu)和一組提供可渲染內(nèi)容的平鋪格式。3D tiles沒(méi)有為內(nèi)容的可視化定義明確的規(guī)則;客戶機(jī)可以可視化3D tiles數(shù)據(jù)使它看起來(lái)合適.在3d tiles中,圖塊集是一組圖塊,它們組織在一個(gè)空間數(shù)據(jù)結(jié)構(gòu)(樹(shù))中,tileset由至少一個(gè)包含tileset元數(shù)據(jù)的tileset json文件和一個(gè)tile對(duì)象樹(shù)描述,每個(gè)tileset對(duì)象樹(shù)可以引用以下格式之一的可渲染內(nèi)容:
| Batched 3D Model(b3dm) | 異構(gòu)三維模型。例如,紋理地形和表面、三維建筑外觀和內(nèi)部、大型模型 |
| Instanced 3D Model (i3dm) | 三維模型實(shí)例。例如樹(shù)木、風(fēng)車(chē)、螺栓 |
| Point Cloud (pnts) | 大量點(diǎn)云數(shù)據(jù) |
| Composite (cmpt) | 將不同格式的圖塊連接到一個(gè)圖塊中 |
Tileset可以使用類似于光柵和矢量平鋪方案(如Web地圖平鋪服務(wù)(WMT)或XYZ方案)的二維空間平鋪方案,該方案在多個(gè)詳細(xì)級(jí)別(或縮放級(jí)別)上為預(yù)定義的平鋪提供服務(wù)。然而,由于tileset的內(nèi)容通常是不均勻的,或者可能不容易組織為二維的,因此樹(shù)可以是任何具有空間相關(guān)性的空間數(shù)據(jù)結(jié)構(gòu),包括k-d樹(shù)、四叉樹(shù)、八叉樹(shù)和網(wǎng)格.或者,可以將三維平鋪樣式或樣式應(yīng)用于平鋪集。樣式定義要計(jì)算的表達(dá)式,用于修改每個(gè)特征的顯示方式.
File extensions and MIME types#文件擴(kuò)展和MIME類型
3d tiles 用以下文件擴(kuò)展名和MIME消息類型,
tileset文件用.json的擴(kuò)展文件和application/json的mime消息類型
tile內(nèi)容文件使用特定于其平鋪格式規(guī)范的文件類型和MIME格式,
tileset樣式的文件使用.json擴(kuò)展名和application/json mime類型,
顯式文件擴(kuò)展名是可選的。有效的實(shí)現(xiàn)可以忽略它,
并通過(guò)其頭中的magic字段標(biāo)識(shí)內(nèi)容的格式
JSON encoding#json編碼
3D titles對(duì)JSON格式和編碼有以下限制。
JSON必須使用不帶BOM的UTF-8編碼。
此規(guī)范中定義的所有字符串(屬性名、枚舉)僅使用ASCII字符集,必須以純文本形式寫(xiě)入。
JSON對(duì)象中的名稱(鍵)必須是唯一的,即不允許重復(fù)鍵
URIs#路徑
3D titles使用uri引用titles內(nèi)容。這些URI可能指向相對(duì)外部引用(rfc3986),也可能是將資源嵌入JSON中的數(shù)據(jù)URI。嵌入式資源使用“數(shù)據(jù)”URI方案(RFC2397)。當(dāng)URI是相對(duì)的時(shí),它的基總是相對(duì)于引用的tileset json文件。客戶端實(shí)現(xiàn)需要支持相關(guān)的外部引用和嵌入資源。或者,客戶端實(shí)現(xiàn)可以支持其他方案(如http://)。所有URI必須有效且可解析
Units#模塊
所有直線距離的單位是米。
所有角度都是弧度
Coordinate reference system (CRS)#坐標(biāo)參考系
3D titles使用右手笛卡爾坐標(biāo)系;也就是說(shuō),x和y的叉積產(chǎn)生z。
titles將z軸定義為局部笛卡爾坐標(biāo)系的向上軸。
Tileset的全球坐標(biāo)系通常位于WGS 84地心固定(ECEF)參考框架(EPSG 4979)中,
但不必如此,例如,發(fā)電廠可以在其本地坐標(biāo)系中完全定義,
以便與沒(méi)有地理空間背景的建模工具一起使用。
可以應(yīng)用附加的titles轉(zhuǎn)換將titles的局部坐標(biāo)系轉(zhuǎn)換為父圖塊的坐標(biāo)系。
區(qū)域邊界體積使用地理坐標(biāo)系(緯度、經(jīng)度、高度)指定邊界,
特別是EPSG 4979
Concepts#概念理解
1) titles
tiles由元數(shù)據(jù)組成,用于確定是否呈現(xiàn)tile、對(duì)可渲染內(nèi)容的引用以及任何子tile的數(shù)組
2) Geometric error
titles被構(gòu)造成一個(gè)包含層次細(xì)節(jié)級(jí)別(chlod)的樹(shù),這樣在運(yùn)行時(shí),
客戶機(jī)實(shí)現(xiàn)需要確定圖塊是否足夠詳細(xì)以進(jìn)行渲染,以及
titles的內(nèi)容是否應(yīng)該由更高分辨率的子圖塊依次進(jìn)行細(xì)化。
一個(gè)實(shí)現(xiàn)將考慮最大允許屏幕空間錯(cuò)誤(SSE),即以像素度量的錯(cuò)誤.
…后面就不翻譯了,太高端了,翻譯了也不懂
3) Refinement(優(yōu)化)
Replacement(替換優(yōu)化)
如果一個(gè)titles使用替換優(yōu)化,則在進(jìn)行優(yōu)化時(shí),它會(huì)使其子項(xiàng)取代自身
Additive(增加優(yōu)化)
如果titles使用附加優(yōu)化,則在優(yōu)化后,它會(huì)同時(shí)呈現(xiàn)自身及其子項(xiàng)
Bounding volumes
邊界定義為了支持各種數(shù)據(jù)集(如規(guī)則分割的地形、與經(jīng)緯線不對(duì)齊的城市或任意點(diǎn)云)
邊界體積類型包括定向邊界框、邊界球和由最小和最大緯度、經(jīng)度和高度定義的地理區(qū)域
Region#區(qū)域
boundingvolume.region屬性是一個(gè)由六個(gè)數(shù)字組成的數(shù)組,這些數(shù)字用緯度、經(jīng)度和高度坐標(biāo)定義邊界地理區(qū)域,順序?yàn)閇西、南、東、北、最小高度、最大高度]。緯度和經(jīng)度在EPSG 4979中定義的WGS 84基準(zhǔn)中,以弧度表示。高度以WGS 84橢球體以上(或以下)米為單位
“boundingVolume”: {
“region”: [
-1.3197004795898053,
0.6988582109,
-1.3196595204101946,
0.6988897891,
0,
20
]
}
Box#盒子
boundingvolume.box屬性是一個(gè)由12個(gè)數(shù)字組成的數(shù)組,該數(shù)組在z軸向上的右手三軸(x,y,z)笛卡爾坐標(biāo)系中定義定向邊界框。前三個(gè)元素定義了框中心的x、y和z值。接下來(lái)的三個(gè)元素(帶有索引3、4和5)定義X軸方向和半長(zhǎng)度。接下來(lái)的三個(gè)元素(索引6、7和8)定義Y軸方向和半長(zhǎng)度。最后三個(gè)元素(索引9、10和11)定義Z軸方向和半長(zhǎng)度
“boundingVolume”: {
“box”: [
0, 0, 10,
100, 0, 0,
0, 100, 0,
0, 0, 10
]
}
sphere#球
boundingvolume.sphere屬性是一個(gè)由四個(gè)數(shù)字組成的數(shù)組,用于定義邊界球。前三個(gè)元素定義了z軸向上的右手三軸(x,y,z)笛卡爾坐標(biāo)系中球體中心的x,y和z值。最后一個(gè)元素(索引3)定義半徑(單位:米
“boundingVolume”: {
“sphere”: [
0,
0,
10,
141.4214
]
}
viewer的請(qǐng)求區(qū)域
title的視圖請(qǐng)求區(qū)域可以用于組合異類數(shù)據(jù)集,也可以與外部titles集組合。
下面的示例在B3DM圖塊中有一個(gè)建筑,在PNTS圖塊中有一個(gè)點(diǎn)云。點(diǎn)云塊的邊界體積是一個(gè)半徑為1.25的球體。它還有一個(gè)更大的球體,半徑為15,用于viewerRequestVolume。由于幾何誤差為零,當(dāng)查看器位于由viewerRequestVolume定義的大球體內(nèi)時(shí),點(diǎn)云圖塊的內(nèi)容總是呈現(xiàn)(并且最初是被請(qǐng)求的)
{
“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”: {
“uri”: “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”: {
“uri”: “points.pnts”
}
}]
}
License#許可證
Property reference#屬性引用
Declarative styling specification#聲明性樣式規(guī)范
總結(jié)
以上是生活随笔為你收集整理的cesium--3d-tiles译文[官方]的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 第03课:如何学习“机器学习”
- 下一篇: 渗透测试