一种三维模型的浏览处理方法及装置与流程

文档序号:18401034发布日期:2019-08-09 23:53阅读:206来源:国知局
一种三维模型的浏览处理方法及装置与流程

本发明实施例涉及计算机技术领域,具体涉及一种三维模型的浏览处理方法及装置。



背景技术:

在浏览三维模型的场景中,用户可以通过缩放比例随意对三维模型进行放大和缩小操作。但是由于三维模型在构建时的精细度所限,为了保证模型浏览的视觉效果,不允许相机观察点位置距离目标物体过近,即过于缩小;同时,为了使得用户能够看清模型细节,相机观察点位置距离目标物体的距离也不能限制过远,即过于放大。

现有技术通过限制相机观察点位置距离某个点的距离值来控制模型的缩放比例,一旦低于这个距离值,不再允许相机观察点位置继续靠近目标物体。但是这种方式在保证部分模型细节的同时,无法保证相机观察点位置不穿过模型,而穿过模型时会导致该穿过的部分模型的细节过于放大,影响模型的显示效果。



技术实现要素:

由于现有方法存在上述问题,本发明实施例提出一种三维模型的浏览处理方法及装置。

第一方面,本发明实施例提出一种三维模型的浏览处理方法,包括:

根据三维模型中的目标子模型构建虚拟遮罩,以使所述目标子模型在所述虚拟遮罩中;

在浏览所述三维模型的过程中,根据所述三维模型当前的显示界面,获取当前的相机观察点位置;

若判断所述相机观察点位置到达所述虚拟遮罩所在位置,则阻止所述相机观察点位置移动进入至所述虚拟遮罩的内部。

第二方面,本发明实施例还提出一种三维模型的浏览处理装置,包括:

遮罩构建模块,用于根据三维模型中的目标子模型构建虚拟遮罩,以使所述目标子模型在所述虚拟遮罩中;

位置获取模块,用于在浏览所述三维模型的过程中,根据所述三维模型当前的显示界面,获取当前的相机观察点位置;

位置控制模块,用于若判断所述相机观察点位置到达所述虚拟遮罩所在位置,则阻止所述相机观察点位置移动进入至所述虚拟遮罩的内部。

第三方面,本发明实施例还提出一种电子设备,包括:

至少一个处理器;以及

与所述处理器通信连接的至少一个存储器,其中:

所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述方法。

第四方面,本发明实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述方法。

由上述技术方案可知,本发明实施例通过构建目标子模型的虚拟遮罩,控制所述相机观察点位置无法到达虚拟遮罩内,既能保证相机观察点位置不穿过模型,也能保证用户能够看清模型细节,以达到模型最佳的显示效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。

图1为本发明一实施例提供的一种三维模型的浏览处理方法的流程示意图;

图2为本发明一实施例提供的虚拟遮罩的结构示意图;

图3为本发明一实施例提供的一种三维模型的浏览处理装置的结构示意图;

图4为本发明一实施例提供的电子设备的逻辑框图。

具体实施方式

下面结合附图,对本发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

图1示出了本实施例提供的一种三维模型的浏览处理方法的流程示意图,包括:

s101、根据三维模型中的目标子模型构建虚拟遮罩,以使所述目标子模型在所述虚拟遮罩中。

具体地,所述三维模型为可以进行三维旋转、移动、放大、缩小等操作的模型,例如包括街道、房屋等的三维地图模型。

所述目标子模型为当前所关注的对象,可以为一个小区,一栋楼或某一套房。

所述虚拟遮罩为包裹所述目标子模型的虚拟的多面体。例如:当所述目标子模型为小区,小区占地为100m×100m的长方形,小区内包括10栋楼,其中5栋楼的楼高为50m,另5栋楼的楼高为30m,则虚拟遮罩的底面为100m×100m的长方形,楼高为50m的楼对应的虚拟遮罩的高度为60m,楼高为30m的楼和平地对应的虚拟遮罩的高度为40m。

s102、在浏览所述三维模型的过程中,根据所述三维模型当前的显示界面,获取当前的相机观察点位置。

所述相机观察点位置为根据三维建模理论得到的当前三维模型的显示界面对应的三维模型中的观察点的位置。

举例来说,在真实世界中,在该相机观察点位置对应的坐标对着目标子模型的方向进行拍摄,所得到的图像与当前的显示界面相同。反之,根据三维模型当前的显示界面,能够计算得到当前的相机观察点位置。

s103、若判断所述相机观察点位置到达所述虚拟遮罩所在位置,则阻止所述相机观察点位置移动进入至所述虚拟遮罩的内部。

在另一种实施方式中,若判断所述相机观察点位置到达所述虚拟遮罩内,则控制所述相机观察点位置移动至所述虚拟遮罩的表面。

具体地,在倾斜摄影模型中,相机观察点位置非常重要。倾斜摄影技术是国际测绘领域近些年发展起来的一项高新技术,它颠覆了以往正射影像只能从垂直角度拍摄的局限,通过在同一飞行平台上搭载多台传感器,同时从一个垂直、四个倾斜等五个不同的角度采集影像,将用户引入了符合人眼视觉的真实直观世界。

一旦判断相机观察点位置到达所述虚拟遮罩内,则说明用户能看到的模型细节的精细程度将无法保证,影响模型的显示效果,因此,需要将相机观察点位置移动至所述虚拟遮罩的表面,不允许相机观察点位置进入虚拟遮罩内。

本实施例通过构建目标子模型的虚拟遮罩,控制所述相机观察点位置无法到达虚拟遮罩内,既能保证相机观察点位置不穿过模型,也能保证用户能够看清模型细节,以达到模型最佳的显示效果。

进一步地,在上述方法实施例的基础上,s103中所述阻止所述相机观察点位置移动进入至所述虚拟遮罩的内部,具体包括:

获取所述虚拟遮罩的表面上与所述相机观察点位置重合的目标点,并将所述相机观察点位置停留在所述目标点。

在另一实施方式中,若判断所述相机观察点位置到达所述虚拟遮罩内,则获取所述虚拟遮罩的表面上距离所述相机观察点位置最近的目标点,并将所述相机观察点位置移动至所述目标点。

具体地,当判断相机观察点位置到达所述虚拟遮罩内,则通过该相机观察点位置计算虚拟遮罩的垂线,该垂线在虚拟遮罩的垂点即为虚拟遮罩的表面上距离相机观察点位置最近的目标点,并将所述相机观察点位置移动至该目标点,使得相机观察点位置不能进入虚拟遮罩内,以保证模型最佳的显示效果。

进一步地,在上述方法实施例的基础上,s103具体包括:

若判断所述相机观察点位置到达所述虚拟遮罩所在位置,则获取当前相机观察点与所述虚拟遮罩接触时的瞬时速度,按照所述瞬时速度的预设倍数作为所述显示图像的放大速度和缩小速度,根据所述放大速度将所述显示图像进行放大后再根据所述缩小速度恢复,并控制所述相机观察点位置保持在与所述虚拟遮罩接触时的位置。

其中,所述瞬时速度和放大/缩小速度之间的对应关系可以通过预设倍数的数值得到,也可以通过预设关系表获取。

在一种实施方式中,为了更符合用户的查看习惯,所述虚拟遮罩为立方体,如图2所示,该小区模型位于该虚拟遮罩内部。

在构建该虚拟遮罩时,将小区模型投影到水平面上,形成正投影图形,以正投影图形圈层的区域作为底,以小区模型制高点对应的楼高+10米作为高度,拉出一个立体方块,且方块即为虚拟遮罩,用户不可见。图2中摄影机的位置(相机观察点位置)不允许进入虚拟遮罩内,当用户视角(摄影机)对应的点与虚拟遮罩发生碰撞时,摄影机停止向方块内移动。

举例来说,当判断相机观察点位置时,若相机观察点位置到达所述虚拟遮罩表面,则获取摄影机碰撞一瞬间的图像,即当前界面的显示图像,将该显示图像放大1.2倍后再缩小至正常大小,或以相机观察点位置与虚拟遮罩接触时的瞬时速度确定显示图像的放大速度以及缩小速度,以模拟摄影机碰上方块后的回弹效果,回弹至虚拟遮罩的表面,以提醒用户不可再对当前的模型进行放大操作,以保证模型最佳的显示效果。

图3示出了本实施例提供的一种三维模型的浏览处理装置的结构示意图,所述装置包括:遮罩构建模块301、位置获取模块302和位置控制模块303,其中:

所述遮罩构建模块301用于根据三维模型中的目标子模型构建虚拟遮罩,以使所述目标子模型在所述虚拟遮罩中;

所述位置获取模块302用于在浏览所述三维模型的过程中,根据所述三维模型当前的显示界面,获取当前的相机观察点位置;

所述位置控制模块303用于若判断所述相机观察点位置到达所述虚拟遮罩所在位置,则阻止所述相机观察点位置移动进入至所述虚拟遮罩的内部。

具体地,所述遮罩构建模块301根据三维模型中的目标子模型构建虚拟遮罩,以使所述目标子模型在所述虚拟遮罩中;所述位置获取模块302在浏览所述三维模型的过程中,根据所述三维模型当前的显示界面,获取当前的相机观察点位置;所述位置控制模块303若判断所述相机观察点位置到达所述虚拟遮罩所在位置,则阻止所述相机观察点位置移动进入至所述虚拟遮罩的内部。

本实施例通过构建目标子模型的虚拟遮罩,控制所述相机观察点位置无法到达虚拟遮罩内,既能保证相机观察点位置不穿过模型,也能保证用户能够看清模型细节,以达到模型最佳的显示效果。

进一步地,在上述装置实施例的基础上,所述位置控制模块303具体用于若判断所述相机观察点位置到达所述虚拟遮罩所在位置,则获取当前相机观察点与所述虚拟遮罩接触时的瞬时速度,按照所述瞬时速度的预设倍数作为所述显示图像的放大速度和缩小速度,根据所述放大速度将所述显示图像进行放大后再根据所述缩小速度恢复,并控制所述相机观察点位置保持在与所述虚拟遮罩接触时的位置。

进一步地,在上述装置实施例的基础上,所述位置控制模块303具体用于获取所述虚拟遮罩的表面上与所述相机观察点位置重合的目标点,并将所述相机观察点位置停留在所述目标点。

进一步地,在上述装置实施例的基础上,所述虚拟遮罩为包裹所述目标子模型的多面体。

进一步地,在上述装置实施例的基础上,所述虚拟遮罩为立方体。

本实施例所述的三维模型的浏览处理装置可以用于执行上述方法实施例,其原理和技术效果类似,此处不再赘述。

参照图4,所述电子设备,包括:处理器(processor)401、存储器(memory)402和总线403;

其中,

所述处理器401和存储器402通过所述总线403完成相互间的通信;

所述处理器401用于调用所述存储器402中的程序指令,以执行上述各方法实施例所提供的方法。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法。

本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1