ModelCombine

new mars3d.graphic.ModelCombine(options)

大数据 gltf小模型集合 (合并渲染) Primitive图元 矢量对象
【注意:该类仅对Cesium 1.97之前版本有效,1.97后Cesium移除了 Cesium.ModelInstanceCollection 】

参数名称 类型 描述信息
options object

参数对象,包括以下:

参数名称 类型 默认值 描述信息
url Cesium.Resource | string 可选

glTF模型的URI的字符串或资源属性。

instances Array.<object> 可选

集合信息数组,单个对象包括:

参数名称 类型 描述信息
position LngLatPoint | Cesium.Cartesian3 | Array.<number>

坐标位置

style ModelPrimitive.StyleOptions 可选

样式信息(目前仅支持方向和比例参数)

attr object 可选

矢量数据的 属性信息,可以任意附加属性。

batchTable * 可选

实例化的3D贴图的Cesium.Cesium3DTileBatchTable批处理表。

requestType object 可选

请求类型,用于确定请求的优先级

gltf object | ArrayBuffer | Uint8Array 可选

一个glTF JSON对象,或者一个二进制的glTF缓冲区。

basePath Cesium.Resource | string '' 可选

glTF JSON中路径相对的基本路径。

dynamic boolean false 可选

提示实例模型矩阵是否会频繁更新。

allowPicking boolean true 可选

当true时,每个glTF和Primitive都可以用Cesium.Scene#pick来拾取。

asynchronous boolean true 可选

确定模型WebGL资源创建是否将分散在几个帧或块上,直到所有glTF文件加载完成。

incrementallyLoadTextures boolean true 可选

确定模型加载后纹理是否会继续流进来。

shadows Cesium.ShadowMode ShadowMode.ENABLED 可选

指定模型是投射还是接收来自光源的阴影。

imageBasedLightingFactor Cesium.Cartesian2 new Cartesian2(1.0, 1.0) 可选

指定来自基于图像的漫反射和镜面照明的贡献。

lightColor Cesium.Cartesian3 可选

光的颜色当遮光模型。当undefined场景的浅色被使用代替。

backFaceCulling boolean true 可选

是否剔除面向背面的几何图形。当为真时,背面剔除由glTF材质的双面属性决定;当为false时,禁用背面剔除。

debugShowBoundingVolume boolean false 可选

仅供调试。查看模型的包围边界球。

enableDebugWireframe boolean false 可选

仅供调试。是否可以通过debugWireframe来切换查看模型的三角网线框图。

debugWireframe boolean false 可选

仅供调试。是否打开模型的三角网线框图。

//以下是 模型动画相关

startTime Cesium.JulianDate 可选

场景时间开始播放动画。当undefined时,动画从下一帧开始。

delay number 0.0 可选

从startTime开始播放的延迟,以秒为单位。

stopTime Cesium.JulianDate 可选

场景时间停止播放动画。当这是undefined,动画播放它的整个持续时间。

removeOnStop boolean false 可选

当true时,动画在停止播放后被删除。

multiplier number 1.0 可选

大于1.0的值增加动画播放的速度相对于场景时钟的速度;小于1.0会降低速度。

reverse boolean false 可选

当true时,动画会反向播放。

loop Cesium.ModelAnimationLoop Cesium.ModelAnimationLoop.REPEAT 可选

决定动画是否循环以及如何循环。

id string | number createGuid() 可选

矢量数据id标识

name string '' 可选

矢量数据名称

show boolean true 可选

矢量数据是否显示

eventParent BaseClass | boolean 可选

指定的事件冒泡对象,默认为所加入的图层对象,false时不冒泡事件

allowDrillPick boolean | function 可选

是否允许鼠标穿透拾取

flyTo boolean 可选

加载完成数据后是否自动飞行定位到数据所在的区域。

flyToOptions object 可选

加载完成数据后是否自动飞行定位到数据所在的区域的对应 BaseGraphic#flyTo方法参数。

参考:

继承

成员(属性)

readonly geometryInstanceAttributes : object

返回实例可修改的属性。Cesium.GeometryInstance

继承自:
使用示例:
var attributes = primitiveGraphic.geometryInstanceAttributes;
attributes.color = Cesium.ColorGeometryInstanceAttribute.toValue(Cesium.Color.AQUA);
attributes.show = Cesium.ShowGeometryInstanceAttribute.toValue(true);

readonly hasOpacity : boolean

是否可以调整透明度

instances : Array.<object>

数据集合数组,同类的构造参数

继承自:

readonly isEditing : boolean

是否正在编辑状态,不是所有子类均支持编辑

继承自:

readonly label : Cesium.Label|*

附加的label文本对象(仅基础primitive支持,如Combine对象不支持)

继承自:

readonly primitive : Cesium.Primitive|Cesium.GroundPrimitive|Cesium.ClassificationPrimitive|*

矢量数据对应的 Cesium内部对象

继承自:

primitiveCollection : Cesium.PrimitiveCollection|Cesium.LabelCollection|Cesium.BillboardCollection|Cesium.PointPrimitiveCollection|Cesium.CloudCollection

当加载primitive数据的内部Cesium容器

继承自:

readonly uniforms : object|undefined

对应材质的uniforms(当赋有材质时), 一个对象,它的属性被用来设置片段着色器shader。

对象属性值可以是常量或函数。这个函数将在每一帧后处理阶段执行之前被调用。

常量值也可以是图像的URI、数据URI,或者可以用作纹理的HTML元素,如HTMLImageElement或HTMLCanvasElement。

继承自:

方法

closeHighlight()void

清除已选中的高亮,原有style的配置项需要与highlightStyle配置有一一对应关系,否则无法清除

返回值:

继承自:

endDraw()boolean

完成绘制和编辑,如有未完成的绘制会自动完成。 在移动端需要调用此方法来类似PC端双击结束。

返回值:

是否正常结束了矢量对象绘制

继承自:

getPickedObject(pickId)object

根据 pickId 获取对应绑定的数据据对象

参数名称 类型 描述信息
pickId string

单个对象的pickid

返回值:

对应绑定的数据对象

继承自:

getRectangle(options)Cesium.Rectangle|object

获取数据的矩形边界

参数名称 类型 描述信息
options boolean 可选

控制参数

参数名称 类型 默认值 描述信息
isFormat boolean false 可选

是否格式化,格式化时示例: { xmin: 73.16895, xmax: 134.86816, ymin: 12.2023, ymax: 54.11485 }

返回值:

isFormat:true时,返回格式化对象,isFormat:false时返回Cesium.Rectangle对象

继承自:

openHighlight(highlightStyle, closeLast)void

高亮对象。

参数名称 类型 默认值 描述信息
highlightStyle object 可选

高亮的样式,具体见各GraphicType矢量数据的style参数。

closeLast boolean true 可选

是否清除地图上上一次的高亮对象

返回值:

继承自:

redraw(style)BasePrimitive

重新渲染

参数名称 类型 描述信息
style object 可选

新的样式信息

返回值:

当前对象本身

继承自:

setColorStyle(style, index)void

更新颜色, 只对纯色材质有效,其他材质无法单独更新,需要setStle方法调用(全部更新渲染)。

参数名称 类型 描述信息
style object

样式信息

参数名称 类型 默认值 描述信息
color string | Cesium.Color "#3388ff" 可选

颜色

opacity number 1.0 可选

透明度,取值范围:0.0-1.0

index number | undefined 可选

更新的instances对象index值,为空时更新所有对象。

返回值:

继承自:

setOpacity(value)void

设置透明度, 不是所有类型均支持调整透明度,主要看数据类型和材质类型决定。

参数名称 类型 描述信息
value number

透明度

返回值:

继承自:

startDraw(layer)void

开始绘制矢量数据,绘制的数据会加载在layer图层。

参数名称 类型 描述信息
layer GraphicLayer

图层

返回值:

继承自:

startEditing()void

开始编辑对象

返回值:

继承自:

stopDraw()void

停止绘制

返回值:

继承自:

stopEditing()void

停止编辑,释放正在编辑的对象。

返回值:

继承自:

toGeoJSON(options)object

将矢量数据导出为GeoJSON格式规范对象。[因为geojson格式规范,是拆分为多个Feature,如果不满足需求,也可以用toJSON方法]

参数名称 类型 描述信息
options object 可选

参数对象:

参数名称 类型 描述信息
noAlt boolean 可选

不导出高度值

返回值:

GeoJSON格式规范对象

继承自:

toJSON()object

将矢量数据的坐标、样式及属性等信息导出为对象,可以用于存储。

返回值:

导出的坐标、样式及属性等信息

继承自: