Model

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

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

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

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

                對于高精度渲染,bigemap-gl支持擴展,它引入了BMGL_RTC_MODELVIEW參數語義,該語義表示節點在WGS84坐標中相對于當地血統。

                new Model(options)
                Parameters:
                options (Object)
                Name Description
                options.gltf
                (Object | ArrayBuffer | Uint8Array)
                gltf json對象或二進制gltf緩沖區。
                options.basePath
                (Resource | String)
                default ''
                gltf json中的路徑相對于的基本路徑。
                options.show
                Boolean
                default true
                確定是否顯示模型基元。
                options.modelMatrix
                Matrix4
                default Matrix4.IDENTITY
                將模型從模型轉換為世界坐標的4x4轉換矩陣。
                options.scale
                Number
                default 1.0
                應用于此模型的統一比例。
                options.minimumPixelSize
                Number
                default 0.0
                模型的近似最小像素大小,與縮放無關。
                options.maximumScale
                Number
                模型的最大比例大小。最小像素化的上限。
                options.id
                Object
                使用Scene#pick選取模型時要返回的用戶定義對象。
                options.allowPicking
                Boolean
                default true
                true時,每個GLTF網格和基本體都可以用Scene#pick拾取。
                options.incrementallyLoadTextures
                Boolean
                default true
                確定加載模型后紋理是否可以繼續流入。
                options.asynchronous
                Boolean
                default true
                確定在加載完所有GLTF文件后,模型WebGL資源創建是否將分布在多個幀或塊上,直到完成。
                options.clampAnimations
                Boolean
                default true
                確定模型的動畫是否應在未指定關鍵幀的幀上保持姿勢。
                options.shadows
                ShadowMode
                default ShadowMode.ENABLED
                確定模型是投射還是接收來自每個光源的陰影。
                options.debugShowBoundingVolume
                Boolean
                default false
                僅用于調試。為模型中的每個繪制命令繪制邊界球體。
                options.debugWireframe
                Boolean
                default false
                僅用于調試。在線框中繪制模型。
                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編碼的模型進行量化。這減少了編碼模型的總內存使用量。
                options.imageBasedLightingFactor
                Cartesian2
                default Cartesian2(1.0, 1.0)
                從地球、天空、大氣和星空盒縮放基于漫反射和鏡面反射的圖像照明。
                options.lightColor
                Cartesian3
                用來給模型加陰影的陽光的顏色和強度。
                options.luminanceAtZenith
                Number
                default 0.2
                太陽在天頂的亮度,單位為千克燭光每平方米,用于此模型的程序環境地圖。
                options.sphericalHarmonicCoefficients
                Array.<Cartesian3>
                三階球面諧波系數用于圖像光的漫反射顏色。
                options.specularEnvironmentMaps
                String
                KTX文件的一個URL,其中包含鏡面照明和卷積鏡面mipmap的立方體映射。
                options.credit
                (Credit | String)
                數據源的信用,顯示在畫布上。
                See:

                Members

                activeAnimations : ModelAnimationCollection

                當前正在播放的GLTF動畫。

                (readonly) allowPicking : Boolean

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

                (readonly) asynchronous : Boolean

                確定在加載完所有GLTF文件后,模型WebGL資源創建是否將分布在多個幀或塊上,直到完成。
                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

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

                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

                此屬性僅用于調試;它既不用于生產,也不進行優化。

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

                Default Value: false

                debugWireframe : Boolean

                此屬性僅用于調試;它既不用于生產,也不進行優化。

                在線框中繪制模型。

                Default Value: false

                distanceDisplayCondition : DistanceDisplayCondition

                獲取或設置條件,該條件指定此模型將顯示在距相機的距離處。
                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

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

                lightColor : Cartesian3

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

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

                Default Value: undefined

                luminanceAtZenith : Number

                太陽在天頂的亮度,單位為千克燭光每平方米,用于此模型的程序環境地圖。未定義Model#specularEnvironmentMapsModel#sphericalHarmonicCoefficients時使用。
                Default Value: 0.2

                maximumScale : Number

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

                minimumPixelSize : Number

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

                modelMatrix : Matrix4

                將模型從模型轉換為世界坐標的4x4轉換矩陣。當這是一個單位矩陣時,模型是以世界坐標繪制的,即地球的wgs84坐標。本地參考幀可以通過提供不同的轉換矩陣來使用,如Transforms.eastNorthUpToFixedFrame返回的轉換矩陣。
                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

                返回掛起的紋理加載數。

                (readonly) ready : Boolean

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

                (readonly) readyPromise : Promise.<Model>

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

                此承諾在模型呈現的第一幀之前在幀的末尾解決。

                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之前應用于此模型的統一比例。大于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>

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

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

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

                Methods

                (static) fromGltf(options) → {Model}

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

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

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

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

                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
                將模型從模型轉換為世界坐標的4x4轉換矩陣。
                options.scale
                Number
                default 1.0
                應用于此模型的統一比例。
                options.minimumPixelSize
                Number
                default 0.0
                模型的近似最小像素大小,與縮放無關。
                options.maximumScale
                Number
                模型的最大比例。
                options.id
                Object
                使用Scene#pick選取模型時要返回的用戶定義對象。
                options.allowPicking
                Boolean
                default true
                true時,每個GLTF網格和基本體都可以用Scene#pick拾取。
                options.incrementallyLoadTextures
                Boolean
                default true
                確定加載模型后紋理是否可以繼續流入。
                options.asynchronous
                Boolean
                default true
                確定在加載完所有GLTF文件后,模型WebGL資源創建是否將分布在多個幀或塊上,直到完成。
                options.clampAnimations
                Boolean
                default true
                確定模型的動畫是否應在未指定關鍵幀的幀上保持姿勢。
                options.shadows
                ShadowMode
                default ShadowMode.ENABLED
                確定模型是投射還是接收來自每個光源的陰影。
                options.debugShowBoundingVolume
                Boolean
                default false
                僅用于調試。為模型中的每個繪制命令繪制邊界球體。
                options.debugWireframe
                Boolean
                default false
                僅用于調試。在線框中繪制模型。
                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編碼的模型進行量化。這減少了編碼模型的總內存使用量。
                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) 現場。
                applyArticulations()
                將任何修改的連接階段應用于參與任何連接的每個節點的矩陣。請注意,這將覆蓋參與節點上的任何節點轉換。
                Throws
                • DeveloperError : 模型未加載。使用model.readyPromise或等待model.ready為true。
                destroy()
                銷毀此對象持有的WebGL資源。銷毀對象允許確定地釋放WebGL資源,而不是依賴垃圾收集器來銷毀此對象。

                一旦對象被破壞,就不應使用它;調用除isDestroyed以外的任何函數都將導致DeveloperError異常。因此,將返回值(undefined)賦給對象,如示例中所述。
                Example
                model = model && model.destroy();
                Throws
                See:
                getMaterial(name) → {ModelMaterial}
                返回具有給定name屬性的GLTF材質。
                Parameters:
                name (String) 物料的GLTF名稱。
                Throws
                • DeveloperError : 模型未加載。使用model.readyPromise或等待model.ready為true。
                getMesh(name) → {ModelMesh}
                返回具有給定name屬性的gltf網格。
                Parameters:
                name (String) 網格的gltf名稱。
                Throws
                • DeveloperError : 模型未加載。使用model.readyPromise或等待model.ready為true。
                getNode(name) → {ModelNode}
                返回具有給定name屬性的GLTF節點。這用于修改GLTF動畫之外的動畫節點的轉換。
                Parameters:
                name (String) 節點的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。

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

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

                Throws
                主站蜘蛛池模板: 1区2区3区产品乱码免费| 久久久久无码精品国产H动漫| 精品国产午夜理论片不卡| 最新69堂国产成人精品视频| 全彩侵犯熟睡的女同学本子| 国产高清精品入口91| 在线观看中文字幕第一页| 中文字幕日韩有码| 模特冰漪丰硕之美1| 人人澡人人澡人人看添av| 舌头伸进去里面吃小豆豆| 国产欧美色一区二区三区| 99热这里只有精品免费播放| 扒开双腿疯狂进出爽爽爽动态图| 亚洲一区二区精品视频| 狠狠干视频网站| 啊灬啊别停灬用力视频啊视频 | 欧美人与动交片免费播放| 免费久久人人爽人人爽av| 色噜噜综合亚洲AV中文无码| 国产成人无码18禁午夜福利P| 5060在线观看| 天天干天天干天天| 三级黄色在线免费观看| 波多野结衣与上司出差| 吃奶摸下的激烈免费视频播放| 麻豆久久婷婷综合五月国产| 国产精品影音先锋| 99视频精品全部在线播放| 成av免费大片黄在线观看| 久久久本网站受美利坚法律保护| 校花的好大的奶好爽漫画| 亚洲欧美日韩三级| 狠狠色噜噜狠狠狠狠69| 北岛玲在线精品视频| 色狠狠色狠狠综合天天| 国产成人无码aa精品一区| 伊人一伊人色综合网| 国内精品久久久久伊人av| √天堂中文官网8在线| 成年美女黄网站色大片免费看 |