1. 标签聚合
1.1. 属性
1.1.1. this.originTags
用户添加的自定义标签列表
1.1.2. this.aggrTags
聚合标签列表
1.1.3. this.isRender
是否渲染
1.1.4. this.aggrDistance
聚合标签的默认聚合距离
1.2. 方法
1.2.1. addTag
用来添加用户自定义标签
名称 | 说明 | 类型 | 是否必须 | 示例 |
---|---|---|---|---|
html | 用户自定义的div | string | 是 | 见调用方法 |
position | 标签的三维坐标 | Vector3 | 是 | 见调用方法 |
const t = new TagContainer(viewer3D);
/**
* 该方法用来增加一个 tag 标签
* @method addTag
* @param html {String} 表示标签的dom内容和外观,可以自定义tag标签的内容和外观
* @param position {Vector3} 表示tag 标签的位置
* @return {object} 返回刚添加的标签信息
*/
t.addTag(`<div style="background: ${randomColor()}">盈嘉${1}</div>`, new BOS3D.THREE.Vector3(100, 100, 100))
1.2.2. update
更新tag容器内所有的tag标签的属性
// 实例化
const t = new TagContainer(viewer3D);
/**
* 更新tag容器内所有的tag标签的属性
* @method update
*/
t.update();
1.2.3. resetDistance
重设标签聚合的距离阈值,超过这个距离,标签就聚合;
如果不传值,则默认使用0.05来重置距离阈值
名称 | 说明 | 类型 | 是否必须 | 示例 |
---|---|---|---|---|
distance | 用户自定义距离阈值 | Number | 否 | 见调用方法 |
// 实例化
const t = new TagContainer(viewer3D);
/**
* 重设标签聚合的距离阈值
* @method resetDistance
*/
t.resetDistance(0.1);
1.2.4. render
渲染方法,更新后需要调用
// 实例化
const t = new TagContainer(viewer3D);
t.render();
1.2.5. addEventListener
聚合标签添加点击事件和hover事件的回调
// 实例化
const t = new TagContainer(viewer3D);
// 添加聚合标签点击事件回调
t.addEventListener(BOS3D.EVENTS.ON_AGGREGATE_ONCLICK, data => console.log(data, "点击事件"))
// 添加聚合标签hover事件回调
t.addEventListener(BOS3D.EVENTS.ON_AGGREGATE_HOVER, data => console.log(data, "hover事件"))