Parameters:
(Object)
Name | Description |
---|---|
options.url
(Resource | String | Promise.<Resource> | Promise.<String>)
|
tileset json文件的URL。 |
options.show
Boolean
default true
|
確定是否顯示顎化集。 |
options.modelMatrix
Matrix4
default Matrix4.IDENTITY
|
一個(gè)4x4變換矩陣,它轉(zhuǎn)換tileset的根瓦片。 |
options.shadows
ShadowMode
default ShadowMode.ENABLED
|
確定tileset是投射還是接收來(lái)自每個(gè)光源的陰影。 |
options.maximumScreenSpaceError
Number
default 16
|
用于驅(qū)動(dòng)細(xì)節(jié)細(xì)化級(jí)別的最大屏幕空間錯(cuò)誤。 |
options.maximumMemoryUsage
Number
default 512
|
tileset可以使用的最大內(nèi)存量(MB)。 |
options.cullWithChildrenBounds
Boolean
default true
|
優(yōu)化選項(xiàng)。是否使用其子對(duì)象邊界體積的聯(lián)合來(lái)剔除瓦片。 |
options.cullRequestsWhileMoving
Boolean
default true
|
優(yōu)化選項(xiàng)。不要請(qǐng)求可能因?yàn)橄鄼C(jī)的移動(dòng)而返回時(shí)未使用的磁貼。 |
options.cullRequestsWhileMovingMultiplier
Number
default 60.0
|
優(yōu)化選項(xiàng)。移動(dòng)時(shí)剔除請(qǐng)求時(shí)使用的乘數(shù)。較大的是更具侵略性的剔除,較小的是不具侵略性的剔除。 |
options.preloadWhenHidden
Boolean
default false
|
當(dāng)tileset.show 為false 時(shí)預(yù)加載瓦片。加載瓦片,就像瓦片集可見(jiàn)但不呈現(xiàn)它們一樣。
|
options.preloadFlightDestinations
Boolean
default true
|
優(yōu)化選項(xiàng)。當(dāng)相機(jī)正在飛行時(shí),在相機(jī)的飛行目的地預(yù)加載磁貼。 |
options.preferLeaves
Boolean
default false
|
優(yōu)化選項(xiàng)。最好先裝樹(shù)葉。 |
options.dynamicScreenSpaceError
Boolean
default false
|
優(yōu)化選項(xiàng)。減少離相機(jī)較遠(yuǎn)的磁貼的屏幕空間錯(cuò)誤。 |
options.dynamicScreenSpaceErrorDensity
Number
default 0.00278
|
密度用于調(diào)整動(dòng)態(tài)屏幕空間誤差,類(lèi)似于霧密度。 |
options.dynamicScreenSpaceErrorFactor
Number
default 4.0
|
用于增加計(jì)算出的動(dòng)態(tài)屏幕空間誤差的系數(shù)。 |
options.dynamicScreenSpaceErrorHeightFalloff
Number
default 0.25
|
密度開(kāi)始下降時(shí)的蒂勒塞特高度的比率。 |
options.progressiveResolutionHeightFraction
Number
default 0.3
|
優(yōu)化選項(xiàng)。如果介于(0.0,0.5)之間,將首先優(yōu)先考慮降低屏幕分辨率progressiveResolutionHeightFraction*screenHeight 的屏幕空間誤差或高于該誤差的瓦片。這有助于在繼續(xù)加載全分辨率磁貼時(shí)快速放下磁貼層。
|
options.foveatedScreenSpaceError
Boolean
default true
|
優(yōu)化選項(xiàng)。通過(guò)臨時(shí)提高屏幕邊緣周?chē)耐咂钠聊豢臻g錯(cuò)誤,將在屏幕中心加載瓦片的優(yōu)先級(jí)排序。加載BM3DTileset#foveatedConeSize 所確定的屏幕中心的所有磁貼后,屏幕空間錯(cuò)誤恢復(fù)正常。
|
options.foveatedConeSize
Number
default 0.1
|
優(yōu)化選項(xiàng)。當(dāng)BM3DTileset#foveatedScreenSpaceError 為真時(shí)使用,以控制用于確定延遲的瓦片的圓錐體大小。此圓錐體內(nèi)的瓦片將立即加載。錐體外的平鋪可能會(huì)根據(jù)它們?cè)阱F體外的距離及其屏幕空間錯(cuò)誤而延遲。這由BM3DTileset#foveatedInterpolationCallback 和BM3DTileset#foveatedMinimumScreenSpaceErrorRelaxation 控制。將此值設(shè)置為0.0表示圓錐體將是由相機(jī)位置及其視圖方向形成的線。將此設(shè)置為1.0意味著圓錐體包含相機(jī)的整個(gè)視場(chǎng),禁用效果。
|
options.foveatedMinimumScreenSpaceErrorRelaxation
Number
default 0.0
|
優(yōu)化選項(xiàng)。當(dāng)BM3DTileset#foveatedScreenSpaceError 為真時(shí),用于控制凹錐外瓦片的起始屏幕空間誤差松弛。屏幕空間錯(cuò)誤將根據(jù)提供的BM3DTileset#foveatedInterpolationCallback 從tileset值開(kāi)始升高到BM3DTileset#maximumScreenSpaceError 。
|
options.foveatedInterpolationCallback
BM3DTileset~foveatedInterpolationCallback
default Math.lerp
|
優(yōu)化選項(xiàng)。當(dāng)BM3DTileset#foveatedScreenSpaceError 為真時(shí),用于控制在中央凹錐體外增加瓦片屏幕空間誤差的程度,在BM3DTileset#foveatedMinimumScreenSpaceErrorRelaxation 和BM3DTileset#maximumScreenSpaceError 之間插入。
|
options.foveatedTimeDelay
Number
default 0.2
|
優(yōu)化選項(xiàng)。當(dāng)BM3DTileset#foveatedScreenSpaceError 為真時(shí)使用,以秒為單位控制延遲瓦片開(kāi)始加載之前相機(jī)停止移動(dòng)后的等待時(shí)間。此時(shí)間延遲可防止攝像機(jī)移動(dòng)時(shí)在屏幕邊緣周?chē)?qǐng)求平鋪。將此設(shè)置為0.0將立即請(qǐng)求任何給定視圖中的所有瓦片。
|
options.skipLevelOfDetail
Boolean
default true
|
優(yōu)化選項(xiàng)。確定遍歷期間是否應(yīng)應(yīng)用細(xì)節(jié)級(jí)別跳過(guò)。 |
options.baseScreenSpaceError
Number
default 1024
|
當(dāng)skipLevelOfDetail 為true 時(shí),在跳過(guò)詳細(xì)級(jí)別之前必須達(dá)到的屏幕空間錯(cuò)誤。
|
options.skipScreenSpaceErrorFactor
Number
default 16
|
當(dāng)skipLevelOfDetail 為true 時(shí),定義要跳過(guò)的最小屏幕空間錯(cuò)誤的乘數(shù)。與skipLevels 一起使用,以確定要加載的瓦片。
|
options.skipLevels
Number
default 1
|
當(dāng)skipLevelOfDetail 為true 時(shí),定義加載瓦片時(shí)要跳過(guò)的最小級(jí)別數(shù)的常量。為0時(shí),不跳過(guò)任何級(jí)別。與skipScreenSpaceErrorFactor 一起使用,以確定要加載的瓦片。
|
options.immediatelyLoadDesiredLevelOfDetail
Boolean
default false
|
當(dāng)skipLevelOfDetail 為true 時(shí),將只下載滿足最大屏幕空間錯(cuò)誤的磁貼。跳過(guò)因子被忽略,只加載所需的瓦片。
|
options.loadSiblings
Boolean
default false
|
當(dāng)skipLevelOfDetail 為true 時(shí),確定遍歷期間是否始終下載可見(jiàn)瓦片的同級(jí)。
|
options.clippingPlanes
ClippingPlaneCollection
|
ClippingPlaneCollection 用于選擇性地禁用呈現(xiàn)tileset。
|
options.classificationType
ClassificationType
|
確定地形、三維瓦片或兩者都將按此瓦片集分類(lèi)。有關(guān)限制和限制的詳細(xì)信息,請(qǐng)參見(jiàn)BM3DTileset#classificationType 。
|
options.ellipsoid
Ellipsoid
default Ellipsoid.WGS84
|
決定球體大小和形狀的橢球體。 |
options.pointCloudShading
Object
|
用于構(gòu)建PointCloudShading 對(duì)象的選項(xiàng),以根據(jù)幾何誤差和照明控制點(diǎn)衰減。
|
options.imageBasedLightingFactor
Cartesian2
default new Cartesian2(1.0, 1.0)
|
縮放來(lái)自地球、天空、大氣和星空盒的漫反射和鏡面反射基于圖像的照明。 |
options.lightColor
Cartesian3
|
用來(lái)給模型加陰影的陽(yáng)光的顏色和強(qiáng)度。 |
options.luminanceAtZenith
Number
default 0.2
|
太陽(yáng)在天頂?shù)牧炼龋瑔挝粸榍Э藸T光每平方米,用于此模型的程序環(huán)境地圖。 |
options.sphericalHarmonicCoefficients
Array.<Cartesian3>
|
三階球面諧波系數(shù)用于圖像光的漫反射顏色。 |
options.specularEnvironmentMaps
String
|
KTX文件的一個(gè)URL,其中包含鏡面照明和卷積鏡面mipmap的立方體映射。 |
options.debugHeatmapTilePropertyName
String
|
要作為heatmap著色的瓦片變量。所有渲染的瓦片將根據(jù)彼此指定的變量值著色。 |
options.debugFreezeFrame
Boolean
default false
|
僅用于調(diào)試。確定是否只應(yīng)使用最后一幀的瓦片進(jìn)行渲染。 |
options.debugColorizeTiles
Boolean
default false
|
僅用于調(diào)試。如果為真,則為每個(gè)瓦片指定隨機(jī)顏色。 |
options.debugWireframe
Boolean
default false
|
僅用于調(diào)試。如果為真,則將每個(gè)瓦片的內(nèi)容渲染為線框。 |
options.debugShowBoundingVolume
Boolean
default false
|
僅用于調(diào)試。如果為真,則渲染每個(gè)瓦片的邊界體積。 |
options.debugShowContentBoundingVolume
Boolean
default false
|
僅用于調(diào)試。如果為真,則渲染每個(gè)瓦片內(nèi)容的邊界體積。 |
options.debugShowViewerRequestVolume
Boolean
default false
|
僅用于調(diào)試。如果為true,則為每個(gè)瓦片呈現(xiàn)查看器請(qǐng)求卷。 |
options.debugShowGeometricError
Boolean
default false
|
僅用于調(diào)試。如果為真,則繪制標(biāo)簽以指示每個(gè)瓦片的幾何錯(cuò)誤。 |
options.debugShowRenderingStatistics
Boolean
default false
|
僅用于調(diào)試。如果為真,則繪制標(biāo)簽以指示每個(gè)瓦片的命令、點(diǎn)、三角形和特征的數(shù)量。 |
options.debugShowMemoryUsage
Boolean
default false
|
僅用于調(diào)試。如果為真,則繪制標(biāo)簽以指示每個(gè)瓦片使用的紋理和幾何內(nèi)存(兆字節(jié))。 |
options.debugShowUrl
Boolean
default false
|
僅用于調(diào)試。如果為true,則繪制標(biāo)簽以指示每個(gè)瓦片的URL。 |
Examples
var tileset = scene.primitives.add(new bmgl.BM3DTileset({
url : 'http://localhost:8002/tilesets/Seattle/tileset.json'
}));
// Common setting for the skipLevelOfDetail optimization
var tileset = scene.primitives.add(new bmgl.BM3DTileset({
url : 'http://localhost:8002/tilesets/Seattle/tileset.json',
skipLevelOfDetail : true,
baseScreenSpaceError : 1024,
skipScreenSpaceErrorFactor : 16,
skipLevels : 1,
immediatelyLoadDesiredLevelOfDetail : false,
loadSiblings : false,
cullWithChildrenBounds : true
}));
// Common settings for the dynamicScreenSpaceError optimization
var tileset = scene.primitives.add(new bmgl.BM3DTileset({
url : 'http://localhost:8002/tilesets/Seattle/tileset.json',
dynamicScreenSpaceError : true,
dynamicScreenSpaceErrorDensity : 0.00278,
dynamicScreenSpaceErrorFactor : 4.0,
dynamicScreenSpaceErrorHeightFalloff : 0.25
}));
Throws
-
DeveloperError : tileset必須是0.0或1.0版的3D平鋪。
Members
allTilesLoaded : Event
此事件在渲染場(chǎng)景后在幀的末尾觸發(fā)。
-
Default Value:
new Event()
See:
Example:
tileset.allTilesLoaded.addEventListener(function() {
console.log('All tiles are loaded');
});
(readonly) asset : Object
請(qǐng)參閱3D瓦片規(guī)格中的asset schema reference了解完整的屬性集。
(readonly) basePath : String
Deprecated: true
baseScreenSpaceError : Number
僅在BM3DTileset#skipLevelOfDetail
為true
時(shí)使用。
-
Default Value:
1024
(readonly) boundingSphere : BoundingSphere
Example:
var tileset = viewer.scene.primitives.add(new bmgl.BM3DTileset({
url : 'http://localhost:8002/tilesets/Seattle/tileset.json'
}));
tileset.readyPromise.then(function(tileset) {
// Set the camera to view the newly added tileset
viewer.camera.viewBoundingSphere(tileset.boundingSphere, new bmgl.HeadingPitchRange(0, -0.5, 0));
});
(readonly) classificationType : ClassificationType
此選項(xiàng)僅適用于包含成批3D模型、幾何數(shù)據(jù)或矢量數(shù)據(jù)的數(shù)據(jù)集。即使未定義,矢量數(shù)據(jù)和幾何數(shù)據(jù)也必須渲染為分類(lèi),并且默認(rèn)在地形和其他3D瓦片瓦片集上渲染。
當(dāng)為批處理的3D模型平鋪集啟用時(shí),對(duì)GLTF有一些要求/限制:
- 位置和{批處理ID語(yǔ)義是必需的。
- 具有相同批處理ID的所有索引都必須占用索引緩沖區(qū)的連續(xù)部分。
- 忽略所有著色器和技術(shù)。生成的明暗器只需將位置乘以模型視圖投影矩陣。
- 唯一支持的擴(kuò)展名是bmgl{rtc和web3d{量化{屬性。
- 只支持一個(gè)節(jié)點(diǎn)。
- 每個(gè)節(jié)點(diǎn)僅支持一個(gè)網(wǎng)格。
- 每個(gè)網(wǎng)格僅支持一個(gè)基元。
-
Default Value:
undefined
Experimental
This feature is using part of the 3D Tiles spec that is not final and is subject to change without BM's standard deprecation policy.
clippingPlanes : ClippingPlaneCollection
ClippingPlaneCollection
用于選擇性地禁用呈現(xiàn)tileset。
colorBlendAmount : Number
BM3DTileset#colorBlendMode
為MIX
時(shí)用于在源顏色和要素顏色之間進(jìn)行線性插值的值。值為0.0將生成源顏色,值為1.0將生成功能顏色,其中任何值之間的值將導(dǎo)致源顏色和功能顏色的混合。
-
Default Value:
0.5
colorBlendMode : BM3DTileColorBlendMode
-
Default Value:
BM3DTileColorBlendMode.HIGHLIGHT
cullRequestsWhileMoving : Boolean
-
Default Value:
true
cullRequestsWhileMovingMultiplier : Number
-
Default Value:
60.0
debugColorizeTiles : Boolean
為真時(shí),為每個(gè)瓦片指定隨機(jī)顏色。這對(duì)于可視化哪些功能屬于哪些瓦片很有用,特別是在父瓦片的功能可能與子瓦片的功能交錯(cuò)的情況下,使用附加優(yōu)化。
-
Default Value:
false
debugFreezeFrame : Boolean
確定是否只應(yīng)使用最后一幀的瓦片進(jìn)行渲染。這會(huì)有效地將tileset“凍結(jié)”到上一幀,以便可以縮小并查看渲染的內(nèi)容。
-
Default Value:
false
debugShowBoundingVolume : Boolean
如果為真,則渲染每個(gè)可見(jiàn)瓦片的邊界體積。如果瓦片具有內(nèi)容邊界體積或?yàn)榭眨瑒t邊界體積為白色;否則,它為紅色。不符合屏幕空間錯(cuò)誤并且仍在細(xì)化到其后代的瓦片是黃色的。
-
Default Value:
false
debugShowContentBoundingVolume : Boolean
如果為真,則渲染每個(gè)可見(jiàn)瓦片內(nèi)容的邊界體積。如果瓦片具有內(nèi)容邊界體積,則邊界體積為藍(lán)色;否則為紅色。
-
Default Value:
false
debugShowGeometricError : Boolean
為真時(shí),繪制標(biāo)簽以指示每個(gè)瓦片的幾何誤差。
-
Default Value:
false
debugShowMemoryUsage : Boolean
為真時(shí),繪制標(biāo)簽以指示每個(gè)瓦片的幾何圖形和紋理內(nèi)存使用情況。
-
Default Value:
false
debugShowRenderingStatistics : Boolean
為真時(shí),繪制標(biāo)簽以指示每個(gè)瓦片的命令、點(diǎn)、三角形和特征的數(shù)量。
-
Default Value:
false
debugShowUrl : Boolean
為真時(shí),繪制標(biāo)簽以指示每個(gè)瓦片的URL。
-
Default Value:
false
debugShowViewerRequestVolume : Boolean
如果為真,則為每個(gè)瓦片呈現(xiàn)查看器請(qǐng)求量。
-
Default Value:
false
debugWireframe : Boolean
如果為真,則將每個(gè)瓦片的內(nèi)容呈現(xiàn)為線框。
-
Default Value:
false
dynamicScreenSpaceError : Boolean
-
Default Value:
false
dynamicScreenSpaceErrorDensity : Number
Fog
。增加該值會(huì)增加所有瓦片的最大屏幕空間誤差,但會(huì)以非線性方式增加。誤差從0.0開(kāi)始呈指數(shù)增長(zhǎng),直到達(dá)到中點(diǎn),然后漸進(jìn)地接近1.0。這有一種效果,即在較近的瓦片中保持較高的細(xì)節(jié),而在較遠(yuǎn)的瓦片中保持較低的細(xì)節(jié),所有瓦片超過(guò)一定距離,其誤差大致為1.0。動(dòng)態(tài)誤差在[0.0,1.0]范圍內(nèi),并乘以dynamicScreenSpaceErrorFactor
產(chǎn)生最終動(dòng)態(tài)誤差。然后,從瓦片的實(shí)際屏幕空間錯(cuò)誤中減去該動(dòng)態(tài)錯(cuò)誤。
遞增dynamicScreenSpaceErrorDensity
具有將誤差中點(diǎn)移近相機(jī)的效果。它類(lèi)似于將霧移近攝像機(jī)。
-
Default Value:
0.00278
dynamicScreenSpaceErrorFactor : Number
-
Default Value:
4.0
dynamicScreenSpaceErrorHeightFalloff : Number
有效值介于0.0和1.0之間。
-
Default Value:
0.25
(readonly) ellipsoid : Ellipsoid
(readonly) extras : *
extras
屬性,該屬性包含特定于應(yīng)用程序的元數(shù)據(jù)。如果不存在,則返回undefined
。
foveatedConeSize : Number
BM3DTileset#foveatedScreenSpaceError
為真時(shí)使用,以控制用于確定延遲的瓦片的圓錐體大小。此圓錐體內(nèi)的瓦片將立即加載。錐體外的瓦片可能會(huì)根據(jù)它們?cè)阱F體外的距離和BM3DTileset#foveatedInterpolationCallback
和BM3DTileset#foveatedMinimumScreenSpaceErrorRelaxation
延遲。將此值設(shè)置為0.0表示圓錐體將是由相機(jī)位置及其視圖方向形成的線。將其設(shè)置為1.0意味著圓錐體包含相機(jī)的整個(gè)視場(chǎng),基本上禁用了效果。
-
Default Value:
0.3
foveatedInterpolationCallback : BM3DTileset~foveatedInterpolationCallback
foveatedMinimumScreenSpaceErrorRelaxation : Number
BM3DTileset#foveatedScreenSpaceError
為真時(shí),用于控制凹錐外瓦片的起始屏幕空間誤差松弛。屏幕空間錯(cuò)誤將根據(jù)提供的BM3DTileset#foveatedInterpolationCallback
從該值開(kāi)始升高到BM3DTileset#maximumScreenSpaceError
。
-
Default Value:
0.0
foveatedScreenSpaceError : Boolean
BM3DTileset#foveatedConeSize
所確定的屏幕中心的所有磁貼后,屏幕空間錯(cuò)誤恢復(fù)正常。
-
Default Value:
true
foveatedTimeDelay : Number
BM3DTileset#foveatedScreenSpaceError
為真時(shí)使用,以秒為單位控制延遲瓦片開(kāi)始加載之前相機(jī)停止移動(dòng)后的等待時(shí)間。此時(shí)間延遲可防止攝像機(jī)移動(dòng)時(shí)在屏幕邊緣周?chē)?qǐng)求平鋪。將此設(shè)置為0.0將立即請(qǐng)求任何給定視圖中的所有瓦片。
-
Default Value:
0.2
imageBasedLightingFactor : Cartesian2
-
Default Value:
Cartesian2(1.0, 1.0)
immediatelyLoadDesiredLevelOfDetail : Boolean
僅在BM3DTileset#skipLevelOfDetail
為true
時(shí)使用。
-
Default Value:
false
initialTilesLoaded : Event
此事件在渲染場(chǎng)景后在幀的末尾觸發(fā)。
-
Default Value:
new Event()
See:
Example:
tileset.initialTilesLoaded.addEventListener(function() {
console.log('Initial tiles are loaded');
});
lightColor : Cartesian3
例如,通過(guò)設(shè)置model.imageBasedLightingFactor = new Cartesian2(0.0, 0.0)
禁用其他光源將使模型更暗。在這里,增加光源的強(qiáng)度將使模型更亮。
-
Default Value:
undefined
loadProgress : Event
掛起的瓦片請(qǐng)求數(shù)numberOfPendingRequests
和瓦片處理數(shù)numberOfTilesProcessing
傳遞給事件偵聽(tīng)器。
此事件在場(chǎng)景渲染后在幀的末尾觸發(fā)。
-
Default Value:
new Event()
Example:
tileset.loadProgress.addEventListener(function(numberOfPendingRequests, numberOfTilesProcessing) {
if ((numberOfPendingRequests === 0) && (numberOfTilesProcessing === 0)) {
console.log('Stopped loading');
return;
}
console.log('Loading: requests: ' + numberOfPendingRequests + ', processing: ' + numberOfTilesProcessing);
});
loadSiblings : Boolean
僅在BM3DTileset#skipLevelOfDetail
為true
時(shí)使用。
-
Default Value:
false
luminanceAtZenith : Number
BM3DTileset#specularEnvironmentMaps
和BM3DTileset#sphericalHarmonicCoefficients
時(shí)使用。
-
Default Value:
0.2
maximumMemoryUsage : Number
未在視圖中的瓦片將卸載以強(qiáng)制執(zhí)行此操作。
如果減小該值會(huì)導(dǎo)致卸載瓦片,則會(huì)在下一幀卸載瓦片。
如果需要尺寸大于maximumMemoryUsage
的磁貼來(lái)滿足由BM3DTileset#maximumScreenSpaceError
確定的所需屏幕空間錯(cuò)誤,對(duì)于當(dāng)前視圖,則加載磁貼的內(nèi)存使用將超過(guò)maximumMemoryUsage
。例如,如果最大值為256 MB,但需要300 MB的磁貼來(lái)滿足屏幕空間錯(cuò)誤,則可以加載300 MB的磁貼。當(dāng)這些瓦片離開(kāi)視野時(shí),它們將被卸載。
-
Default Value:
512
See:
maximumScreenSpaceError : Number
maximumScreenSpaceError
,則瓦片將細(xì)化為其后代。取決于Tileset,maximumScreenSpaceError
可能需要進(jìn)行調(diào)整以實(shí)現(xiàn)正確的平衡。較高的值提供更好的性能,但視覺(jué)質(zhì)量較低。
-
Default Value:
16
modelMatrix : Matrix4
-
Default Value:
Matrix4.IDENTITY
Example:
// Adjust a tileset's height from the globe's surface.
var heightOffset = 20.0;
var boundingSphere = tileset.boundingSphere;
var cartographic = bmgl.Cartographic.fromCartesian(boundingSphere.center);
var surface = bmgl.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, 0.0);
var offset = bmgl.Cartesian3.fromRadians(cartographic.longitude, cartographic.latitude, heightOffset);
var translation = bmgl.Cartesian3.subtract(offset, surface, new bmgl.Cartesian3());
tileset.modelMatrix = bmgl.Matrix4.fromTranslation(translation);
pointCloudShading : PointCloudShading
preferLeaves : Boolean
-
Default Value:
false
preloadFlightDestinations : Boolean
-
Default Value:
true
preloadWhenHidden : Boolean
tileset.show
為false
時(shí)預(yù)加載瓦片。加載瓦片,就像瓦片集可見(jiàn)但不呈現(xiàn)它們一樣。
-
Default Value:
false
progressiveResolutionHeightFraction : Number
progressiveResolutionHeightFraction*screenHeight
的屏幕空間誤差或高于該誤差的瓦片。這有助于在繼續(xù)加載全分辨率磁貼時(shí)快速放下磁貼層。
-
Default Value:
0.3
(readonly) properties : Object
請(qǐng)參閱3D瓦片規(guī)格中的properties schema reference了解完整的屬性集。
Example:
console.log('Maximum building height: ' + tileset.properties.height.maximum);
console.log('Minimum building height: ' + tileset.properties.height.minimum);
(readonly) ready : Boolean
-
Default Value:
false
(readonly) readyPromise : Promise.<BM3DTileset>
此承諾在第一幀中呈現(xiàn)Tileset之前在幀的末尾解決。
Example:
tileset.readyPromise.then(function(tileset) {
// tile.properties is not defined until readyPromise resolves.
var properties = tileset.properties;
if (bmgl.defined(properties)) {
for (var name in properties) {
console.log(properties[name]);
}
}
});
(readonly) root : BM3DTile
shadows : ShadowMode
啟用陰影會(huì)影響性能。投射陰影的平鋪集必須渲染兩次,一次從相機(jī)渲染,一次從燈光渲染。
陰影僅在Viewer#shadows
為true
時(shí)呈現(xiàn)。
-
Default Value:
ShadowMode.ENABLED
show : Boolean
-
Default Value:
true
skipLevelOfDetail : Boolean
替換優(yōu)化遍歷的常見(jiàn)策略是將樹(shù)的所有級(jí)別存儲(chǔ)在內(nèi)存中,并要求在父級(jí)可以優(yōu)化之前加載所有子級(jí)。通過(guò)這種優(yōu)化,可以完全跳過(guò)樹(shù)的級(jí)別,并且可以將孩子與父母一起呈現(xiàn)。使用此優(yōu)化時(shí),tileset需要的內(nèi)存顯著減少。
-
Default Value:
true
skipLevels : Number
僅在BM3DTileset#skipLevelOfDetail
為true
時(shí)使用。
-
Default Value:
1
skipScreenSpaceErrorFactor : Number
<= 100 / skipScreenSpaceErrorFactor
。僅在BM3DTileset#skipLevelOfDetail
為true
時(shí)使用。
-
Default Value:
16
specularEnvironmentMaps : String
sphericalHarmonicCoefficients : Array.<Cartesian3>
undefined
時(shí),使用根據(jù)大氣顏色計(jì)算的漫射輻照度。 有九個(gè)Cartesian3
系數(shù)。 系數(shù)的順序?yàn)椋篖 00,L 1-1,L 10,L 11,L 2-2,L 2-1,L 20,L 21,L 22
cmgen
工具預(yù)處理環(huán)境圖來(lái)獲得。 這還將生成可提供給BM3DTileset#specularEnvironmentMaps
的KTX文件。
style : BM3DTileStyle
分配undefined
刪除樣式,這將在未應(yīng)用樣式時(shí)將瓦片集的視覺(jué)外觀恢復(fù)為其默認(rèn)值。
在引發(fā)BM3DTileset#tileVisible
事件之前將樣式應(yīng)用于瓦片,因此tileVisible
中的代碼可以在應(yīng)用樣式后手動(dòng)設(shè)置要素的適當(dāng)關(guān)系(例如顏色和顯示)。 分配新樣式后,任何手動(dòng)設(shè)置的屬性都會(huì)被覆蓋。
-
Default Value:
undefined
See:
Example:
tileset.style = new bmgl.BM3DTileStyle({
color : {
conditions : [
['${Height} >= 100', 'color("purple", 0.5)'],
['${Height} >= 50', 'color("red")'],
['true', 'color("blue")']
]
},
show : '${Height} > 0',
meta : {
description : '"Building id ${id} has height ${Height}."'
}
});
tileFailed : Event
如果沒(méi)有事件監(jiān)聽(tīng)器,錯(cuò)誤消息將記錄到控制臺(tái)。
傳遞給偵聽(tīng)器的錯(cuò)誤對(duì)象包含兩個(gè)屬性:
url
:失敗瓦片的URL。message
:錯(cuò)誤消息。
-
Default Value:
new Event()
Example:
tileset.tileFailed.addEventListener(function(error) {
console.log('An error occurred loading tile: ' + error.url);
console.log('Error: ' + error.message);
});
tileLoad : Event
將加載的BM3DTile
傳遞給事件偵聽(tīng)器。
此事件在渲染幀時(shí)在tileset遍歷期間觸發(fā),以便對(duì)瓦片的更新在同一幀中生效。不要在事件偵聽(tīng)器期間創(chuàng)建或修改BMGL實(shí)體或基元。
-
Default Value:
new Event()
Example:
tileset.tileLoad.addEventListener(function(tile) {
console.log('A tile was loaded.');
});
(readonly) tilesLoaded : Boolean
true
時(shí),將加載滿足屏幕空間錯(cuò)誤的所有瓦片。此視圖的tileset已完全加載。
-
Default Value:
false
See:
tileUnload : Event
已卸載的BM3DTile
被傳遞到事件偵聽(tīng)器。
渲染幀時(shí),將在瓦片的內(nèi)容被卸載之前立即觸發(fā)此事件,以便事件偵聽(tīng)器可以訪問(wèn)瓦片的內(nèi)容。 在事件偵聽(tīng)器期間,請(qǐng)勿創(chuàng)建或修改實(shí)體或原語(yǔ)。
-
Default Value:
new Event()
See:
Example:
tileset.tileUnload.addEventListener(function(tile) {
console.log('A tile was unloaded from the cache.');
});
tileVisible : Event
可見(jiàn)BM3DTile
傳遞給事件偵聽(tīng)器。
此事件在渲染幀時(shí)在tileset遍歷期間觸發(fā),以便對(duì)瓦片的更新在同一幀中生效。不要在事件偵聽(tīng)器期間創(chuàng)建或修改BMGL實(shí)體或基元。
-
Default Value:
new Event()
Examples:
tileset.tileVisible.addEventListener(function(tile) {
if (tile.content instanceof bmgl.Batched3DModel3DTileContent) {
console.log('A Batched 3D Model tile is visible.');
}
});
// Apply a red style and then manually set random colors for every other feature when the tile becomes visible.
tileset.style = new bmgl.BM3DTileStyle({
color : 'color("red")'
});
tileset.tileVisible.addEventListener(function(tile) {
var content = tile.content;
var featuresLength = content.featuresLength;
for (var i = 0; i < featuresLength; i+=2) {
content.getFeature(i).color = bmgl.Color.fromRandom();
}
});
(readonly) timeSinceLoad : Number
(readonly) totalMemoryUsageInBytes : Number
(readonly) url : String
Methods
(static) loadJson(tilesetUrl) → {Promise.<Object>}Parameters:
一旦對(duì)象被破壞,就不應(yīng)使用它;調(diào)用除
isDestroyed
以外的任何函數(shù)都將導(dǎo)致DeveloperError
異常。因此,將返回值(undefined
)賦給對(duì)象,如示例中所述。
Throws
-
DeveloperError : 此對(duì)象已被銷(xiāo)毀,即調(diào)用destroy()。
true
如果tileset json文件列出了所用擴(kuò)展名中的擴(kuò)展名;否則,false
。
Parameters:
(String)
要檢查的擴(kuò)展名。
如果此對(duì)象被破壞,則不應(yīng)使用它;調(diào)用除
isDestroyed
以外的任何函數(shù)將導(dǎo)致DeveloperError
異常。
See:
BM3DTileset#style
標(biāo)記為臟,這將強(qiáng)制所有功能重新評(píng)估下一幀中的樣式,每個(gè)都可見(jiàn)。
BM3DTileset#maximumMemoryUsage
以下。下一幀將發(fā)生Tile卸載,以將所有WebGL刪除調(diào)用保留在呈現(xiàn)循環(huán)中。
Type Definitions
foveatedInterpolationCallback(p, q, time) → {Number}BM3DTileset#foveatedScreenSpaceError
為真時(shí)用作回調(diào),以控制在BM3DTileset#foveatedMinimumScreenSpaceErrorRelaxation
和BM3DTileset#maximumScreenSpaceError
之間插入的中央凹錐體外的貼片的屏幕空間錯(cuò)誤增加多少。
Parameters:
(Number)
要插入的起始值。
(Number)
要插入的結(jié)束值。
(Number)
插值時(shí)間一般在[0.0, 1.0]
范圍內(nèi)。
-
Default Value:
Math.lerp