可视化场景内部物体检测方法与流程

文档序号:30096218发布日期:2022-05-18 10:56阅读:来源:国知局

技术特征:
1.一种可视化场景内部物体检测方法,其特征在于,包括以下步骤:s1:建立能够被threejs引擎读取的可视化三维场景,该场景中包括需要移动的模型;s2:利用threejs引擎的raycaster对象的setfromcamera方法设置射线,该射线从屏幕中心指向鼠标点击的方向;s3:使用所述raycaster对象的intersectobject方法来遍历可视化场景内的模型判断是否有模型和当前射线相交;s4:返回和所述射线相交的模型并按照相交距离排序,距离最近的模型即为能够进行移动操作的模型。2.根据权利要求1所述的可视化场景内部物体检测方法,其特征在于,在所述步骤s2中,设置射线时需把点击屏幕的鼠标二维坐标转化为raycaster对象的setfromcamera方法需要的归一化坐标:获取鼠标在二维坐标系中距离左上角原点(0,0)的x轴的值clientx和距离原点的y轴的值clienty,二维坐标系的宽为width,高为height,则所述归一化坐标为mouse(mouse.x,mouse.y),其中,mouse.x = (clientx / width) * 2
ꢀ–ꢀ
1,mouse.y = (clienty / height) * 2 + 1。3.根据权利要求1所述的可视化场景内部物体检测方法,其特征在于,在所述步骤s4中,返回的模型组成一个数组,如果没有模型和射线相交,返回的是空数组,如果有和射线相交的模型,返回的数组内模型按照相交距离从近到远排序。4.根据权利要求1所述的可视化场景内部物体检测方法,其特征在于,在步骤s4中,利用所述intersectobject方法判断是否检测模型的子模型。5.根据权利要求1所述的可视化场景内部物体检测方法,其特征在于,在步骤s1中,建立可视化三维场景后需要进行初始化,以数组的形式保存从预设的全景点生成的场景模型,场景初始化、移动结束和旋转结束的时候计算出可移动点数组。6.根据权利要求1所述的可视化场景内部物体检测方法,其特征在于,在步骤s4中,返回的与所述射线相交的模型时去除保留的不可移动的模型。7.根据权利要求6所述的可视化场景内部物体检测方法,其特征在于,在步骤s4中,获取距离最近的模型时,首先点击画布发射射线并获取与该射线相交的第一个模型的位置向量m,遍历所有可移动的模型,逐个计算与m的距离,得到距离最短的点所在的模型即为执行移动操作的模型。

技术总结
本发明公开了一种可视化场景内部物体检测方法,以解决对3D图形不方便操作的技术问题。本发明包括以下步骤:S1:建立能够被THREEJS引擎读取的可视化三维场景,该场景中包括需要移动的模型;S2:利用THREEJS引擎的Raycaster对象的setFromCamera方法设置射线,该射线从屏幕中心指向鼠标点击的方向;S3:使用Raycaster对象的intersectObject方法来遍历可视化场景内的模型判断是否有模型和当前射线相交;S4:返回和射线相交的模型并按照相交距离排序,距离最近的模型即为能够进行移动操作的模型。本发明的有益技术效果在于:操作步骤简单,计算量小,判断数据准确。判断数据准确。判断数据准确。


技术研发人员:李超
受保护的技术使用者:深圳市聚点数码科技有限公司
技术研发日:2022.01.20
技术公布日:2022/5/17
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1