本发明涉及计算机技术领域,具体涉及一种基于虚拟三维空间的精准测量方法及装置。
背景技术:
vr技术给人们的生活带来了诸多便利,比如vr看房使得人们足不出户即可体验到真实看房场景。但是在许多垂直场景,如vr装修,对于测量具有较高需求,目前的vr无法提供精确的测量功能。
因此,如何提供一种可以实现vr中精确测量的方法,使得用户不需现场测量,对于降低测量成本、提高测量效率具有重要意义。
技术实现要素:
为解决现有技术中的问题,本发明实施例提供一种基于虚拟三维空间的精准测量方法及装置。
第一方面,本发明实施例提供一种基于虚拟三维空间的精准测量方法,该方法包括:获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息;根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离;用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
进一步地,所述方法还包括:获取所述虚拟三维空间的显示界面上的鼠标停留位置,根据所述鼠标停留位置获取所述鼠标停留位置附近预设形状及预设大小的全景图片,增大渲染分辨率并将所述全景图片重新渲染;将进行所述重新渲染后的所述全景图片在预设位置放大显示。
进一步地,所述渲染分辨率的增大倍数大于所述放大显示的放大倍数。
进一步地,所述方法还包括:用预设颜色的环形图标跟踪所述鼠标停留位置,并且,所述鼠标停留位置为所述环形图标的中心点。
进一步地,所述获取测量点在虚拟三维空间中的坐标信息,具体包括:获取所述虚拟三维空间的显示界面上的鼠标点击位置,并根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息。
进一步地,在所述获取所述虚拟三维空间的显示界面上的鼠标点击位置之后、所述根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息之前,所述方法还包括:获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面,从而调整所述鼠标点击位置。
进一步地,所述获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面,具体包括:获取所述鼠标点击位置附近的三维模型,并获取用于构建所述三维模型且位于所述鼠标点击位置附近的三角形;计算任意两个相邻的所述三角形的法向量的夹角,若所述夹角大于或等于预设角度,则将相应两个所述三角形的邻接边作为待选择吸附线;获取位于所述待选择吸附线上且距离所述鼠标点击位置最小的吸附点,将所述鼠标点击位置吸附到所述吸附点上。
进一步地,所述预设角度为30度。
进一步地,所述显示所述直线距离,具体包括:在所述直线的旁边显示所述直线距离。
进一步地,所述方法还包括:选中所述直线,并进行删除操作。
进一步地,所述方法还包括:选中所述第一测量点或所述第二测量点,并调整所述第一测量点或所述第二测量点的位置。
进一步地,所述调整所述第一测量点或所述第二测量点的位置,具体包括:通过拖拽所述第一测量点或所述第二测量点从而调整所述第一测量点或所述第二测量点的位置。
进一步地,所述方法还包括:判断是否接收到刷新操作,若是,则清空显示的测量信息。
进一步地,所述方法还包括:在测量过程中,动态显示测量方法提示信息和/或测量精确度提示信息。
第二方面,本发明实施例提供一种基于虚拟三维空间的精准测量装置,该装置包括:测量点位置获取模块,用于:获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息;距离获取模块,用于:根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离;显示模块,用于:用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
进一步地,所述显示模块还用于:获取所述虚拟三维空间的显示界面上的鼠标停留位置,根据所述鼠标停留位置获取所述鼠标停留位置附近预设形状及预设大小的全景图片,增大渲染分辨率并将所述全景图片重新渲染;将进行所述重新渲染后的所述全景图片在预设位置放大显示。
进一步地,所述渲染分辨率的增大倍数大于所述放大显示的放大倍数。
进一步地,所述显示模块还用于:用预设颜色的环形图标跟踪所述鼠标停留位置,并且,所述鼠标停留位置为所述环形图标的中心点。
进一步地,所述测量点位置获取模块在用于获取测量点在虚拟三维空间中的坐标信息时,具体用于:获取所述虚拟三维空间的显示界面上的鼠标点击位置,并根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息。
进一步地,所述测量点位置获取模块在用于获取所述虚拟三维空间的显示界面上的鼠标点击位置之后,用于根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息之前,还用于:获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面,从而调整所述鼠标点击位置。
进一步地,所述测量点位置获取模块在用于获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面时,具体用于:获取所述鼠标点击位置附近的三维模型,并获取用于构建所述三维模型且位于所述鼠标点击位置附近的三角形;计算任意两个相邻的所述三角形的法向量的夹角,若所述夹角大于或等于预设角度,则将相应两个所述三角形的邻接边作为待选择吸附线;获取位于所述待选择吸附线上且距离所述鼠标点击位置最小的吸附点,将所述鼠标点击位置吸附到所述吸附点上。
进一步地,所述预设角度为30度。
进一步地,所述显示模块在用于显示所述直线距离时,具体用于:在所述直线的旁边显示所述直线距离。
进一步地,所述装置还包括删除模块,所述删除模块用于:选中所述直线,并进行删除操作。
进一步地,所述测量点位置获取模块还用于:选中所述第一测量点或所述第二测量点,并调整所述第一测量点或所述第二测量点的位置。
进一步地,所述测量点位置获取模块在用于调整所述第一测量点或所述第二测量点的位置时,具体用于:通过拖拽所述第一测量点或所述第二测量点从而调整所述第一测量点或所述第二测量点的位置。
进一步地,所述装置还包括刷新模块,所述刷新模块用于:判断是否接收到刷新操作,若是,则清空显示的测量信息。
进一步地,所述显示模块还用于:在测量过程中,动态显示测量方法提示信息和/或测量精确度提示信息。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所提供的方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所提供的方法的步骤。
本发明实施例提供的基于虚拟三维空间的精准测量方法及装置,通过获取第一测量点和第二测量点在虚拟三维空间中的坐标信息,计算二者的直线距离并显示,实现了虚拟三维空间中两个测量点之间距离的自动化精准测量,提高了测量效率,降低了测量成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的基于虚拟三维空间的精准测量方法流程图;
图2是本发明一实施例提供的基于虚拟三维空间的精准测量方法中两点测量示意图;
图3是本发明一实施例提供的基于虚拟三维空间的精准测量方法中的放大效果示意图;
图4是本发明一实施例提供的基于虚拟三维空间的精准测量方法中的模型吸附效果示意图;
图5是本发明一实施例提供的基于虚拟三维空间的精准测量装置的结构示意图;
图6示例了一种电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明一实施例提供的基于虚拟三维空间的精准测量方法流程图。如图1所示,所述方法包括:
步骤101、获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息。
本发明实施例提供的基于虚拟三维空间的精准测量方法可以应用于前端设备,前端设备的显示屏可以显示虚拟三维空间。虚拟三维空间包括vr空间。
本发明实施例提供的基于虚拟三维空间的精准测量方法可以实现对于虚拟空间中两个测量点的距离的精准测量。首先,需要获取两个测量点在虚拟三维空间中的坐标信息。即首先获取第一测量点在虚拟三维空间中的第一坐标信息及第二测量点在虚拟三维空间中的第二坐标信息。
由于虚拟三维空间是根据对实际场景进行点云拍摄等手段获取,虚拟三维空间中点的坐标即表示其在实际物理空间中的坐标。因此,第一测量点在虚拟三维空间中的第一坐标信息及第二测量点在虚拟三维空间中的第二坐标信息可以反映两个测量点在实际空间中的相对位置。
步骤102、根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离。
得到第一测量点的第一坐标信息和第二测量点的第二坐标信息之后,可以直接利用欧式距离公式计算这两个测量点之间的直线距离。即若第一测量点的第一坐标信息为(x1,y1,z1),第二测量点的第二坐标信息为(x2,y2,z2),则第一测量点和第二测量点的直线距离d的表式为:
步骤103、用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
用直线连接第一测量点和第二测量点,表示测量的是第一测量点和第二测量点之间的距离。并且显示连接第一测量点和第二测量点的直线以及第一测量点和第二测量点之间的直线距离。
当然,用直线连接第一测量点和第二测量点并不一定在得到上述直线距离后再进行,只要确定好第一测量点和第二测量点即可用直线连接这两个测量点。在第一测量点和第二测量点的直线距离得出后,显示直线距离即可。
本发明实施例通过获取第一测量点和第二测量点在虚拟三维空间中的坐标信息,计算二者的直线距离并显示,实现了虚拟三维空间中两个测量点之间距离的自动化精准测量,提高了测量效率,降低了测量成本。
进一步地,基于上述实施例,所述方法还包括:获取所述虚拟三维空间的显示界面上的鼠标停留位置,根据所述鼠标停留位置获取所述鼠标停留位置附近预设形状及预设大小的全景图片,增大渲染分辨率并将所述全景图片重新渲染;将进行所述重新渲染后的所述全景图片在预设位置放大显示。
前端设备在确定第一测量点和第二测量点之前,用户在前端设备上的一个常见操作就是使用鼠标在显示界面上滑动,以便后续选择第一测量点和第二测量点。为了提高第一测量点和第二测量点位置的精确度,本发明实施例提供了放大功能,即将鼠标停留位置处的全景图片放大显示。
放大显示的方法如下:获取虚拟三维空间的显示界面上的鼠标停留位置,根据鼠标停留位置获取鼠标停留位置附近预设形状及预设大小的全景图片,比如,预设形状为正方形,预设大小为m像素*n像素(重新渲染前)。选取全景图片时,可以以鼠标停留位置为中心进行选取。
选取全景图片后,增大渲染分辨率并将全景图片重新渲染;然后,将进行重新渲染后的全景图片在预设位置放大显示,比如在显示屏幕的左下角放大显示,由此可以供用户更清楚的看清鼠标停留位置附近的显示信息,利于更精确地选取第一测量点和第二测量点。
在上述实施例的基础上,本发明实施例通过根据鼠标停留位置获取鼠标停留位置附近预设形状及预设大小的全景图片,增大渲染分辨率并将全景图片重新渲染后放大显示,有利于更精确地确定第一测量点和第二测量点的位置。
进一步地,基于上述实施例,所述渲染分辨率的增大倍数大于所述放大显示的放大倍数。
为了保证放大后的图片更加清晰可辨,本发明实施例中令渲染分辨率的增大倍数大于放大显示的放大倍数(即放大显示区的图片大小和全景图片的大小之比)。
在上述实施例的基础上,本发明实施例通过令渲染分辨率的增大倍数大于放大显示的放大倍数,保证了放大的图片更加清晰。
进一步地,基于上述实施例,所述方法还包括:用预设颜色的环形图标跟踪所述鼠标停留位置,并且,所述鼠标停留位置为所述环形图标的中心点。
为更清晰显示鼠标停留位置,可以用预设颜色的环形图标跟踪鼠标停留位置,并将鼠标停留位置设置为环形图标的中心点,这样,可以更加明确鼠标停留的位置,便于更加精确地确定第一测量点和第二测量点。
在上述实施例的基础上,本发明实施例通过用预设颜色的环形图标跟踪鼠标停留位置,并且,设置鼠标停留位置为环形图标的中心点,有利于更精确地确定第一测量点和第二测量点的位置。
进一步地,基于上述实施例,所述获取测量点在虚拟三维空间中的坐标信息,具体包括:获取所述虚拟三维空间的显示界面上的鼠标点击位置,并根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息。
在获取测量点在虚拟三维空间中的坐标信息时,通过获取虚拟三维空间的显示界面上的鼠标点击位置,并将鼠标点击位置作为测量点在虚拟三维空间中的坐标信息。
在上述实施例的基础上,本发明实施例通过根据鼠标点击位置获取测量点在虚拟三维空间中的坐标信息,提高了测量点的坐标信息确定的简便性。
进一步地,基于上述实施例,在所述获取所述虚拟三维空间的显示界面上的鼠标点击位置之后、所述根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息之前,所述方法还包括:获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面,从而调整所述鼠标点击位置。
测量距离时,通常是测量两个实体之间的距离,比如两个墙壁之间的距离、桌子和墙壁之间的距离、桌子和沙发之间的距离等。用户虽然会使用鼠标在相应的实体附近点击,但是却很难点击到属于相应实体的坐标点。为进一步提高测量位置的准确性,从而提高测量结果的准确性,本发明实施例在监听到鼠标点击动作之后,获取鼠标点击位置,并获取距离鼠标点击位置最近的三维模型。其中,三维模型为实体在虚拟三维空间中对应的三维模型。
在获取到距离鼠标点击位置最近的三维模型后,便获知用户实际是想点击这个三维模型。由于测量时通常是从边缘进行测量,因此,将鼠标点击位置吸附到三维模型的表面,从而调整鼠标点击位置,使得测量位置更加精确化。
在上述实施例的基础上,本发明实施例通过获取距离鼠标点击位置最近的三维模型,并将鼠标点击位置吸附到三维模型的表面,从而调整鼠标点击位置,提高了测量位置的精确程度,从而提高了测量结果的精确性。
进一步地,基于上述实施例,所述获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面,具体包括:获取所述鼠标点击位置附近的三维模型,并获取用于构建所述三维模型且位于所述鼠标点击位置附近的三角形;计算任意两个相邻的所述三角形的法向量的夹角,若所述夹角大于或等于预设角度,则将相应两个所述三角形的邻接边作为待选择吸附线;获取位于所述待选择吸附线上且距离所述鼠标点击位置最小的吸附点,将所述鼠标点击位置吸附到所述吸附点上。
三维模型可以由许多三角形组合而成。如果两个相邻的三角形的法向量的夹角大于一定角度,则表示这两个三角形不在一个平面上。而对于空间中待测量的实体,通常是具有垂直表面,因此,若获取到两个不在一个平面的三角形,则这两个三角形的邻接边很可能就是实体的边界线。基于此原理,本发明实施例提供一种获取距离鼠标点击位置最近的三维模型,并将鼠标点击位置吸附到三维模型的表面的具体方法。
首先获取鼠标点击位置附近的三维模型,并获取用于构建三维模型且位于鼠标点击位置附近的三角形;可以设置一定的区域范围来获取附近的三角形。计算任意两个相邻的三角形的法向量的夹角,若夹角大于或等于预设角度,则表示这两个三角形的邻接边是可吸附的线,则将相应两个三角形的邻接边作为待选择吸附线。由于要选择最近的模型进行吸附,因此,求取鼠标点击位置至各个待选择吸附线的距离,并将最小距离对应的待选择吸附线上距离鼠标点击位置也为最小距离的点作为吸附点,将鼠标点击位置吸附到吸附点上,从而实现模型吸附,提高了测量点的精确性。
在上述实施例的基础上,本发明实施例通过利用构成三维模型的三角形的法向量之间的夹角确定模型吸附点,提高了模型吸附的快速性。
进一步地,基于上述实施例,所述预设角度为30度。
由于构成三维模型的三角形有的非常小,因此需要设置相邻三角形的法向量之间的夹角较大些,才能保证两个三角形不位于同一平面。经实验,本发明实施例发现将预设角度设置为30度,即在两个相邻三角形的法向量之间的夹角大于或等于30度时,认为这两个三角形不在同一平面,将两个三角形的邻接边作为待选择吸附线,精确度较高。
在上述实施例的基础上,本发明实施例通过将预设角度设置为30度,提高了模型吸附的精确性。
进一步地,基于上述实施例,所述显示所述直线距离,具体包括:在所述直线的旁边显示所述直线距离。
所述直线距离可以显示在连接两个测量点的直线的旁边,由此提高直观效果,便于观察。
在上述实施例的基础上,本发明实施例通过在直线的旁边显示所述直线距离,提高了测量结果显示的直观性。
进一步地,基于上述实施例,所述方法还包括:选中所述直线,并进行删除操作。
若想删除某个测量结果,可以选中相应的直线并进行删除,从而删除直线及相应的直线距离的信息。
在上述实施例的基础上,本发明实施例通过选中直线,并进行删除操作,提供了删除功能,提高了灵活性。
进一步地,基于上述实施例,所述方法还包括:选中所述第一测量点或所述第二测量点,并调整所述第一测量点或所述第二测量点的位置。
第一测量点和第二测量点的位置确定后,第一测量点和第二测量点处于可点击状态,通过点击第一测量点或第二测量点可以实现相应测量点的选中。选中测量点后,可以调整测量点的位置。
在上述实施例的基础上,本发明实施例通过选中第一测量点或第二测量点,并调整第一测量点或第二测量点的位置,进一步提高了灵活性。
进一步地,基于上述实施例,所述调整所述第一测量点或所述第二测量点的位置,具体包括:通过拖拽所述第一测量点或所述第二测量点从而调整所述第一测量点或所述第二测量点的位置。
在调整第一测量点或第二测量点的位置时,可以通过拖拽第一测量点或第二测量点从而调整第一测量点或第二测量点的位置。
在上述实施例的基础上,本发明实施例通过拖拽第一测量点或第二测量点从而调整第一测量点或第二测量点的位置,提高了测量点位置调整的灵活性。
进一步地,基于上述实施例,所述方法还包括:判断是否接收到刷新操作,若是,则清空显示的测量信息。
签于很多测量需求只是获取测量结果,并非需要保存显示界面的显示信息。因此,为了更加方便的进行后续的测量,本发明实施例提供了刷新功能:在接收到刷新操作后,清空显示的测量信息。
在上述实施例的基础上,本发明实施例通过在接收到刷新操作后,清空显示的测量信息,便利了后续测量过程。
进一步地,基于上述实施例,所述方法还包括:在测量过程中,动态显示测量方法提示信息和/或测量精确度提示信息。
在三维空间中测量的过程中,可以提供有动态交互提示,明确告知用户如何在空间中测量,还可告知用户测量的精确度。
在上述实施例的基础上,本发明实施例通过在测量过程中,动态显示测量方法提示信息和/或测量精确度提示信息,使得功能更加人性化。
图2是本发明一实施例提供的基于虚拟三维空间的精准测量方法中两点测量示意图。图3是本发明一实施例提供的基于虚拟三维空间的精准测量方法中的放大效果示意图。图4是本发明一实施例提供的基于虚拟三维空间的精准测量方法中的模型吸附效果示意图。下面结合图2~图4,通过一具体实例进一步说明本发明实施例提供的基于虚拟三维空间的精准测量方法的流程。
本发明实施例针对如何基于虚拟三维空间(包括vr)实现两点间精准测量距离,提出了解决办法:
第一步:实现三个基础能力。
能力1:在三维空间(vr)里两点画一条线,并测量出相对距离,如图2所示。
解决的问题:解决空间任意两点之间连线及计算距离。
实现方式:在三维坐标中,找到两点,并且计算两点之间的距离:
说明:两点间在三维空间的测量显示,并且在模型下,以及在全景下均可看到测量的结果。
能力2:在三维空间交互过程中选择测量点位的放大功能。
解决的问题:解决在三维空间中精确选择测量位置点,降低测量时的行为误差。
实现方式:第一步,重新渲染鼠标hower点位(鼠标位置)的全景图,并且放大两倍渲染,渲染结束后,去鼠标显示区域进行放大展示,如图3所示。
能力3:在三维空间中,选择测量点位时的模型吸附功能。
解决的问题:解决在三维空间中精确选择测量位置点,降低测量时的行为误差。
实现方式:在三维空间选点的过程中,将该点位吸附到最近的模型处,在整个三维模型中,可以理解为由无数个三角形组合而成,而在选择吸附点的时候,第一步:会判断吸附位置,取两个三角形的法向量的夹角,如果夹角>=30度,则默认可以吸附,然后判断出可以吸附的点,计算鼠标hower点位距离吸附面的距离,取最小的距离的点进行吸附。
如图4所示,直线处显示出模型吸附效果。
第二步:基于基础能力进行组合应用。
交互分为4个步骤:
增:点击添加测量,唤起测量功能,选取两个点,画一条直线进行测距。
删:选中“两点测量的线”,触发删除操作。
改:点击两点测距“其中某一点”进行修改。
查:刷新三维空间后,测量历史记录不做保留。
其他说明:在三维空间中测量的过程中,有动态交互提示,明确告知用户如何在空间中测量,以及测量的精确度。
图2~图4中的环形图标即为跟踪鼠标停留位置的环形图标。
本发明实施例提供的基于虚拟三维空间的精准测量方法的技术实现在于基于三维建模的空间(vr)的基础上,通过前端能力,实现两点间精准测量距离,基于两点间精准测量距离的功能,基于前端能力,实现了三个基础能力:
能力1:在三维空间(vr)里两点画一条线,并测量出相对距离(解决:两点测距)。
能力2:在三维空间交互过程中选择测量点位的放大功能(解决:精确找点问题)。
能力3:在三维空间中,选择测量点位时的模型吸附功能(解决:精确找点问题)。
基于本发明实施例提供的基于虚拟三维空间的精准测量方法,用户可以在不同场景下的三维空间里,任意时刻,去进行精准测量距离,来实现相关业务目标。
图5是本发明一实施例提供的基于虚拟三维空间的精准测量装置的结构示意图。如图5所示,所述装置包括测量点位置获取模块10、距离获取模块20和显示模块30,其中:测量点位置获取模块10用于:获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息;距离获取模块20用于:根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离;显示模块30用于:用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
本发明实施例通过获取第一测量点和第二测量点在虚拟三维空间中的坐标信息,计算二者的直线距离并显示,实现了虚拟三维空间中两个测量点之间距离的自动化精准测量,提高了测量效率,降低了测量成本。
进一步地,基于上述实施例,显示模块30还用于:获取所述虚拟三维空间的显示界面上的鼠标停留位置,根据所述鼠标停留位置获取所述鼠标停留位置附近预设形状及预设大小的全景图片,增大渲染分辨率并将所述全景图片重新渲染;将进行所述重新渲染后的所述全景图片在预设位置放大显示。
在上述实施例的基础上,本发明实施例通过根据鼠标停留位置获取鼠标停留位置附近预设形状及预设大小的全景图片,增大渲染分辨率并将全景图片重新渲染后放大显示,有利于更精确地确定第一测量点和第二测量点的位置。
进一步地,基于上述实施例,所述渲染分辨率的增大倍数大于所述放大显示的放大倍数。
在上述实施例的基础上,本发明实施例通过令渲染分辨率的增大倍数大于放大显示的放大倍数,保证了放大的图片更加清晰。
进一步地,基于上述实施例,显示模块30还用于:用预设颜色的环形图标跟踪所述鼠标停留位置,并且,所述鼠标停留位置为所述环形图标的中心点。
在上述实施例的基础上,本发明实施例通过用预设颜色的环形图标跟踪鼠标停留位置,并且,设置鼠标停留位置为环形图标的中心点,有利于更精确地确定第一测量点和第二测量点的位置。
进一步地,基于上述实施例,测量点位置获取模块10在用于获取测量点在虚拟三维空间中的坐标信息时,具体用于:获取所述虚拟三维空间的显示界面上的鼠标点击位置,并根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息。
在上述实施例的基础上,本发明实施例通过根据鼠标点击位置获取测量点在虚拟三维空间中的坐标信息,提高了测量点的坐标信息确定的简便性。
进一步地,基于上述实施例,测量点位置获取模块10在用于获取所述虚拟三维空间的显示界面上的鼠标点击位置之后,用于根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息之前,还用于:获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面,从而调整所述鼠标点击位置。
在上述实施例的基础上,本发明实施例通过获取距离鼠标点击位置最近的三维模型,并将鼠标点击位置吸附到三维模型的表面,从而调整鼠标点击位置,提高了测量位置的精确程度,从而提高了测量结果的精确性。
进一步地,基于上述实施例,测量点位置获取模块10在用于获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面时,具体用于:获取所述鼠标点击位置附近的三维模型,并获取用于构建所述三维模型且位于所述鼠标点击位置附近的三角形;计算任意两个相邻的所述三角形的法向量的夹角,若所述夹角大于或等于预设角度,则将相应两个所述三角形的邻接边作为待选择吸附线;获取位于所述待选择吸附线上且距离所述鼠标点击位置最小的吸附点,将所述鼠标点击位置吸附到所述吸附点上。
在上述实施例的基础上,本发明实施例通过利用构成三维模型的三角形的法向量之间的夹角确定模型吸附点,提高了模型吸附的快速性。
进一步地,基于上述实施例,所述预设角度为30度。
在上述实施例的基础上,本发明实施例通过将预设角度设置为30度,提高了模型吸附的精确性。
进一步地,基于上述实施例,显示模块30在用于显示所述直线距离时,具体用于:在所述直线的旁边显示所述直线距离。
在上述实施例的基础上,本发明实施例通过在直线的旁边显示所述直线距离,提高了测量结果显示的直观性。
进一步地,基于上述实施例,所述装置还包括删除模块,所述删除模块用于:选中所述直线,并进行删除操作。
在上述实施例的基础上,本发明实施例通过选中直线,并进行删除操作,提供了删除功能,提高了灵活性。
进一步地,基于上述实施例,测量点位置获取模块10还用于:选中所述第一测量点或所述第二测量点,并调整所述第一测量点或所述第二测量点的位置。
在上述实施例的基础上,本发明实施例通过选中第一测量点或第二测量点,并调整第一测量点或第二测量点的位置,进一步提高了灵活性。
进一步地,基于上述实施例,测量点位置获取模块10在用于调整所述第一测量点或所述第二测量点的位置时,具体用于:通过拖拽所述第一测量点或所述第二测量点从而调整所述第一测量点或所述第二测量点的位置。
在上述实施例的基础上,本发明实施例通过拖拽第一测量点或第二测量点从而调整第一测量点或第二测量点的位置,提高了测量点位置调整的灵活性。
进一步地,基于上述实施例,所述装置还包括刷新模块,所述刷新模块用于:判断是否接收到刷新操作,若是,则清空显示的测量信息。
在上述实施例的基础上,本发明实施例通过在接收到刷新操作后,清空显示的测量信息,便利了后续测量过程。
进一步地,基于上述实施例,显示模块30还用于:在测量过程中,动态显示测量方法提示信息和/或测量精确度提示信息。
在上述实施例的基础上,本发明实施例通过在测量过程中,动态显示测量方法提示信息和/或测量精确度提示信息,使得功能更加人性化。
本发明实施例提供的装置是用于上述方法的,具体功能可参照上述方法流程,此处不再赘述。
图6示例了一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(communicationsinterface)620、存储器(memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行基于虚拟三维空间的精准测量方法,该方法包括:获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息;根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离;用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的基于虚拟三维空间的精准测量方法,该方法包括:获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息;根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离;用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的基于虚拟三维空间的精准测量方法,该方法包括:获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息;根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离;用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
1.一种基于虚拟三维空间的精准测量方法,其特征在于,包括:
获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息;
根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离;
用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
2.根据权利要求1所述的基于虚拟三维空间的精准测量方法,其特征在于,所述方法还包括:
获取所述虚拟三维空间的显示界面上的鼠标停留位置,根据所述鼠标停留位置获取所述鼠标停留位置附近预设形状及预设大小的全景图片,增大渲染分辨率并将所述全景图片重新渲染;
将进行所述重新渲染后的所述全景图片在预设位置放大显示。
3.根据权利要求2所述的基于虚拟三维空间的精准测量方法,其特征在于,所述渲染分辨率的增大倍数大于所述放大显示的放大倍数。
4.根据权利要求2所述的基于虚拟三维空间的精准测量方法,其特征在于,所述方法还包括:
用预设颜色的环形图标跟踪所述鼠标停留位置,并且,所述鼠标停留位置为所述环形图标的中心点。
5.根据权利要求1所述的基于虚拟三维空间的精准测量方法,其特征在于,所述获取测量点在虚拟三维空间中的坐标信息,具体包括:
获取所述虚拟三维空间的显示界面上的鼠标点击位置,并根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息。
6.根据权利要求5所述的基于虚拟三维空间的精准测量方法,其特征在于,在所述获取所述虚拟三维空间的显示界面上的鼠标点击位置之后、所述根据所述鼠标点击位置获取所述测量点在虚拟三维空间中的坐标信息之前,所述方法还包括:
获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面,从而调整所述鼠标点击位置。
7.根据权利要求6所述的基于虚拟三维空间的精准测量方法,其特征在于,所述获取距离所述鼠标点击位置最近的三维模型,并将所述鼠标点击位置吸附到所述三维模型的表面,具体包括:
获取所述鼠标点击位置附近的三维模型,并获取用于构建所述三维模型且位于所述鼠标点击位置附近的三角形;
计算任意两个相邻的所述三角形的法向量的夹角,若所述夹角大于或等于预设角度,则将相应两个所述三角形的邻接边作为待选择吸附线;
获取位于所述待选择吸附线上且距离所述鼠标点击位置最小的吸附点,将所述鼠标点击位置吸附到所述吸附点上。
8.一种基于虚拟三维空间的精准测量装置,其特征在于,包括:
测量点位置获取模块,用于:获取测量点在虚拟三维空间中的坐标信息;其中,所述测量点包括第一测量点和第二测量点,所述坐标信息包括所述第一测量点的第一坐标信息和所述第二测量点的第二坐标信息;
距离获取模块,用于:根据所述第一坐标信息和所述第二坐标信息计算所述第一测量点和所述第二测量点的直线距离;
显示模块,用于:用直线连接所述第一测量点和所述第二测量点,并显示所述直线及所述直线距离。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述基于虚拟三维空间的精准测量方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述基于虚拟三维空间的精准测量方法的步骤。
技术总结