国产久_亚欧精品一区_久久亚洲美女_99精品在线观看_日韩成人三级_久久精品久久久久

Primitive

基本體表示Scene中的幾何體。幾何圖形可以來自下面的示例1所示的單個GeometryInstance,也可以來自實例數(shù)組,即使幾何圖形來自不同的幾何圖形類型,如代碼示例2中所示的RectangleGeometryEllipsoidGeometry

基本體將幾何體實例與描述完整著色的Appearance結合起來,包括MaterialRenderState。大致上,幾何體實例定義結構和位置,外觀定義視覺特征。分離幾何體和外觀允許我們混合和匹配大多數(shù)幾何體和外觀,并獨立地添加新的幾何體或外觀。

將多個實例組合成一個原語稱為批處理,顯著提高了靜態(tài)數(shù)據(jù)的性能。實例可以單獨選取;Scene#pick返回其GeometryInstance#id。使用類似于PerInstanceColorAppearance的每個實例外觀,每個實例也可以具有唯一的顏色。

Geometry可以在Web工作者或主線程上創(chuàng)建和批處理。前兩個示例顯示將使用幾何圖形的描述在Web工作者上創(chuàng)建的幾何圖形。第三個示例演示如何通過顯式調用createGeometry方法在主線程上創(chuàng)建幾何體。

new Primitive(options)
Parameters:
options (Object)
Name Description
options.geometryInstances
(Array.<GeometryInstance> | GeometryInstance)
要渲染的幾何體實例-或單個幾何體實例。
options.appearance
Appearance
用于呈現(xiàn)原語的外觀。
options.depthFailAppearance
Appearance
用于在深度測試失敗時對該基元進行著色的外觀。
options.show
Boolean
default true
確定是否顯示此基元。
options.modelMatrix
Matrix4
default Matrix4.IDENTITY
將基本體(所有幾何體實例)從模型轉換為世界坐標的4x4轉換矩陣。
options.vertexCacheOptimize
Boolean
default false
true時,幾何體頂點將針對頂點前和頂點后明暗器緩存進行優(yōu)化。
options.interleave
Boolean
default false
true時,幾何頂點屬性交錯,這可以稍微提高渲染性能,但增加加載時間。
options.compressVertices
Boolean
default true
true時,幾何體頂點被壓縮,這將節(jié)省內存。
options.releaseGeometryInstances
Boolean
default true
true時,原語不保留對輸入geometryInstances的引用以保存內存。
options.allowPicking
Boolean
default true
true時,每個幾何體實例只能使用Scene#pick進行選擇。當false時,保存GPU內存。
options.cull
Boolean
default true
true時,渲染器的平截體剔除和地平線根據(jù)其邊界體積剔除基本體的命令。如果要手動剔除原語,請將其設置為false以獲得較小的性能增益。
options.asynchronous
Boolean
default true
確定在準備就緒之前是異步創(chuàng)建基元還是阻止創(chuàng)建基元。
options.debugShowBoundingVolume
Boolean
default false
僅用于調試。確定是否顯示此基元的命令的邊界球。
options.shadows
ShadowMode
default ShadowMode.DISABLED
確定此基元是投射還是接收來自每個光源的陰影。
Examples
// 1. Draw a translucent ellipse on the surface with a checkerboard pattern
var instance = new bmgl.GeometryInstance({
  geometry : new bmgl.EllipseGeometry({
      center : bmgl.Cartesian3.fromDegrees(-100.0, 20.0),
      semiMinorAxis : 500000.0,
      semiMajorAxis : 1000000.0,
      rotation : bmgl.Math.PI_OVER_FOUR,
      vertexFormat : bmgl.VertexFormat.POSITION_AND_ST
  }),
  id : 'object returned when this instance is picked and to get/set per-instance attributes'
});
scene.primitives.add(new bmgl.Primitive({
  geometryInstances : instance,
  appearance : new bmgl.EllipsoidSurfaceAppearance({
    material : bmgl.Material.fromType('Checkerboard')
  })
}));
// 2. Draw different instances each with a unique color
var rectangleInstance = new bmgl.GeometryInstance({
  geometry : new bmgl.RectangleGeometry({
    rectangle : bmgl.Rectangle.fromDegrees(-140.0, 30.0, -100.0, 40.0),
    vertexFormat : bmgl.PerInstanceColorAppearance.VERTEX_FORMAT
  }),
  id : 'rectangle',
  attributes : {
    color : new bmgl.ColorGeometryInstanceAttribute(0.0, 1.0, 1.0, 0.5)
  }
});
var ellipsoidInstance = new bmgl.GeometryInstance({
  geometry : new bmgl.EllipsoidGeometry({
    radii : new bmgl.Cartesian3(500000.0, 500000.0, 1000000.0),
    vertexFormat : bmgl.VertexFormat.POSITION_AND_NORMAL
  }),
  modelMatrix : bmgl.Matrix4.multiplyByTranslation(bmgl.Transforms.eastNorthUpToFixedFrame(
    bmgl.Cartesian3.fromDegrees(-95.59777, 40.03883)), new bmgl.Cartesian3(0.0, 0.0, 500000.0), new bmgl.Matrix4()),
  id : 'ellipsoid',
  attributes : {
    color : bmgl.ColorGeometryInstanceAttribute.fromColor(bmgl.Color.AQUA)
  }
});
scene.primitives.add(new bmgl.Primitive({
  geometryInstances : [rectangleInstance, ellipsoidInstance],
  appearance : new bmgl.PerInstanceColorAppearance()
}));
// 3. Create the geometry on the main thread.
scene.primitives.add(new bmgl.Primitive({
  geometryInstances : new bmgl.GeometryInstance({
      geometry : bmgl.EllipsoidGeometry.createGeometry(new bmgl.EllipsoidGeometry({
        radii : new bmgl.Cartesian3(500000.0, 500000.0, 1000000.0),
        vertexFormat : bmgl.VertexFormat.POSITION_AND_NORMAL
      })),
      modelMatrix : bmgl.Matrix4.multiplyByTranslation(bmgl.Transforms.eastNorthUpToFixedFrame(
        bmgl.Cartesian3.fromDegrees(-95.59777, 40.03883)), new bmgl.Cartesian3(0.0, 0.0, 500000.0), new bmgl.Matrix4()),
      id : 'ellipsoid',
      attributes : {
        color : bmgl.ColorGeometryInstanceAttribute.fromColor(bmgl.Color.AQUA)
      }
  }),
  appearance : new bmgl.PerInstanceColorAppearance()
}));
See:

