一种基于小地图的剖切或隔离的方法和装置与流程

文档序号:17952240发布日期:2019-06-19 00:08阅读:180来源:国知局
一种基于小地图的剖切或隔离的方法和装置与流程

该发明技术属于建筑设计技术领域,尤其涉及一种基于小地图的剖切或隔离的方法和装置。



背景技术:

建筑信息化模型(bim)是一个完备的信息模型,能够将工程项目在全生命周期中各个不同阶段的工程信息、过程和资源集成在一个模型中,方便地被工程各参与方使用。通过三维数字技术模拟建筑物所具有的真实信息,为工程设计和施工提供相互协调、内部一致的信息模型,使该模型达到设计施工的一体化,各专业协同工作,从而降低了工程生产成本,保障工程按时按质完成。bim不是简单的将数字信息进行集成,而是一种数字信息的应用,并可以用于设计、建造、管理的数字化方法。这种方法支持建筑工程的集成管理环境,可以使建筑工程在其整个进程中显著提高效率、大量减少风险。

模型设计是bim技术中的基础和前提步骤。目前建筑设计方面较为成熟的三维模型设计软件有autodesk的revit系列软件,bentley公司的bentleybimsuite系列软件,它们通过可视化的方式进行建模。随着云技术的发展,越来越多的应用程序开始web化,用户可以方便地通过网页或手机就可以使用应用程序。三维模型轻量化应用一般包括模型数据转换、web端渲染和模型数据消费。模型数据转换从庞大的原始模型提取轻量级的几何数据和供二次消费的重要信息,大大压缩了模型的数据量,为web端显示和编辑奠定了基础;web端渲染主要是将点线面等几何数据渲染,呈现给用户;模型数据消费阶段是用户最关心的部分,用户可以在web端对模型进行在线交互操作、构件属性浏览等。

其中,在在线交互操作部分,用户使用比较频繁的两种操作便是剖切或隔离。用户通过剖切操作可以将自己关注的模型部分分离出来,然后在此基础上做进一步的消费。隔离类似于剖切的行为,有所不同的是隔离有两种类型,一种是隔离隐藏,另一种是隔离半透明。传统的剖切或隔离方法是通过调用api显式设置,用户不仅需要有一定的编程基础,而且操作起来繁琐不直观。



技术实现要素:

本申请提供了一种基于小地图的剖切或隔离的方法和装置,能隐藏api调用细节,可以交互式地在小地图中进行编辑操作,然后选择相应的剖切或者隔离操作,整个使用过程简单直观,适合无编程基础的用户使用。

本发明提供了一种基于小地图的剖切或隔离的方法,所述方法包括步骤:

接收并存储三维模型;

将不同的三维模型转换为统一的三维轻量化格式的数据,所述三维轻量化格式的数据包括属性信息,所述属性信息包括每个楼层的小地图、轴网信息和楼层标高信息;

提供剖切或隔离的操作功能,具体包括:

计算矩形框形成的剖切盒大小,所述剖切盒的x,y分量坐标是基于所述轴网信息得到的所述矩形框在世界坐标空间下的x,y分量坐标,所述剖切盒的z分量坐标从所述楼层标高信息中得到;

提供剖切操作:与所述剖切盒重合的构件被显示,其它构件被隐藏;

或,提供隔离操作:用所述剖切盒过滤不在所述剖切盒中的构件,并返回包含在所述剖切盒中的构件id集合,在所述构件id集合中的构件正常显示,其它构件被隔离。

进一步地,基于所述轴网信息得到所述矩形框在世界坐标空间下的x,y分量坐标,具体为:

利用所述轴网信息计算楼层的包围盒,将矩形框的局部坐标通过所述包围盒映射到世界坐标空间,得到所述矩形框在世界坐标空间下的x,y分量坐标。

进一步地,所述三维轻量化格式的数据还包括几何信息,所述几何信息用多边形网格来存储面的信息。

进一步地,在接收到用户画矩形框的操作时,提供所述剖切或隔离的操作功能。

进一步地,所述隔离包含半透明隔离和隐藏隔离两种状态。

本发明还提供了一种基于小地图的剖切或隔离装置,所述装置包括存储模块、转换模块和模型数据消费模块:

所述存储模块,用于接收并存储三维模型;

所述转换模块,用于将不同的三维模型转换为统一的三维轻量化格式的数据,所述三维轻量化格式的数据包括属性信息,所述属性信息包括每个楼层的小地图、轴网信息和楼层标高信息;

所述模型数据消费模块,用于提供剖切或隔离的操作功能;

所述提供剖切或隔离的操作功能,具体包括:

