BasePolyCombine

new mars3d.graphic.BasePolyCombine(options)

大数据线面集合 (合并渲染) Primitive图元 矢量对象基类

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

参数对象,包括以下:

参数名称 类型 默认值 描述信息
instances Array.<object> 可选

线面信息数组,单个对象包括:

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

坐标位置

style object 可选

样式信息

attr object 可选

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

style object 可选

所有面的公共样式信息

highlight object 可选

鼠标移入或单击后的对应高亮的部分样式(仅支持Color纯色材质)

参数名称 类型 默认值 描述信息
type string 可选

触发高亮的方式,默认鼠标移入,可以指定为type:'click'为单击后高亮

enabled boolean true 可选

是否启用

appearance Cesium.Appearance 可选

[cesium原生]用于渲染图元的外观。

attributes Cesium.Appearance 可选

[cesium原生]每个实例的属性。

depthFailAppearance Cesium.Appearance 可选

当深度测试失败时,用于为该图元着色的外观。

vertexCacheOptimize boolean false 可选

当true,几何顶点优化前和后顶点着色缓存。

interleave boolean false 可选

当true时,几何顶点属性被交叉,这可以略微提高渲染性能,但会增加加载时间。

compressVertices boolean true 可选

当true时,几何顶点被压缩,这将节省内存。提升效率。

releaseGeometryInstances boolean true 可选

当true时,图元不保留对输入geometryInstances的引用以节省内存。

allowPicking boolean true 可选

当true时,每个几何图形实例只能通过Scene#pick进行挑选。当false时,保存GPU内存。

cull boolean true 可选

当true时,渲染器会根据图元的边界体积来剔除它们的截锥和地平线。设置为false,如果你手动剔除图元,可以获得较小的性能提升。

asynchronous boolean true 可选

确定该图元是异步创建还是阻塞创建,直到就绪。

debugShowBoundingVolume boolean false 可选

仅供调试。确定该图元命令的边界球是否显示。

debugShowShadowVolume boolean false 可选

仅供调试。贴地时,确定是否绘制了图元中每个几何图形的阴影体积。必须是true创建卷之前要释放几何图形或选项。releaseGeometryInstance必须是false。

popup string | Array | function 可选

绑定的popup弹窗值,也可以bindPopup方法绑定

popupOptions Popup.StyleOptions 可选

popup弹窗时的配置参数,也支持如pointerEvents等Popup构造参数

tooltip string | Array | function 可选

绑定的tooltip弹窗值,也可以bindTooltip方法绑

tooltipOptions Tooltip.StyleOptions 可选

tooltip弹窗时的配置参数,也支持如pointerEvents等Tooltip构造参数

contextmenuItems object 可选

当矢量数据支持右键菜单时,也可以bindContextMenu方法绑定

id string | number createGuid() 可选

矢量数据id标识

name string 可选

矢量数据名称

show boolean true 可选

矢量数据是否显示

availability Cesium.TimeIntervalCollection | Cesium.TimeInterval | Array | object 可选

指定时间范围内显示该对象

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 groundPrimitiveCollection : Cesium.PrimitiveCollection

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

继承自:

readonly hasCluster : boolean

是否支持聚合

继承自:

instances : Array.<object>

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

继承自:

readonly isDrawing : boolean

是否正在绘制状态

继承自:

readonly isEditing : boolean

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

继承自:

readonly label : Array.<Cesium.Label>|*

附加的label文本对象

offsetHeight : number

平移指定偏移高度(相对于原始坐标值),【提示:仅部分子类支持,如 PolygonPrimitiveRectanglePrimitiveBoxPrimitiveCylinderPrimitiveEllipsoidPrimitiveCorridorPrimitive

继承自:

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

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

继承自:

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

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

继承自:

readonly ready : boolean

矢量数据对应的渲染是否完成

继承自:

readonly readyPromise : Promise.<object>

获取Primitive对象渲染完成的Promise承诺(仅部分支持,不支持对象会打印log)

继承自:

readonly style : object

样式信息

readonly uniforms : object|undefined

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

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

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

继承自:

zIndex : number

图层顺序,数字大的在上面。
只对 同类型 + 贴地(clampToGround: true) 的部分线面矢量对象间有效

继承自:

方法

closeHighlight(pickedObject)void

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

参数名称 类型 描述信息
pickedObject object | number 可选

指定需要高亮的子对象, 如果是mars3d的相关事件内时,可以取 event.pickedObject ,如果是number时传入instances对象index值

返回值:

eachInstances(method, context, reverse)GraphicLayer

遍历所有数据集合数组并将其作为参数传递给回调函数

参数名称 类型 描述信息
method function

回调方法

context object 可选

侦听器的上下文(this关键字将指向的对象)。

reverse boolean 可选

是否倒序执行

返回值:

当前对象本身,可以链式调用。

继承自:

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, pickedObject)void

高亮对象。

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

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

closeLast boolean true 可选

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

pickedObject object | number 可选

指定需要高亮的子对象, 如果是mars3d的相关事件内时,可以取 event.pickedObject ,如果是number时传入instances对象index值

返回值:

openPopup(index, event)BaseGraphic|*

打开绑定的弹窗

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

更新的instances对象index值

event object 可选

用于抛出事件时的相关额外属性

返回值:

当前对象本身,可以链式调用

redraw(style)BasePrimitive

重新渲染

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

新的样式信息

返回值:

当前对象本身

继承自:

setColorStyle(style, index)void

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

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

样式信息

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

颜色

opacity number 1.0 可选

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

index number | undefined 可选

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

返回值:

继承自:

setOffsetHeight(height, index)void

平移指定偏移高度(相对于原始坐标值),【提示:仅部分子类支持】

参数名称 类型 描述信息
height number 可选

平移的高度值(单位:米),为空时取每个对象的offsetHeight值

index number | undefined 可选

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

返回值:

setOpacity(value)void

设置整体透明度(globalAlpha值) , 非全部矢量数据都支持,具体需要对应Graphic支持才有效 对象本身透明度请修改 graphic.setStyle({ opacity: value })

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

透明度

返回值:

继承自:

startDraw(layer)void

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

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

图层

返回值:

继承自:

startEditing()void

开始编辑对象

返回值:

继承自:

stopDraw()void

停止绘制

返回值:

继承自:

stopEditing()void

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

返回值:

继承自:

toBottom()void

将当前矢量对象在图层中层级进行 置底 (只对同类型图层间+贴地对象 有效)。

返回值:

继承自:

toGeoJSON(options)object

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

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

参数对象:

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

不导出高度值

noStyle boolean 可选

不导出style样式,后期使用时在图层配置symbol

standard boolean 可选

不导出options等mars3d属性,仅导出坐标和attr属性的标准简洁GeoJSON

返回值:

GeoJSON格式规范对象

继承自:

toJSON()object

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

返回值:

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

继承自:

toTop()void

将当前矢量对象在图层中层级进行 置顶 (只对同类型图层间+贴地对象 有效)。

返回值:

继承自: