持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第12天,点击查看活动详情
前言
回顾一下之前学习的内容,场景初始化、加载模型、唯一模型、模型销毁、上传模型、设置相机角度位置、模型隐藏显示、添加文字模型等等功能,接口调用也是十分的简单。
今天我们来学习一个有趣的功能 测距 ,通过鼠标点击操作测量距离,这个功能可能会比较实用。
测距功能
开启测距功能
在开始测距之前要先调用开启测距功能的接口,避免鼠标点击事件与其它接口混乱。接口入下,调用非常的简单,一行代码搞定。
api.rangingClick();
接口描述:
用于测量的模型、构件之间的距离;
操作方法:
左键双击 为起始点,再次双击为终止点;
ctrl + 左键双击 为连续测量距离;
传入参数:
- function:
function双击测距事件,返回参数为所点击的点
调用实例:
api.rangingClick((point)=>{
console.log(point)
//{x:0, y:0,z:0}
})
测距操作
再次强调一下操作方法
操作方法:
左键双击 为起始点,再次双击为终止点;
ctrl + 左键双击 为连续测量距离;
点击按钮开启测距功能,然后我们来试一下(一定要按照操作方法进行)。
单个测距
先按照单个测距的方法试一下。
别说还挺好使,会自动在鼠标双击的起始点和开始点之间连一条线,并显示出两点之间的距离,刚才测出的就是模型中这两个点对应到实际建筑物上的距离,14.95米。注意,单位是米
连续测距
然后再试一下连续测距,看看是什么样。
吼吼,不错,按住 Ctrl 鼠标左键一顿双击,点了一堆。在每个点之间都标记了距离,简单好用。就是显示的时候会有锯齿的感觉,文字也会有显示不清晰的问题(虽然调整角度就看清)。不知道是屏幕的问题还是这个功能的问题。
清除测距
之前说过,模型加载后需要手动调接口去销毁模型,这里也是一样的,这个测距功能的那些文字、点、线全部都是模型,作息需要对其进行销毁,这里叫清除测距,点击清除测距按钮,调用这个方法。就可以对所有测距生成的模型进行销毁。
接口描述:
用于清除已经测距完成数据;
调用实例:
api.clearRanging()
清除的一干二净了。
退出测距功能
当你不需要使用测距功能时,就需要掉这个接口,退出测距功能 退出测距功能后再鼠标左键双击就不会有再掉测距的接口了。
api.removeEventListener();
接口描述:
用于退出测距功能;一行代码搞定,非常的奈斯!!!
今天就先到这里吧,下次继续学习有意思的功能。