计算矩形框形成的剖切盒大小,所述剖切盒的x,y分量坐标是基于所述轴网信息得到的所述矩形框在世界坐标空间下的x,y分量坐标,所述剖切盒的z分量坐标从所述楼层标高信息中得到;

提供剖切操作:与所述剖切盒重合的构件被显示,其它构件被隐藏;

或,提供隔离操作:用所述剖切盒过滤不在所述剖切盒中的构件,并返回包含在所述剖切盒中的构件id集合,在所述构件id集合中的构件正常显示,其它构件被隔离。

进一步地,基于所述轴网信息得到所述矩形框在世界坐标空间下的x,y分量坐标,具体为:

利用所述轴网信息计算楼层的包围盒,将矩形框的局部坐标通过所述包围盒映射到世界坐标空间,得到所述矩形框在世界坐标空间下的x,y分量坐标。

进一步地,所述三维轻量化格式的数据还包括几何信息,所述几何信息用多边形网格来存储面的信息。

进一步地,在接收到用户画矩形框的操作时,提供剖切或隔离的操作功能。

进一步地,所述隔离包含半透明隔离和隐藏隔离两种状态。

本申请还提供了一种电子设备,其特征在于,所述电子设备包括:存储装置和一个或多个处理器;

所述存储装置用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述的方法。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被执行时,实现上述的方法。

相比于现有技术,本申请的一种基于小地图的剖切或隔离的方法和装置,在小地图的基础上做业务操作,充分利用了模型数据中的属性信息,可以交互式地在小地图中进行编辑操作,然后选择相应的剖切或者隔离操作用一种交互式的简洁直接的方式,给用户提供良好的模型编辑体验,这是传统的通过调用api的方式进行操作所无法达到的便利性,适合无编程基础的用户使用。

附图说明

为了便于本领域普通技术人员理解和实施本申请,下面结合附图对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1是本申请的一种基于小地图的剖切或隔离方法的流程图。

图2是本申请的提供剖切或隔离的操作功能的过程示意图。

图3是本申请的一种基于小地图的剖切或隔离装置的模块组成示意图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。

传统的在线交互操作部分的剖切或隔离方法是通过调用api显式设置,操作起来繁琐且不直观。基于小地图的剖切或隔离技术方案是一种新的交互式方案,现有技术中没有类似的成熟技术。这种方案能隐藏api调用细节,提供直观简洁的方式给用户,用于在线模型的操作和编辑。本申请技术方案的关键点包括两部分:一是要在转换三维模型时获得包含楼层标高信息和轴网信息的属性信息,从而便于后续的剖切或隔离;二是以小地图的方式进行剖切或隔离,并且要借助于楼层标高信息和轴网信息进行剖切或隔离。

实施例一:

如图1所示,本申请的实施例一提供了一种基于小地图的剖切或隔离的方法,所述方法运行在云端,所述方法包括以下步骤:

(1)接收并存储三维模型,所述三维模型是用户上传到云端的。

(2)将不同的三维模型转换为统一的三维轻量化格式的数据,并存储所述转换后的结果。将不同的三维模型转换为统一的三维轻量化格式的数据,从而可以精简模型数据量,同时统一模型数据格式,方便云端部署。

转换后的所述三维轻量化格式的数据包括几何信息和属性信息,使用几何信息和属性信息表示一个三维模型中的构件。其中,几何信息用多边形网格来存储面的信息,而属性信息通过数据库来存储。所述属性信息包含每个楼层的小地图、轴网信息和楼层标高信息。所述轴网信息起到定位的功能,所述轴网是建筑制图的主体框架,建筑物的主要支承构件按照所述轴网定位排列,达到井然有序。所述楼层标高信息使得小地图中的二维框选能转换成实际建筑模型的空间,给模型的剖切或隔离提供了可能。

(3)提供剖切或隔离的操作功能。在接收到用户画矩形框的操作时,提供剖切或隔离的操作功能。

用户在小地图中画矩形框,选择后续的剖切或者隔离操作,本步骤能提供给用户需要的基于数据的功能,包括模型属性浏览、构件树、小地图功能等功能。

参见图2,所述提供剖切或隔离的操作功能,包含:

(1)利用所述轴网信息计算楼层的包围盒(记作floorbox),将面板中画的矩形框的局部坐标通过所述包围盒floorbox映射到世界坐标空间,得到所述矩形框在世界坐标空间下的x,y分量坐标;

(2)计算所述矩形框所形成的剖切盒大小,其中,剖切盒的x,y分量坐标也就是所述矩形框在世界坐标空间下的x,y分量坐标,所述剖切盒的z分量坐标从模型的楼层标高信息中得到。这样,就计算好了剖切的矩形框对应的三维剖切盒。

(3)对于剖切操作,只有与剖切盒重合的构件部分显示,其它构件部分被隐藏。

(4)对于隔离操作,用计算后获取到的剖切盒去过滤不在剖切盒中的构件,并返回包含在剖切盒中的构件id集合,在id集合中的构件正常显示,其它id的构件则被隔离。隔离包含两种可选状态,一种是半透明隔离,另一种是隐藏隔离。

实际操作中,用户在浏览由所述三维轻量化数据格式的数据组成的轻量化模型时可以在相应的工具栏里打开小地图功能,此时会出现小地图面板,初始状态下只有楼层小地图,并未加载所述轴网信息,同时也不能做剖切或隔离操作。若用户打开小地图面板,则会加载小地图和所述轴网信息。鼠标在面板上移动时,如触碰到轴网交点则会高亮轴网编号和坐标。当用户点击面板上某块区域时,会触发鼠标响应事件,模型的视角也发生相应的变化。用户也可以在小地图面板上画矩形框,完成后矩形框下方会出现剖切或隔离和取消的按钮。用户按照自己的实际需求选择相应的操作。

实施例二:

如图3所示,本申请实施例二提供了一种基于小地图的剖切或隔离的装置,所述装置包括位于云平台中的存储模块、转换模块和模型数据消费模块。

所述存储模块,用于存储用户上传的三维模型。

所述转换模块,用于将不同的三维模型转换为统一的三维轻量化格式的数据,转换后的结果存储在所述存储模块中。所述转换模块将不同的三维模型转换为统一的三维轻量化格式的数据,能够精简模型数据量,同时统一模型数据格式,方便云端部署。

转换后的所述三维轻量化格式的数据包括几何信息和属性信息,几何信息和属性信息一起表示一个三维模型中的构件。其中,几何信息用多边形网格来存储面的信息,而属性信息通过数据库来存储。所述属性信息包含每个楼层的小地图、轴网信息和楼层标高信息。所述轴网信息起到定位的功能,所述轴网是建筑制图的主体框架,建筑物的主要支承构件按照所述轴网定位排列,达到井然有序。所述楼层标高信息使得小地图中的二维框选能转换成实际建筑模型的空间,给模型的剖切或隔离提供了可能。

所述模型数据消费模块,用于接收画矩形框的操作,提供剖切或隔离的操作功能。用户在小地图中画矩形框时,然后选择后续的剖切或者隔离操作。所述模型数据消费模块提供用户需要的基于数据的功能,包括模型属性浏览、构件树、小地图功能等。

所述提供给用户剖切或隔离的操作功能,包含:

(1)利用所述轴网信息计算楼层的包围盒(记作floorbox),将面板中画的矩形框的局部坐标通过所述包围盒floorbox映射到世界坐标空间,得到所述矩形框在世界坐标空间下的x,y分量坐标;

(2)计算所述矩形框所形成的剖切盒大小,其中,剖切盒的x,y分量坐标也就是所述矩形框在世界坐标空间下的x,y分量坐标,所述剖切盒的z分量坐标从模型的楼层标高信息中得到。这样,就计算好了剖切的矩形框对应的三维剖切盒。

(3)对于剖切操作,只有与剖切盒重合的构件部分显示,其它构件部分被隐藏。

(4)对于隔离操作,用计算后获取到的剖切盒去过滤不在剖切盒中的构件,并返回包含在剖切盒中的构件id集合,在id集合中的构件正常显示,其它id的构件则被隔离。隔离包含两种可选状态,一种是半透明隔离,另一种是隐藏隔离。

实际操作中,用户在浏览由所述三维轻量化数据格式的数据组成的轻量化模型时可以在相应的工具栏里打开小地图功能,此时会出现小地图面板,初始状态下只有楼层小地图,并未加载所述轴网信息,同时也不能做剖切或隔离操作。若用户打开小地图面板,则会加载小地图和所述轴网信息。鼠标在面板上移动时,如触碰到轴网交点则会高亮轴网编号和坐标。当用户点击面板上某块区域时,会触发鼠标响应事件,模型的视角也发生相应的变化。用户也可以在小地图面板上画矩形框,完成后矩形框下方会出现剖切或隔离和取消的按钮。用户按照自己的实际需求选择相应的操作。

另外,本申请实施例还公开了一种电子设备,其包括存储装置和一个或多个处理器,存储装置用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如实施例一的方法。

本申请实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被执行时,实现如实施例一的方法。

附图中的流程图和框图显示了根据本申请的多个实施例的方法、装置和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图和框图中的每个方框可以代表一个单元、模块、程序段或代码的一部分,包含一个或多个用于实现逻辑功能的计算机可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。也要注意的是,框图和流程图中的每个方框或方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本申请不限制于任何特定形式的硬件和软件的结合。综上所述,以上仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

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