# FrustumCombine
查阅Cesium API

#### new mars3d.graphic.FrustumCombine(options)
graphic/combine/FrustumCombine.js 8

大数据 四棱锥体 集合 (合并渲染) Primitive图元 矢量对象

参数名称 | 类型 | 描述信息
--- | --- | ---
`options` | object | 参数对象，包括以下：
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`instances` | Array.<object> |  | 可选 面信息数组，单个对象包括：
参数名称 | 类型 | 描述信息
--- | --- | ---
`position` | LngLatPoint | Cesium.Cartesian3 | Array | object | 坐标位置
`style` | FrustumPrimitive.StyleOptions | 可选 样式信息 【仅支持同属性同材质（多个需分多个对象），纯色支持多颜色】
`attr` | object | 可选 矢量数据的 属性信息，可以任意附加属性。
`style` | FrustumPrimitive.StyleOptions |  | 可选 所有面的公共样式信息 【仅支持同属性同材质（多个需分多个对象），纯色支持多颜色】
`highlight` | FrustumPrimitive.StyleOptions |  | 可选 鼠标移入或单击后的对应高亮的部分样式(仅支持Color纯色材质)
参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`type` | string |  | 可选 触发高亮的方式，默认鼠标移入，可以指定为type:'click'为单击后高亮
`enabled` | boolean | `true` | 可选 是否启用
`fixedFrameTransform` | Cesium.Transforms.LocalFrameToFixedFrame | `Cesium.Transforms.northEastDownToFixedFrame` | 可选 参考系
`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弹窗时的配置参数
`tooltip` | string | Array | function |  | 可选 绑定的tooltip弹窗值，也可以bindTooltip方法绑
`tooltipOptions` | Tooltip.StyleOptions |  | 可选 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`方法参数。

##### 参考:

- `支持的事件类型`

### 继承自

- BasePointCombine

### 属性值

#### 只读 label : Array.<Cesium.Label>|*
graphic/combine/BasePolyCombine.js 85

附加的label文本对象

继承自:
  - BasePolyCombine#label

#### 只读 style : object
graphic/combine/BasePolyCombine.js 65

样式信息

继承自:
  - BasePolyCombine#style

### 方法

#### closeHighlight(pickedObject) → void
graphic/combine/BasePolyCombine.js 374

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

参数名称 | 类型 | 描述信息
--- | --- | ---
`pickedObject` | object | number | 可选 指定需要高亮的子对象, 如果是mars3d的相关事件内时，可以取 event.pickedObject ，如果是number时传入instances对象index值

##### 返回值:

无

继承自:
  - BasePolyCombine#closeHighlight

#### openHighlight(highlightStyle, closeLast, pickedObject) → void
graphic/combine/BasePolyCombine.js 329

高亮对象。

参数名称 | 类型 | 默认值 | 描述信息
--- | --- | --- | ---
`highlightStyle` | object |  | 可选 高亮的样式，具体见各`GraphicType`矢量数据的style参数。
`closeLast` | boolean | `true` | 可选 是否清除地图上上一次的高亮对象
`pickedObject` | object | number |  | 可选 指定需要高亮的子对象, 如果是mars3d的相关事件内时，可以取 event.pickedObject ，如果是number时传入instances对象index值

##### 返回值:

无

继承自:
  - BasePolyCombine#openHighlight

#### openPopup(index, event) → BaseGraphic|*
graphic/combine/BasePointCombine.js 74

打开绑定的弹窗

参数名称 | 类型 | 描述信息
--- | --- | ---
`index` | number | 更新的instances对象index值
`event` | object | 可选 用于抛出事件时的相关额外属性

##### 返回值:

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

继承自:
  - BasePointCombine#openPopup

#### setOffsetHeight(height, index) → void
graphic/combine/BasePolyCombine.js 474

平移指定偏移高度（相对于原始坐标值），【提示：仅部分子类支持】

参数名称 | 类型 | 描述信息
--- | --- | ---
`height` | number | 可选 平移的高度值（单位：米）,为空时取每个对象的offsetHeight值
`index` | number | undefined | 可选 更新的instances对象index值，为空时更新所有对象。

##### 返回值:

无

继承自:
  - BasePolyCombine#setOffsetHeight