日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

cesium--3d-tiles译文[官方]

發布時間:2023/12/14 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cesium--3d-tiles译文[官方] 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

3d-tiles文件是cesium官方和開源社區發布的專用格式.要想深刻體會,還的看官方原文檔.借此機會翻譯,以便日后查用.

譯文

3d tiles 格式規范 2018年6月6日 版本1.0

目錄

Introduction#簡介
File extensions and MIME types#文件擴展和MIME類型
JSON encoding#json編碼
URIs#路徑
Units#模塊
Coordinate reference system (CRS)#坐標參考系
Concepts#概念理解
Declarative styling specification#聲明性樣式規范
Property reference#屬性引用
License#許可證

Introduction#簡介

3D tiles被設計用于流媒體和渲染大量3D地理空間內容,如攝影測量、3D建筑、BIM/CAD、實例特征和點云。它定義了一個層次數據結構和一組提供可渲染內容的平鋪格式。3D tiles沒有為內容的可視化定義明確的規則;客戶機可以可視化3D tiles數據使它看起來合適.在3d tiles中,圖塊集是一組圖塊,它們組織在一個空間數據結構(樹)中,tileset由至少一個包含tileset元數據的tileset json文件和一個tile對象樹描述,每個tileset對象樹可以引用以下格式之一的可渲染內容:

Format格式Uses用途
Batched 3D Model(b3dm)異構三維模型。例如,紋理地形和表面、三維建筑外觀和內部、大型模型
Instanced 3D Model (i3dm)三維模型實例。例如樹木、風車、螺栓
Point Cloud (pnts)大量點云數據
Composite (cmpt)將不同格式的圖塊連接到一個圖塊中
  • 圖塊的內容是圖塊格式的一個單獨實例,它是一個二進制blob,具有特定格式的組件,包括一個功能表和一個批處理表.
  • 內容引用一組功能,例如表示建筑物或樹木的三維模型,或點云中的點。每個功能都有存儲在圖塊功能表中的位置和外觀屬性,以及存儲在批處理表中的其他特定于應用程序的屬性。客戶機可以選擇在運行時選擇功能并檢索其屬性以進行可視化或分析.
  • 批量3D模型和實例3D模型格式建立在GLTF上,GLTF是一種開放的規范,旨在有效地傳輸3D內容。這些格式的tile內容將包含模型幾何和紋理信息的gltf資源嵌入到二進制體中。點云格式不嵌入GLTF。
  • tiles被組織在一棵樹中,該樹融合了層次細節(HLOD)的概念,以優化空間數據的呈現。每個圖塊都有一個邊界體積,一個定義完全封閉其內容的空間范圍的對象。樹具有空間一致性;子圖塊的內容完全在父對象的邊界體積內。

    Tileset可以使用類似于光柵和矢量平鋪方案(如Web地圖平鋪服務(WMT)或XYZ方案)的二維空間平鋪方案,該方案在多個詳細級別(或縮放級別)上為預定義的平鋪提供服務。然而,由于tileset的內容通常是不均勻的,或者可能不容易組織為二維的,因此樹可以是任何具有空間相關性的空間數據結構,包括k-d樹、四叉樹、八叉樹和網格.或者,可以將三維平鋪樣式或樣式應用于平鋪集。樣式定義要計算的表達式,用于修改每個特征的顯示方式.
  • File extensions and MIME types#文件擴展和MIME類型

    3d tiles 用以下文件擴展名和MIME消息類型,
    tileset文件用.json的擴展文件和application/json的mime消息類型
    tile內容文件使用特定于其平鋪格式規范的文件類型和MIME格式,
    tileset樣式的文件使用.json擴展名和application/json mime類型,
    顯式文件擴展名是可選的。有效的實現可以忽略它,
    并通過其頭中的magic字段標識內容的格式

    JSON encoding#json編碼

    3D titles對JSON格式和編碼有以下限制。
    JSON必須使用不帶BOM的UTF-8編碼。
    此規范中定義的所有字符串(屬性名、枚舉)僅使用ASCII字符集,必須以純文本形式寫入。
    JSON對象中的名稱(鍵)必須是唯一的,即不允許重復鍵

    URIs#路徑

    3D titles使用uri引用titles內容。這些URI可能指向相對外部引用(rfc3986),也可能是將資源嵌入JSON中的數據URI。嵌入式資源使用“數據”URI方案(RFC2397)。當URI是相對的時,它的基總是相對于引用的tileset json文件。客戶端實現需要支持相關的外部引用和嵌入資源。或者,客戶端實現可以支持其他方案(如http://)。所有URI必須有效且可解析

    Units#模塊

    所有直線距離的單位是米。
    所有角度都是弧度

    Coordinate reference system (CRS)#坐標參考系

    3D titles使用右手笛卡爾坐標系;也就是說,x和y的叉積產生z。
    titles將z軸定義為局部笛卡爾坐標系的向上軸。
    Tileset的全球坐標系通常位于WGS 84地心固定(ECEF)參考框架(EPSG 4979)中,
    但不必如此,例如,發電廠可以在其本地坐標系中完全定義,
    以便與沒有地理空間背景的建模工具一起使用。
    可以應用附加的titles轉換將titles的局部坐標系轉換為父圖塊的坐標系。
    區域邊界體積使用地理坐標系(緯度、經度、高度)指定邊界,
    特別是EPSG 4979

    Concepts#概念理解

    1) titles

    tiles由元數據組成,用于確定是否呈現tile、對可渲染內容的引用以及任何子tile的數組

    2) Geometric error

    titles被構造成一個包含層次細節級別(chlod)的樹,這樣在運行時,
    客戶機實現需要確定圖塊是否足夠詳細以進行渲染,以及
    titles的內容是否應該由更高分辨率的子圖塊依次進行細化。
    一個實現將考慮最大允許屏幕空間錯誤(SSE),即以像素度量的錯誤.
    …后面就不翻譯了,太高端了,翻譯了也不懂

    3) Refinement(優化)

    Replacement(替換優化)

    如果一個titles使用替換優化,則在進行優化時,它會使其子項取代自身

    Additive(增加優化)

    如果titles使用附加優化,則在優化后,它會同時呈現自身及其子項

    Bounding volumes

    邊界定義為了支持各種數據集(如規則分割的地形、與經緯線不對齊的城市或任意點云)
    邊界體積類型包括定向邊界框、邊界球和由最小和最大緯度、經度和高度定義的地理區域

    Region#區域
    boundingvolume.region屬性是一個由六個數字組成的數組,這些數字用緯度、經度和高度坐標定義邊界地理區域,順序為[西、南、東、北、最小高度、最大高度]。緯度和經度在EPSG 4979中定義的WGS 84基準中,以弧度表示。高度以WGS 84橢球體以上(或以下)米為單位

    “boundingVolume”: {
    “region”: [
    -1.3197004795898053,
    0.6988582109,
    -1.3196595204101946,
    0.6988897891,
    0,
    20
    ]
    }

    Box#盒子
    boundingvolume.box屬性是一個由12個數字組成的數組,該數組在z軸向上的右手三軸(x,y,z)笛卡爾坐標系中定義定向邊界框。前三個元素定義了框中心的x、y和z值。接下來的三個元素(帶有索引3、4和5)定義X軸方向和半長度。接下來的三個元素(索引6、7和8)定義Y軸方向和半長度。最后三個元素(索引9、10和11)定義Z軸方向和半長度

    “boundingVolume”: {
    “box”: [
    0, 0, 10,
    100, 0, 0,
    0, 100, 0,
    0, 0, 10
    ]
    }

    sphere#球
    boundingvolume.sphere屬性是一個由四個數字組成的數組,用于定義邊界球。前三個元素定義了z軸向上的右手三軸(x,y,z)笛卡爾坐標系中球體中心的x,y和z值。最后一個元素(索引3)定義半徑(單位:米

    “boundingVolume”: {
    “sphere”: [
    0,
    0,
    10,
    141.4214
    ]
    }

    viewer的請求區域
    title的視圖請求區域可以用于組合異類數據集,也可以與外部titles集組合。
    下面的示例在B3DM圖塊中有一個建筑,在PNTS圖塊中有一個點云。點云塊的邊界體積是一個半徑為1.25的球體。它還有一個更大的球體,半徑為15,用于viewerRequestVolume。由于幾何誤差為零,當查看器位于由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”: {
    “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#聲明性樣式規范

    總結

    以上是生活随笔為你收集整理的cesium--3d-tiles译文[官方]的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。