Members

(readonly) allowPicking : Boolean

true時,每個幾何體實例只能使用Scene#pick進行選擇。當false時,保存GPU內存。*
Default Value: true

appearance : Appearance

Appearance用于對該原語進行著色。每個幾何體實例都以相同的外觀著色。一些外觀,如PerInstanceColorAppearance允許為每個實例提供唯一的屬性。
Default Value: undefined

(readonly) asynchronous : Boolean

確定是否將在Web工作者上創(chuàng)建和批處理幾何體實例。
Default Value: true

(readonly) compressVertices : Boolean

true時,幾何體頂點被壓縮,這將節(jié)省內存。
Default Value: true

cull : Boolean

true時,渲染器的平截體剔除和地平線根據(jù)其邊界體積剔除基本體的命令。如果要手動剔除原語,請將其設置為false以獲得較小的性能增益。
Default Value: true

debugShowBoundingVolume : Boolean

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

為基本體中的每個draw命令繪制邊界球體。

Default Value: false

depthFailAppearance : Appearance

Appearance用于在深度測試失敗時對該原語進行著色。每個幾何體實例都以相同的外觀著色。一些外觀,如PerInstanceColorAppearance允許為每個實例提供唯一的屬性。

當使用需要顏色屬性的外觀時,如PerInstanceColorAppearance,請為每個實例屬性添加DepthFailColor。

需要ext}frag_depth webgl擴展以正確呈現(xiàn)。如果不支持擴展,則可能存在工件。

Default Value: undefined

(readonly) geometryInstances : (Array.<GeometryInstance>|GeometryInstance)

使用此基元渲染的幾何體實例。在構造基元時,如果options.releaseGeometryInstancestrue,則可能是undefined

在呈現(xiàn)基元后更改此屬性沒有效果。

Default Value: undefined

(readonly) interleave : Boolean

確定幾何體頂點屬性是否交錯,這可以稍微提高渲染性能。
Default Value: false

modelMatrix : Matrix4

將基本體(所有幾何體實例)從模型轉換為世界坐標的4x4轉換矩陣。當這是一個單位矩陣時,原語以世界坐標繪制,即地球的wgs84坐標。本地參考幀可以通過提供不同的轉換矩陣來使用,如Transforms.eastNorthUpToFixedFrame返回的轉換矩陣。

此屬性僅在3D模式下受支持。

Default Value: Matrix4.IDENTITY
Example:
var origin = bmgl.Cartesian3.fromDegrees(-95.0, 40.0, 200000.0);
p.modelMatrix = bmgl.Transforms.eastNorthUpToFixedFrame(origin);

(readonly) ready : Boolean

確定基元是否已完成并準備好呈現(xiàn)。如果此屬性為真,則下次調用Primitive#update時將呈現(xiàn)原語。

(readonly) readyPromise : Promise.<Primitive>

獲取解決基元何時準備呈現(xiàn)的承諾。

(readonly) releaseGeometryInstances : Boolean

true時,原語不保留對輸入geometryInstances的引用以保存內存。
Default Value: true

shadows : ShadowMode

確定此基元是投射還是接收來自每個光源的陰影。
Default Value: ShadowMode.DISABLED

show : Boolean

確定是否顯示基元。這會影響基本體中的所有幾何體實例。
Default Value: true

(readonly) vertexCacheOptimize : Boolean

true時,幾何體頂點將針對頂點前和頂點后明暗器緩存進行優(yōu)化。
Default Value: true

Methods

destroy()
銷毀此對象持有的WebGL資源。銷毀對象允許確定地釋放WebGL資源,而不是依賴垃圾收集器來銷毀此對象。

一旦對象被破壞,就不應使用它;調用除isDestroyed以外的任何函數(shù)都將導致DeveloperError異常。因此,將返回值(undefined)賦給對象,如示例中所述。

Example
e = e && e.destroy();
Throws
See:
getGeometryInstanceAttributes(id) → {Object}
返回GeometryInstance的每個實例可修改屬性。
Parameters:
id (*) GeometryInstance的ID。
Example
var attributes = primitive.getGeometryInstanceAttributes('an id');
attributes.color = bmgl.ColorGeometryInstanceAttribute.toValue(bmgl.Color.AQUA);
attributes.show = bmgl.ShowGeometryInstanceAttribute.toValue(true);
attributes.distanceDisplayCondition = bmgl.DistanceDisplayConditionGeometryInstanceAttribute.toValue(100.0, 10000.0);
attributes.offset = bmgl.OffsetGeometryInstanceAttribute.toValue(Cartesian3.IDENTITY);
Throws
  • DeveloperError : 必須在調用GetGeometryInstanceAttributes之前調用Update。
isDestroyed() → {Boolean}
如果此對象被破壞,則返回true;否則返回false。

如果此對象被破壞,則不應使用它;調用除isDestroyed以外的任何函數(shù)都將導致DeveloperError異常。

See:
update()
ViewerBMWidget渲染場景以獲取渲染此原語所需的繪制命令時調用。

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

Throws
  • DeveloperError : 所有實例幾何必須具有相同的PrimitiveType。
  • DeveloperError : 外觀和材料有一個統(tǒng)一的名稱。
  • DeveloperError : Primitive.ModelMatrix僅在3D模式下受支持。
  • RuntimeError : 需要頂點紋理獲取支持來渲染具有每個實例屬性的基本體。頂點紋理圖像單位的最大數(shù)目必須大于零。
国产久_亚欧精品一区_久久亚洲美女_99精品在线观看_日韩成人三级_久久精品久久久久
<code id="kseui"><acronym id="kseui"></acronym></code>
  • <abbr id="kseui"><tbody id="kseui"></tbody></abbr>
  • <button id="kseui"></button>
  • 久久久一本精品99久久精品| 日韩av电影免费播放| 国产乱码精品一区二区三区中文| 国产伦精品一区二区三区视频孕妇 | 在线一区欧美| 国产99在线免费| 无遮挡亚洲一区| 亚洲国产高清一区| 高清av免费一区中文字幕| 日韩色妇久久av| 狠狠久久婷婷| 国产欧美在线一区二区| 亚洲精品一品区二品区三品区| 亚洲性人人天天夜夜摸| 产国精品偷在线| 亚洲视频在线观看日本a| 国产精品综合| 欧美精品一区三区在线观看| 欧美区一区二| 97中文在线观看| 欧美一区2区三区4区公司二百 | 含羞草久久爱69一区| 7777精品久久久大香线蕉小说| 日本精品免费| 羞羞答答国产精品www一本 | 国产精品xxx在线观看www| 亚洲久久视频| 欧美一区观看| 国产伦精品一区二区三| 日本一区二区三区免费观看| 国产日韩欧美一区在线 | 久久久99爱| 中文字幕欧美人与畜| 91高跟黑色丝袜呻吟在线观看| 色婷婷精品国产一区二区三区| 欧美亚洲免费高清在线观看| 一本久道久久综合| 国产精品对白一区二区三区| 在线日韩av| 亚洲电影网站| 精品91免费| 亚洲制服少妇| 国内一区二区三区在线视频| 欧美性色黄大片人与善| 久久精品女人| 伊人成人网在线看| 麻豆传媒一区二区| 99re在线视频上| 亚洲毛片播放| 欧美日韩系列| 日韩激情视频| 九色综合婷婷综合| 久久久久久一区| 亚洲啪啪91| 欧美福利网址| 一本色道久久综合亚洲精品婷婷| 国产亚洲二区| 性高湖久久久久久久久| 伊人久久大香线蕉av超碰演员| 午夜一区二区三区| 欧美日韩在线一二三| 国产精品加勒比| 国产精品一级| 国产三级精品在线不卡| 午夜欧美视频| 欧美成人tv| 欧美国产高潮xxxx1819| 一区二区在线高清视频| 性欧美.com| 日韩性感在线| 日韩欧美激情一区二区| 欧美日韩日本网| 欧美成人dvd在线视频| 久草热久草热线频97精品| 女人天堂亚洲aⅴ在线观看| 色阁综合av| 亚洲精品中文字幕在线| 亚洲日本欧美在线| 综合久久国产| 欧美激情一区二区三区在线视频| 欧美一区二区三区四区夜夜大片| 日本在线视频不卡| 亚洲一区二区三区在线观看视频| 亚洲免费久久| 国产一区日韩一区| 在线看片一区| 国产精品久久久久久久久久直播 | 国内一区二区在线视频观看| 欧美日韩在线一二三| 极品日韩久久| 免费亚洲视频| 国产精品二区在线| 欧美日韩成人一区二区三区| 欧美在线日韩精品| 一区二区在线不卡| 亚洲福利免费| 久久精品首页| 精品在线观看一区二区| 亚洲一二三区在线| 黑丝一区二区三区| 欧美一区=区| 国精产品一区二区| 亚洲乱码国产乱码精品天美传媒| 欧美黄色一区| 麻豆成人在线| 欧美日韩精品久久久免费观看| 一本一道久久a久久综合精品| 黄色另类av| 久久激情视频| 色综合久久久久久久久五月| 一区在线免费| 国产精品亚洲一区| 亚洲欧美日韩国产成人综合一二三区| 亚洲午夜在线观看| 国产精品一区二区在线观看| 亚洲午夜精品一区二区| 亚洲精华国产欧美| 国产99在线免费| 亚洲一区不卡在线| 欧美综合二区| 亚洲欧美国产一区二区| 国产伦精品一区二区三区| 欧美精品成人一区二区在线观看| 欧美伊人影院| 国产成人精品日本亚洲11| 伊人色综合影院| 99久久精品免费看国产四区| 亚洲高清不卡一区| 久久久久久九九九九| 亚洲一区三区视频在线观看| 久久婷婷久久| 中文字幕在线中文字幕日亚韩一区| 亚洲一区三区在线观看| 久中文字幕一区| 国产精品久久久亚洲一区| 日日噜噜噜噜夜夜爽亚洲精品| 亚洲一区欧美激情| 天天爽天天狠久久久| 麻豆成人av| 国产综合精品| 欧美日韩在线高清| 羞羞答答国产精品www一本 | 国产精品yjizz| 久久久久久精| 久久国产精品亚洲77777| 伊人婷婷久久| 亚洲黄色在线| 精品综合在线| 国产日产高清欧美一区二区三区| 婷婷精品国产一区二区三区日韩 | 在线视频亚洲| 一区二区三区四区不卡| 精品一区二区三区国产| 久久精品国产综合精品| 激情婷婷欧美| 在线观看成人一级片| 国产欧美日韩伦理| 美脚丝袜一区二区三区在线观看| 国产一在线精品一区在线观看| 欧美日韩在线精品一区二区三区| 51午夜精品| 国产女优一区| 狠狠综合久久| 欧美精品一卡| 伊人色综合影院| 五码日韩精品一区二区三区视频| 精品国产一二| 国产厕所精品在线观看| 久久久久久精| 亚欧成人精品| 免费久久99精品国产自| 一区二区动漫| 亚洲精选国产| 日韩一级网站| 在线视频免费在线观看一区二区| 国产精品vip| 欧美午夜精品理论片a级大开眼界| 亚洲乱码一区二区三区三上悠亚| 日本电影一区二区三区| 玛丽玛丽电影原版免费观看1977 | 国产女主播一区二区三区| 97超碰人人模人人爽人人看| 久久精品人人| 久久一区二区三区四区五区| 久久精品99| 国产精品9999久久久久仙踪林| 91亚色免费| 国产日韩亚洲精品| 国产欧美日韩一区二区三区| 国产精品视频免费观看| 精品日韩电影| 日韩欧美视频一区二区三区四区| 色女人综合av| 欧美日韩一区二区三区四区在线观看| 欧美久久影院| 一区二区毛片| 91原创国产| 欧美久久久久久久| 亚洲国产激情一区二区三区| 在线不卡视频一区二区|