TilesetPlanClip

new mars3d.thing.TilesetPlanClip(options)

3dtiles模型裁剪, 基于clippingPlanes接口,只支持单个开挖。

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

参数对象,包括以下:

参数名称 类型 默认值 描述信息
layer TilesetLayer

需要裁剪的对象(3dtiles图层)

positions Array.<Array> | Array.<string> | Array.<LngLatPoint> | Array.<Cesium.Cartesian3> 可选

裁剪区域坐标数组(按面或线裁剪)

height number 可选

当有裁剪区域挖时,底面的高度(单位米),未设置时不显示底面。

clipType ClipType 可选

裁剪类型(按方向类型正方向单面裁剪)

distance number 0 可选

裁剪的距离

clipOutSide boolean false 可选

是否外裁剪

edgeWidth number 0 可选

裁剪区域边线宽度,0时不显示

edgeColor Cesium.Color Cesium.Color.WHITE 可选

裁剪区域边线颜色

showPlane boolean false 可选

是否显示裁剪平面, PS: 但裁剪面与实际效果由于cesium内部机制不同可能存在偏移。

editPlane boolean false 可选

是否可以拖拽裁剪平面进行编辑,需要showPlane:true时有效

planeStyle PlaneEntity.StyleOptions 可选

裁剪平面显示时的样式

id string | number createGuid() 可选

对象的id标识

enabled boolean true 可选

对象的启用状态

eventParent BaseClass | boolean 可选

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

继承

成员(属性)

angle1 : number

裁剪的斜面角度 0-360度

angle2 : number

裁剪的斜面角度 0-180度

readonly center : Cesium.Cartesian3

模型当前中心点坐标

clipOutSide : boolean

是否外裁剪

clipType : string|number

裁剪类型(按方向类型正方向单面裁剪)

distance : number

更新最后一个面的 裁剪距离 (单位:米)

enabled : boolean

设置对象的启用和禁用状态。

继承自:

enabledEvent : boolean

设置事件的启用和禁用状态

继承自:

readonly id : string|number

对象的id标识

继承自:

readonly inverseMatrix : Cesium.Matrix4

获取当前转换计算模型逆矩阵, 用于 局部坐标系 与 世界坐标系 的转换。

readonly isAdded : boolean

是否已添加到地图

继承自:

readonly isDestroy : boolean

是否已经销毁了

继承自:

layer : TilesetLayer

需要裁剪的对象(3dtiles图层)

normalZ : number

裁剪的斜面偏移量

readonly options : object

当前类的构造参数

继承自:

readonly planes : Cesium.ClippingPlaneCollection

裁剪面集合

positions : Array.<Array>|Array.<string>|Array.<LngLatPoint>|Array.<Cesium.Cartesian3>

裁剪区域坐标数组(按面或线裁剪)

readonly state : State

当前对象的状态

继承自:

readonly type : string|number

类型

继承自:

方法

addEventParent(obj)BaseClass

添加抛出事件到父类,它将接收传播的事件

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

父类对象

返回值:

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

继承自:

addTo(map)BaseThing

添加到地图上,同 map.addThing

参数名称 类型 描述信息
map Map

地图对象

返回值:

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

继承自:

clear()void

清除裁剪面

返回值:

destroy(noDel)void

销毁当前对象

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

false:会自动delete释放所有属性,true:不delete绑定的变量

返回值:

继承自:

fire(type, data, propagate)BaseClass

触发指定类型的事件。

参数名称 类型 描述信息
type EventType | string

事件类型

data object 可选

传输的数据或对象,可在事件回调方法中event对象中获取进行使用

propagate BaseClass 可选

将事件传播给父类 (用addEventParent设置)

返回值:

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

继承自:

hasEventParent(obj)boolean

是否绑定了抛出事件到指定父类

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

父类对象

返回值:

是否绑定了抛出事件

继承自:

listens(type, propagate)boolean

是否有绑定指定的事件

参数名称 类型 描述信息
type EventType | string

事件类型

propagate BaseClass 可选

是否判断指定的父类 (用addEventParent设置的)

返回值:

是否存在

继承自:

off(types, fn, context)BaseClass

解除绑定指定类型事件监听器

参数名称 类型 描述信息
types EventType | string | Array.<EventType> 可选

事件类型,未传值时解绑所有事件

fn function 可选

绑定的监听器回调方法,未传值时解绑所有指定类型对应事件,特殊说明:map.on监听的Cesium相关原生事件时必须传入该参数

context object 可选

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

返回值:

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

继承自:

on(types, fn, context)BaseClass

绑定指定类型事件监听器, 支持在监听中调用 event.stopPropagation(); 阻止事件冒泡

参数名称 类型 描述信息
types EventType | string | Array.<EventType> | Array.<string> | object

事件类型

fn function

绑定的监听器回调方法

context object 可选

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

返回值:

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

继承自:

once(types, fn, context)BaseClass

绑定一次性执行的指定类型事件监听器 与on类似,监听器只会被触发一次,然后被删除。

参数名称 类型 描述信息
types EventType | string | Array.<EventType>

事件类型

fn function

绑定的监听器回调方法

context object 可选

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

返回值:

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

继承自:

remove(destroy)void

从地图上移除,同map.removeThing

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

是否调用destroy释放

返回值:

继承自:

removeEventParent(obj)BaseClass

移除抛出事件到父类

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

父类对象

返回值:

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

继承自:

setOptions(options)BaseThing|BaseControl|object

更新图层参数

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

与类的构造方法参数相同

返回值:

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

继承自:

toJSON()object

转为Json简单对象,用于存储后再传参加载

返回值:

Json简单对象

updateAllDistance(val)void

更新所有面的 裁剪距离 (单位:米)

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

裁剪距离 (单位:米)

返回值:

updateAllNormal(angle1, angel2)void

更新所有面的 裁剪的斜面角度

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

角度1

angel2 number

角度2

返回值: