TilesetClip

new mars3d.thing.TilesetClip(options)

3dtiles模型裁剪

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

参数对象,包括以下:

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

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

area Array.<object> 可选

多区域数组对象, 示例: [{ positions: [[108.959062, 34.220134, 397], [108.959802, 34.220147, 397], [108.959106, 34.21953, 398]] }]

clipOutSide boolean false 可选

是否外裁剪

precise boolean true 可选

true:精确模式, 直接存储范围,但传入的范围顶点数量多时,就会造成一定程度的卡顿; false: 掩膜模式,栅格化范围,效率与范围顶点数量无关,但放大后锯齿化严重

id string | number createGuid() 可选

对象的id标识

enabled boolean true 可选

对象的启用状态

eventParent BaseClass | boolean 可选

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

继承

成员(属性)

clipOutSide : boolean

是否外裁剪

readonly editHeight : number

相对高度 (单位:米),基于 压平/淹没区域 最低点高度的偏移量

继承自:

layer : TilesetLayer

需要分析的模型(3dtiles图层)

继承自:

readonly length : number

已添加的区域个数

继承自:

readonly list : Array.<object>

区域 列表

继承自:

readonly tileset : Cesium.Cesium3DTileset

需要分析的模型 对应的 Cesium3DTileset 对象

继承自:

方法

addArea(positions, options)object

添加单个区域

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

坐标位置数组

options object {} 可选

控制的参数

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

开挖深度(模型开挖时,可以控制单个区域的开挖深度)

simplify object 可选

是否简化坐标点位,为空时不简化

参数名称 类型 默认值 描述信息
tolerance number 0.0001 可选

简化的程度,传值是经纬度的小数位

highQuality boolean true 可选

是否花更多的时间用不同的算法创建更高质量的简化

mutate boolean true 可选

是否允许对输入进行变异(如果为true,则显著提高性能)

id number | string 可选

外部自定义ID,注意不用有重复值。默认内部自动赋予

返回值:

添加区域的记录对象

继承自:

clear()void

清除分析

返回值:

继承自:

getAreaById(id)object

根据id获取区域对象

参数名称 类型 描述信息
id number | string

id值

返回值:

区域对象

继承自:

hideArea(id)void

隐藏单个区域

参数名称 类型 描述信息
id number | string

区域id值

返回值:

继承自:

removeArea(item)void

移除单个区域

参数名称 类型 描述信息
item number | string | object

区域的id,或 addArea返回的区域对象

返回值:

继承自:

showArea(id)void

显示单个区域

参数名称 类型 描述信息
id number | string

区域id值

返回值:

继承自:

toJSON()object

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

返回值:

Json简单对象

继承自: