高清在线一区二区_激情网在线观看_激情一区二区三区_精品中文一区_亚洲中字幕_亚洲天堂一区

Model

基于glTF(WebGL,Op??enGL ES和OpenGL的運行時資源格式)的3D模型。

bigemap-gl包括對幾何圖形和材質(zhì),glTF動畫和glTF蒙皮的支持。另外,單個glTF節(jié)點可以用Scene#pick拾取,可以用Model#getNode動畫。目前不支持glTF相機和燈光。

Model.fromGltf創(chuàng)建了一個外部glTF資源。 glTF JSON也可以在運行時創(chuàng)建,并傳遞給此構(gòu)造函數(shù)。無論哪種情況,當模型準備渲染時,即下載外部二進制文件,圖像和著色器文件并創(chuàng)建WebGL資源時,Model#readyPromise都會解析。

bigemap-gl支持帶有以下擴展名的glTF資源:

對于高精度渲染,bigemap-gl支持擴展,它引入了BMGL_RTC_MODELVIEW參數(shù)語義,該語義表示節(jié)點在WGS84坐標中相對于當?shù)匮y(tǒng)。

new Model(options)
Parameters:
options (Object)
Name Description
options.gltf
(Object | ArrayBuffer | Uint8Array)
gltf json對象或二進制gltf緩沖區(qū)。
options.basePath
(Resource | String)
default ''
gltf json中的路徑相對于的基本路徑。
options.show
Boolean
default true
確定是否顯示模型基元。
options.modelMatrix
Matrix4
default Matrix4.IDENTITY
將模型從模型轉(zhuǎn)換為世界坐標的4x4轉(zhuǎn)換矩陣。
options.scale
Number
default 1.0
應用于此模型的統(tǒng)一比例。
options.minimumPixelSize
Number
default 0.0
模型的近似最小像素大小,與縮放無關(guān)。
options.maximumScale
Number
模型的最大比例大小。最小像素化的上限。
options.id
Object
使用Scene#pick選取模型時要返回的用戶定義對象。
options.allowPicking
Boolean
default true
true時,每個GLTF網(wǎng)格和基本體都可以用Scene#pick拾取。
options.incrementallyLoadTextures
Boolean
default true
確定加載模型后紋理是否可以繼續(xù)流入。
options.asynchronous
Boolean
default true
確定在加載完所有GLTF文件后,模型WebGL資源創(chuàng)建是否將分布在多個幀或塊上,直到完成。
options.clampAnimations
Boolean
default true
確定模型的動畫是否應在未指定關(guān)鍵幀的幀上保持姿勢。
options.shadows
ShadowMode
default ShadowMode.ENABLED
確定模型是投射還是接收來自每個光源的陰影。
options.debugShowBoundingVolume
Boolean
default false
僅用于調(diào)試。為模型中的每個繪制命令繪制邊界球體。
options.debugWireframe
Boolean
default false
僅用于調(diào)試。在線框中繪制模型。
options.heightReference
HeightReference
default HeightReference.NONE
確定模型相對于地形的繪制方式。
options.scene
Scene
對于使用高度引用屬性的模型,必須傳入。
options.distanceDisplayCondition
DistanceDisplayCondition
指定將顯示此模型的相機距離的條件。
options.color
Color
default Color.WHITE
與模型的渲染顏色混合的顏色。
options.colorBlendMode
ColorBlendMode
default ColorBlendMode.HIGHLIGHT
定義顏色與模型的混合方式。
options.colorBlendAmount
Number
default 0.5
colorBlendModeMIX時用于確定顏色強度的值。值為0.0將生成模型的渲染顏色,值為1.0將生成純色,兩者之間的任何值都將導致二者的混合。
options.silhouetteColor
Color
default Color.RED
輪廓顏色。如果超過256個模型啟用了輪廓,重疊的模型很可能會有較小的瑕疵。
options.silhouetteSize
Number
default 0.0
輪廓的像素大小。
options.clippingPlanes
ClippingPlaneCollection
ClippingPlaneCollection用于選擇性地禁用渲染模型。
options.dequantizeInShader
Boolean
default true
確定是否在GPU上對Draco編碼的模型進行量化。這減少了編碼模型的總內(nèi)存使用量。
options.imageBasedLightingFactor
Cartesian2
default Cartesian2(1.0, 1.0)
從地球、天空、大氣和星空盒縮放基于漫反射和鏡面反射的圖像照明。
options.lightColor
Cartesian3
用來給模型加陰影的陽光的顏色和強度。
options.luminanceAtZenith
Number
default 0.2
太陽在天頂?shù)牧炼龋瑔挝粸榍Э藸T光每平方米,用于此模型的程序環(huán)境地圖。
options.sphericalHarmonicCoefficients
Array.<Cartesian3>
三階球面諧波系數(shù)用于圖像光的漫反射顏色。
options.specularEnvironmentMaps
String
KTX文件的一個URL,其中包含鏡面照明和卷積鏡面mipmap的立方體映射。
options.credit
(Credit | String)
數(shù)據(jù)源的信用,顯示在畫布上。
See:

Members

activeAnimations : ModelAnimationCollection

當前正在播放的GLTF動畫。

(readonly) allowPicking : Boolean

true時,每個GLTF網(wǎng)格和基本體都可以使用Scene#pick拾取。當false時,保存GPU內(nèi)存。
Default Value: true

(readonly) asynchronous : Boolean

確定在加載完所有GLTF文件后,模型WebGL資源創(chuàng)建是否將分布在多個幀或塊上,直到完成。
Default Value: true

(readonly) basePath : String

gltf json中的路徑相對于的基本路徑。當二進制文件、圖像和明暗器文件與.gltf在同一目錄中時,基路徑與包含.gltf文件的路徑減去.gltf文件的路徑相同。如果是'',則使用應用程序的基本路徑。
Default Value: ''

(readonly) boundingSphere : BoundingSphere

模型在其局部坐標系中的邊界球。這不考慮GLTF動畫和外觀,也不考慮Model#minimumPixelSize
Default Value: undefined
Example:
// Center in WGS84 coordinates
var center = bmgl.Matrix4.multiplyByPoint(model.modelMatrix, model.boundingSphere.center, new bmgl.Cartesian3());

clampAnimations : Boolean

確定模型的動畫是否應在未指定關(guān)鍵幀的幀上保持姿勢。

clippingPlanes : ClippingPlaneCollection

ClippingPlaneCollection用于選擇性地禁用渲染模型。

color : Color

與模型的渲染顏色混合的顏色。
Default Value: Color.WHITE

colorBlendAmount : Number

colorBlendModeMIX時用于確定顏色強度的值。值為0.0將生成模型的渲染顏色,值為1.0將生成純色,兩者之間的任何值都將導致二者的混合。
Default Value: 0.5

colorBlendMode : ColorBlendMode

定義顏色與模型的混合方式。
Default Value: ColorBlendMode.HIGHLIGHT

credit : Credit

獲取將為模型顯示的學分

debugShowBoundingVolume : Boolean

此屬性僅用于調(diào)試;它既不用于生產(chǎn),也不進行優(yōu)化。

為模型中的每個繪制命令繪制邊界球體。gltf原語對應于一個draw命令。一個gltf網(wǎng)格有一個基元數(shù)組,通常是長度為1的。

Default Value: false

debugWireframe : Boolean

此屬性僅用于調(diào)試;它既不用于生產(chǎn),也不進行優(yōu)化。

在線框中繪制模型。

Default Value: false

distanceDisplayCondition : DistanceDisplayCondition

獲取或設(shè)置條件,該條件指定此模型將顯示在距相機的距離處。
Default Value: undefined

(readonly) gltf : Object

gltf json的對象,包括提供給該模型的json中省略了默認值的屬性。
Default Value: undefined

heightReference : HeightReference

返回模型的高度引用
Default Value: HeightReference.NONE

id : Object

選擇模型時返回用戶定義的對象。
Default Value: undefined
See:

imageBasedLightingFactor : Cartesian2

Bigemap GL增加了來自地球、天空、大氣和星空盒的照明。該笛卡爾坐標用于將這些源的最終漫反射和鏡面照明貢獻縮放為最終顏色。值為0.0將禁用這些光源。
Default Value: Cartesian2(1.0, 1.0)

(readonly) incrementallyLoadTextures : Boolean

確定加載模型后紋理是否可以繼續(xù)流入。
Default Value: true

lightColor : Cartesian3

用來給模型加陰影的陽光的顏色和強度。

例如,通過設(shè)置model.imageBasedLightingFactor = new bmgl.Cartesian2(0.0, 0.0)禁用其他光源將使模型更暗。在這里,增加光源的強度將使模型更亮。

Default Value: undefined

luminanceAtZenith : Number

太陽在天頂?shù)牧炼龋瑔挝粸榍Э藸T光每平方米,用于此模型的程序環(huán)境地圖。未定義Model#specularEnvironmentMapsModel#sphericalHarmonicCoefficients時使用。
Default Value: 0.2

maximumScale : Number

模型的最大比例大小。這可以用來給Model#minimumPixelSize設(shè)定一個上限,確保模型永遠不會是不合理的規(guī)模。

minimumPixelSize : Number

模型的近似最小像素大小,與縮放無關(guān)。這可以用來確保模型即使在查看器縮小時也可見。當0.0時,不強制使用最小尺寸。
Default Value: 0.0

modelMatrix : Matrix4

將模型從模型轉(zhuǎn)換為世界坐標的4x4轉(zhuǎn)換矩陣。當這是一個單位矩陣時,模型是以世界坐標繪制的,即地球的wgs84坐標。本地參考幀可以通過提供不同的轉(zhuǎn)換矩陣來使用,如Transforms.eastNorthUpToFixedFrame返回的轉(zhuǎn)換矩陣。
Default Value: Matrix4.IDENTITY
Example:
var origin = bmgl.Cartesian3.fromDegrees(-95.0, 40.0, 200000.0);
m.modelMatrix = bmgl.Transforms.eastNorthUpToFixedFrame(origin);

(readonly) pendingTextureLoads : Number

返回掛起的紋理加載數(shù)。

(readonly) ready : Boolean

true時,此模型已準備好渲染,即下載了外部二進制文件、圖像和明暗器文件,并創(chuàng)建了WebGL資源。這將設(shè)置為trueModel#readyPromise解決之前。
Default Value: false

(readonly) readyPromise : Promise.<Model>

獲取此模型準備好呈現(xiàn)時(即下載外部二進制文件、圖像和明暗器文件并創(chuàng)建WebGL資源時)將解決的承諾。

此承諾在模型呈現(xiàn)的第一幀之前在幀的末尾解決。

See:
Example:
// Play all animations at half-speed when the model is ready to render
bmgl.when(model.readyPromise).then(function(model) {
  model.activeAnimations.addAll({
    multiplier : 0.5
  });
}).otherwise(function(error){
  window.alert(error);
});

scale : Number

Model#modelMatrix之前應用于此模型的統(tǒng)一比例。大于1.0的值增加模型的大小;小于1.0的值減少。
Default Value: 1.0

shadows : ShadowMode

確定模型是投射還是接收來自每個光源的陰影。
Default Value: ShadowMode.ENABLED

show : Boolean

確定是否顯示模型基元。
Default Value: true

silhouetteColor : Color

輪廓顏色。
Default Value: Color.RED

silhouetteSize : Number

輪廓的像素大小。
Default Value: 0.0

specularEnvironmentMaps : String

KTX文件的一個URL,其中包含鏡面照明和卷積鏡面mipmap的立方體映射。
See:

sphericalHarmonicCoefficients : Array.<Cartesian3>

三階球面諧波系數(shù)用于圖像光的漫反射顏色。當undefined時,使用根據(jù)大氣顏色計算的漫反射輻照度。

有九個Cartesian3系數(shù)。系數(shù)的順序為:L00,L1-1,L10,L11,L2-2,L2-1,L20,L21,L{22

,這些值可以通過使用cmgen工具預處理環(huán)境地圖獲得。這還將生成一個可以提供給Model#specularEnvironmentMaps的KTX文件。

Methods

(static) fromGltf(options) → {Model}

從glTF資源創(chuàng)建模型。 當模型準備渲染時,即下載外部二進制文件,圖像和著色器文件并創(chuàng)建WebGL資源時,解析Model#readyPromise

模型可以是擴展名為.gltf的傳統(tǒng)glTF資源,也可以是擴展名為.glb的Binary glTF。

bigemap-gl支持具有以下擴展名的glTF資源:

對于高精度渲染,bigemap-gl支持,它引入了BMGL_RTC_MODELVIEW參數(shù)語義,該語義表示節(jié)點在WGS84坐標中相對于本地坐標轉(zhuǎn)換 起源。

Parameters:
options (Object)
Name Description
options.url
(Resource | String)
.gltf文件的URL。
options.basePath
(Resource | String)
gltf json中的路徑相對于的基本路徑。
options.show
Boolean
default true
確定是否顯示模型基元。
options.modelMatrix
Matrix4
default Matrix4.IDENTITY
將模型從模型轉(zhuǎn)換為世界坐標的4x4轉(zhuǎn)換矩陣。
options.scale
Number
default 1.0
應用于此模型的統(tǒng)一比例。
options.minimumPixelSize
Number
default 0.0
模型的近似最小像素大小,與縮放無關(guān)。
options.maximumScale
Number
模型的最大比例。
options.id
Object
使用Scene#pick選取模型時要返回的用戶定義對象。
options.allowPicking
Boolean
default true
true時,每個GLTF網(wǎng)格和基本體都可以用Scene#pick拾取。
options.incrementallyLoadTextures
Boolean
default true
確定加載模型后紋理是否可以繼續(xù)流入。
options.asynchronous
Boolean
default true
確定在加載完所有GLTF文件后,模型WebGL資源創(chuàng)建是否將分布在多個幀或塊上,直到完成。
options.clampAnimations
Boolean
default true
確定模型的動畫是否應在未指定關(guān)鍵幀的幀上保持姿勢。
options.shadows
ShadowMode
default ShadowMode.ENABLED
確定模型是投射還是接收來自每個光源的陰影。
options.debugShowBoundingVolume
Boolean
default false
僅用于調(diào)試。為模型中的每個繪制命令繪制邊界球體。
options.debugWireframe
Boolean
default false
僅用于調(diào)試。在線框中繪制模型。
options.heightReference
HeightReference
default HeightReference.NONE
確定模型相對于地形的繪制方式。
options.scene
Scene
對于使用高度引用屬性的模型,必須傳入。
options.distanceDisplayCondition
DistanceDisplayCondition
指定將顯示此模型的相機距離的條件。
options.color
Color
default Color.WHITE
與模型的渲染顏色混合的顏色。
options.colorBlendMode
ColorBlendMode
default ColorBlendMode.HIGHLIGHT
定義顏色與模型的混合方式。
options.colorBlendAmount
Number
default 0.5
colorBlendModeMIX時用于確定顏色強度的值。值為0.0將生成模型的渲染顏色,值為1.0將生成純色,兩者之間的任何值都將導致二者的混合。
options.silhouetteColor
Color
default Color.RED
輪廓顏色。如果超過256個模型啟用了輪廓,重疊的模型很可能會有較小的瑕疵。
options.silhouetteSize
Number
default 0.0
輪廓的像素大小。
options.clippingPlanes
ClippingPlaneCollection
ClippingPlaneCollection用于選擇性地禁用渲染模型。
options.dequantizeInShader
Boolean
default true
確定是否在GPU上對Draco編碼的模型進行量化。這減少了編碼模型的總內(nèi)存使用量。
options.credit
(Credit | String)
模型的學分,顯示在畫布上。
Examples
// Example 1. Create a model from a glTF asset
var model = scene.primitives.add(bmgl.Model.fromGltf({
  url : './duck/duck.gltf'
}));
// Example 2. Create model and provide all properties and events
var origin = bmgl.Cartesian3.fromDegrees(-95.0, 40.0, 200000.0);
var modelMatrix = bmgl.Transforms.eastNorthUpToFixedFrame(origin);

var model = scene.primitives.add(bmgl.Model.fromGltf({
  url : './duck/duck.gltf',
  show : true,                     // default
  modelMatrix : modelMatrix,
  scale : 2.0,                     // double size
  minimumPixelSize : 128,          // never smaller than 128 pixels
  maximumScale: 20000,             // never larger than 20000 * model size (overrides minimumPixelSize)
  allowPicking : false,            // not pickable
  debugShowBoundingVolume : false, // default
  debugWireframe : false
}));

model.readyPromise.then(function(model) {
  // Play all animations when the model is ready to render
  model.activeAnimations.addAll();
});
(static) silhouetteSupported(scene) → {Boolean}
確定是否支持輪廓。
Parameters:
scene (Scene) 現(xiàn)場。
applyArticulations()
將任何修改的連接階段應用于參與任何連接的每個節(jié)點的矩陣。請注意,這將覆蓋參與節(jié)點上的任何節(jié)點轉(zhuǎn)換。
Throws
  • DeveloperError : 模型未加載。使用model.readyPromise或等待model.ready為true。
destroy()
銷毀此對象持有的WebGL資源。銷毀對象允許確定地釋放WebGL資源,而不是依賴垃圾收集器來銷毀此對象。

一旦對象被破壞,就不應使用它;調(diào)用除isDestroyed以外的任何函數(shù)都將導致DeveloperError異常。因此,將返回值(undefined)賦給對象,如示例中所述。
Example
model = model && model.destroy();
Throws
  • DeveloperError : 此對象已被銷毀,即調(diào)用destroy()。
See:
getMaterial(name) → {ModelMaterial}
返回具有給定name屬性的GLTF材質(zhì)。
Parameters:
name (String) 物料的GLTF名稱。
Throws
  • DeveloperError : 模型未加載。使用model.readyPromise或等待model.ready為true。
getMesh(name) → {ModelMesh}
返回具有給定name屬性的gltf網(wǎng)格。
Parameters:
name (String) 網(wǎng)格的gltf名稱。
Throws
  • DeveloperError : 模型未加載。使用model.readyPromise或等待model.ready為true。
getNode(name) → {ModelNode}
返回具有給定name屬性的GLTF節(jié)點。這用于修改GLTF動畫之外的動畫節(jié)點的轉(zhuǎn)換。
Parameters:
name (String) 節(jié)點的GLTF名稱。
Example
// Apply non-uniform scale to node LOD3sp
var node = model.getNode('LOD3sp');
node.matrix = bmgl.Matrix4.fromScale(new bmgl.Cartesian3(5.0, 1.0, 1.0), node.matrix);
Throws
  • DeveloperError : 模型未加載。使用model.readyPromise或等待model.ready為true。
isDestroyed() → {Boolean}
如果此對象被破壞,則返回true;否則返回false。

如果此對象被破壞,則不應使用它;調(diào)用除isDestroyed以外的任何函數(shù)將導致DeveloperError異常。
See:
setArticulationStage(articulationStageKey, value)
設(shè)置關(guān)節(jié)階段的當前值。設(shè)置一個或多個階段值后,調(diào)用model.applyArticulations()以重新計算節(jié)點矩陣。
Parameters:
articulationStageKey (String) 發(fā)音的名稱、空格和舞臺的名稱。
value (Number) 這個階段的發(fā)音的數(shù)值。
Throws
  • DeveloperError : 模型未加載。使用model.readyPromise或等待model.ready為true。
See:
update()
ViewerBMWidget渲染場景以獲取渲染此原語所需的繪制命令時調(diào)用。

不要直接調(diào)用此函數(shù)。這只是為了列出渲染場景時可能傳播的異常:

Throws
主站蜘蛛池模板: 亚洲成人入口 | 欧美精品成人 | 91在线视频精品 | 九九热精品视频在线 | 黑人一区二区三区四区五区 | 97人操 | 国产精品免费一区二区三区都可以 | 久久精品久 | 亚洲一区二区三区日本久久九 | 国产欧美精品综合一区 | 中国产一级毛片 | 日韩中文字幕一区二区三区 | 久久狠狠高潮亚洲精品 | 国产精品久久久久久婷婷天堂 | 免费播放欧美毛片 | 国语自产免费精品视频在 | 亚欧在线免费观看 | 欧美成人性色 | 99久久久精品国产一区二区 | 免费人成年短视频在线观看网站 | av一二三四区 | 久久激情小视频 | av在线免费看网站 | 欧美三级日本三级少妇99 | 欧美1区2区| 一本色道精品久久一区二区三区 | 禁漫天堂久久久久久久久久 | h视频在线免费观看 | 国内精品国产三级国产a久久 | 超碰97国产在线 | 精品一区二区在线播放 | 综合在线视频 | 亚洲一区免费电影 | 国产自91精品一区二区 | 青青国产在线视频 | 国产1区在线观看 | 久久亚洲春色中文字幕久久 | 黄色毛片免费视频 | 国产成人高潮免费观看精品 | 黄色的视频免费观看 | 九九视频久久 |