CN115859431A - 三维建筑模型与二维图纸的联动方法、装置和设备 - Google Patents
三维建筑模型与二维图纸的联动方法、装置和设备 Download PDFInfo
- Publication number
- CN115859431A CN115859431A CN202211536500.8A CN202211536500A CN115859431A CN 115859431 A CN115859431 A CN 115859431A CN 202211536500 A CN202211536500 A CN 202211536500A CN 115859431 A CN115859431 A CN 115859431A
- Authority
- CN
- China
- Prior art keywords
- dimensional
- model
- view
- target
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明公开了一种三维建筑模型与二维图纸的联动方法、装置、设备和介质,所述方法包括:获取建筑物的三维模型文件,以及建筑物的图纸文件,发送所述三维模型文件和图纸文件至后端设备,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,所述模型视图与至少一个二维图纸为非同源图模或部分同源图模;接收该绑定关系,并根据绑定关系显示目标二维图纸和模型视图的视图界面,接收用户在视图界面上的点击操作;响应于所述点击操作确定所述模型视图中的目标构件,或目标二维图纸上的目标图元,并展示目标构件或目标图元,本方法实现非同源图模、部分同源图模的二维图纸与三维模型之间的联动,满足联合审查需求。
Description
技术领域
本发明涉及计算机辅助设计技术领域,尤其是涉及一种三维建筑模型与二维图纸的联动方法、装置和设备。
背景技术
在工程建筑领域中,通常用二维施工图纸作为建筑设计成果的呈现和交付方式,而随着BIM(Building Information Modeling,建筑信息模型)在建筑行业的深入应用,三维建筑模型也成为建筑设计成果的一种新的结构化数字化的成果呈现方式。随着数字化设计的推进,在工程建设全过程中将全面应用数字化图纸和模型,逐步推进BIM设计和审查,二维施工图纸和三维建筑模型联合审查。在二三维联合审查场景下,通过特定技术实现二维图纸展示和三维模型展示联系起来,针对二维图纸的操作可以使模型自动联动;针对模型的操作,二维图纸也可以自动联动交互。通过二三维一体化审查,实现施工图审图阶段的二三维设计成果联合审查。
相关技术中,二三维联合审查的实现方案,仅针对图模同源的部分情况,不适用于全部情况的联合审查,比如当建筑物数据导出的二维图纸通过图纸设计软件做了改动或编辑,此时更改后的二维图纸与三维模型是非同源关系,即二者原相互绑定关系被打破,因此无法对其做二三维联合审查。另外,对于非同源的模型和二维施工图纸,由于二者之间也没有绑定关系,所以也无法做到二三维联合审查,无法满足用户需求。
发明内容
本发明主要解决部分同源图模或者非同源图模无法实现二三维联动的技术问题,为了解决该技术问题本申请实施例提供了一种三维建筑模型与二维图纸的联动方法、装置及设备,具体地,公开了如下技术方案:
第一方面,本发明实施例公开一种三维建筑模型与二维图纸的联动方法,所述方法包括:
获取建筑物的三维模型文件,以及所述建筑物的图纸文件,所述图纸文件包括所述建筑物的至少一个二维图纸;
发送所述三维模型文件和所述图纸文件至后端设备,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,所述模型视图与所述至少一个二维图纸为非同源图模,或部分同源图模;
接收所述绑定关系,并根据所述绑定关系显示目标二维图纸和模型视图的视图界面,所述目标二维图纸是所述至少一个二维图纸之一;
接收用户在所述视图界面上的点击操作;
响应于所述点击操作确定所述模型视图中的目标构件,或,所述目标二维图纸上的目标图元,并展示所述目标构件或所述目标图元。
结合第一方面,在第一方面的一种可能的实现方式中,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,包括:解析所述三维模型文件得到模型库文件,所述模型库文件包括至少一组对应关系,每组所述对应关系包括一个模型视图与一个二维图纸之间的对应关系;在至少一组对应关系中,查找与所述图纸文件的至少一个二维图纸相匹配的模型视图;根据所述相匹配的模型视图的特征点,以及对应的二维图纸的特征点,建立所述三维模型文件中的模型视图与所述至少一个二维图纸之间的绑定关系。
结合第一方面,在第一方面的另一种可能的实现方式中,所述获取建筑物的三维模型文件,包括:获取所述建筑物的模型源文件;利用转换工具将所述模型源文件转换成所述三维模型文件,所述三维模型文件为zdb模型文件。
结合第一方面,在第一方面的又一种可能的实现方式中,获取所述建筑物的图纸文件,包括:对所述建筑物的图纸文件进行修改、编辑,生成所述至少一个二维图纸。
结合第一方面,在第一方面的又一种可能的实现方式中,解析所述三维模型文件得到模型库文件,包括:对所述三维模型文件中的模型轻量化文件进行提取、导出得到多个二维视图图纸文件;根据所述多个二维视图图纸文件和所述三维模型文件中的构件表,按照自定义的视图数据,对每个模型视图生成一个二维视图图纸轻量化文件,所述二维视图图纸轻量化文件中包括二维视图图纸中的图元和模型构件之间的一一对应关系。
结合第一方面,在第一方面的又一种可能的实现方式中,根据所述相匹配的模型视图的特征点,以及对应的二维图纸的特征点,建立所述绑定关系,包括:根据所述模型视图的特征点坐标,以及所述对应的二维图纸的特征点坐标,计算所述二维图纸与所述模型视图的至少一个坐标转换矩阵;根据所述至少一个坐标转换矩阵建立所述三维模型文件中的模型视图与所述至少一个二维图纸之间的绑定关系。
结合第一方面,在第一方面的又一种可能的实现方式中,所述用户在所述视图界面上的点击操作为在所述目标二维图纸上的点击操作,则响应于所述点击操作确定所述模型视图中的目标构件,包括:
若所述点击操作命中目标图元,则获取所述目标图元对应的包围盒信息;
根据所述目标二维图纸和所述模型视图之间的绑定关系,以及所述包围盒信息,确定所述目标图元在模型视图上的位置区域;
在所述位置区域中确定目标模型构件,目标模型构件与所述目标图元具有映射关系;
获取所述目标模型构件中的目标构件ID,并根据所述目标构件ID确定所述目标构件。
结合第一方面,在第一方面的又一种可能的实现方式中,在所述位置区域中确定目标模型构件,包括:如果所述位置区域中存在至少一个图元,则获取包含所述至少一个图元的图元集合;根据目标图元ID和模型构件ID的对应关系,在所述位置区域所包含的图元集合中查找与所述目标图元ID对应的目标模型构件。
结合第一方面,在第一方面的又一种可能的实现方式中,所述方法还包括:如果所述位置区域中不存在图元,则根据所述位置区域中的预设坐标点,换算成模型中对应的区域坐标;在所述视图界面上定位所述区域坐标,并展示所述区域坐标对应的区域位置。
结合第一方面,在第一方面的又一种可能的实现方式中,所述方法还包括:若所述点击操作未命中目标图元,则根据点击事件获取点击位置,所述点击位置通过屏幕坐标系表示;将所述屏幕坐标系表示的所述点击位置转换成模型视图中的坐标;根据所述模型视图中的坐标确定所述模型中对应的三维坐标;根据所述三维坐标对所述点击位置做相机定位和展示。
结合第一方面,在第一方面的又一种可能的实现方式中,若所述用户在所述视图界面上的点击操作为在所述模型视图中的点击操作,则响应于所述点击操作确定所述目标二维图纸上的目标图元,包括:
获取所述点击操作命中的构件,并判断所述构件的构件类型;若所述构件类型为空间类构件,则获取所述构件的包围盒信息,所述构件的包围盒信息中包括至少一个构件,所述至少一个构件形成构件集合;
根据模型视图图元和模型构件之间的转换关系,确定所述构件集合对应的第一视图图元集合;
将所述第一视图图元集合中确定的目标包围盒信息转换为图纸中对应的包围盒信息;
根据所述图纸中的所述包围盒信息确定所述目标图元。
结合第一方面,在第一方面的又一种可能的实现方式中,将所述第一视图图元集合中确定的目标包围盒信息转换为图纸中对应的包围盒信息,包括:
根据所述第一视图图元集合中每一个图元的包围盒信息,确定所述目标包围盒信息,其中,目标包围盒为所述第一视图图元集合中所有图元的包围盒中最大范围的包围盒;根据图纸与视图图元集合之间的坐标转换关系,将所述目标包围盒信息转换为所述图纸中对应的包围盒信息。
结合第一方面,在第一方面的又一种可能的实现方式中,根据所述图纸中的所述包围盒信息确定所述目标图元,包括:根据所述图纸中的所述包围盒信息,检测图纸区域中是否存在一个或多个图元;如果存在,则将所述一个或多个图元确定为所述目标图元。
结合第一方面,在第一方面的又一种可能的实现方式中,所述方法还包括:若所述构件类型为普通类构件,则根据所述模型视图图元和模型构件之间的转换关系,确定所述构件对应的第二视图图元集合;根据所述第二视图图元集合中的包围盒信息,确定对应的图纸图元集合;判断所述图纸图元集合中是否包含一个或多个图元;如果是,则确定所述一个或多个图元为所述目标图元;如果否,则确定所述图纸图元集合所包围的区域,获取所述区域坐标,并展示所述区域坐标对应的区域位置。
第二方面,本发明实施例还公开了一种三维建筑模型与二维图纸的联动装置,所述装置包括:
获取单元,用于获取建筑物的三维模型文件,以及建筑物的图纸文件,所述图纸文件包括所述建筑物的至少一个二维图纸;
发送单元,用于发送所述三维模型文件和所述图纸文件至后端设备,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,所述模型视图与所述至少一个二维图纸为非同源图模,或部分同源图模;
接收单元,用于接收所述绑定关系;
显示单元,用于根据所述绑定关系显示目标二维图纸和模型视图的视图界面,所述目标二维图纸是所述至少一个二维图纸之一;
所述接收单元,还用于接收用户在所述视图界面上的点击操作;
确定单元,用于响应于所述点击操作确定所述模型视图中的目标构件,或,所述目标二维图纸上的目标图元,并通过所述显示单元展示所述目标构件或所述目标图元。
第三方面,本发明实施例还公开了一种电子设备,包括处理器和存储器,所述存储器与所述处理器耦合;所述存储器上存储有计算机可读程序指令,当所述指令被所述处理器执行时,实现前述第一方面或第一方面任一实现方式所述的三维建筑模型与二维图纸的联动方法。
另外,本发明实施方式还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如第一方面或第一方面任一实施方式所述的三维建筑模型与二维图纸的联动方法。
本实施例提供的联动方法和装置,通过后端设备建立建筑物的三维模型文件与至少一个二维图纸之间的绑定关系,并基于该绑定关系在前端设备的视图界面上显示,从而在前端设备实现二维图纸与三维模型之间的联动,从而满足用户的审查需求。且该方法不受图纸二次、三次修改的限制,从而实现了非同源图模、部分同源图模的二维图纸、三维模型之间绑定关系的建立,为二三维联动提供保证。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A为本发明实施例提供的一个窗户构件的示意图;
图1B为本发明实施例提供的一个包围盒的示意图;
图1C为本发明实施例提供一种二三维联动的示例图;
图2为本发明实施例提供的一种二三维联动的场景示意图;
图3为本发明实施例提供的一种三维建筑模型与二维图纸的联动方法流程图;
图4为本发明实施例提供的一种获取三维模型文件的示意图;
图5为本发明实施例提供的一种三维建筑模型与二维图纸的绑定方法的示意图;
图6为本发明实施例提供的一种生成二维视图图纸轻量化文件的方法流程图;
图7为本发明实施例提供的一种zdb模型文件的示意图;
图8为本发明实施例提供的一种建立绑定关系的流程图;
图9为本发明实施例提供的一种特征点的轴网数据的示意图;
图10为本发明实施例提供的另一种三维建筑模型与二维图纸的联动方法的流程图;
图11为本发明实施例提供的一种二三维联动方法的流程图;
图12为本发明实施例提供的另一种二三维联动方法的流程图;
图13为本发明实施例提供的又一种二三维联动方法的流程图;
图14为本发明实施例提供的又一种二三维联动方法的流程图;
图15为本发明实施例提供的一种联动装置的结构框图;
图16为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的技术方案涉及工程建筑领域,比如在工程建筑全过程中三维信息模型的应用,具体地,应用于施工图审查阶段针对施工图纸和三维模型的联合审查等方面。
首先介绍与本申请相关的技术术语和行业规范。
1、图模同源以及图模非同源
图模,是指二维施工图纸和三维建筑模型的简称。其中,二维施工图纸又称为二维图纸,三维建筑模型又称为三维模型。
所谓图模同源是指二维图纸和三维模型来自同一数据源,即二维图纸是由三维模型的视图导出。所谓图模不同源(或者称图模非同源)是指,二维图纸和三维模型不是来自同一数据源,即二维图纸不是由三维模型视图导出的。例如,三维模型的源文件是通过原始建筑信息/数据获得,二维的图纸源文件是在三维模型源文件导出后,又对其做了修改或编辑,得到修改后的二维图纸与三维模型是非同源的。另外,如果二维图纸是通过其他模型(非三维模型源文件)或直接从原始建筑信息/数据中导出,则二者也属于图模非同源。
2、BIMFACE软件
BIMFACE软件是一款具有完全自主知识产权的BIM(Building InformationModeling,建筑信息模型)轻量化引擎,建筑行业的软件开发者可在BIMFACE所提供的基础功能上进行二次开发,为终端用户提供更加丰富、更有价值的BIM应用。
BIMFACE软件具有工程文件格式转换、模型/图纸轻量化显示和BIM数据管理等功能。例如,无需安装插件,支持五十余种工程文件格式在云端转换,完整保留原始文件信息;无需安装专业软件,直接在浏览器、手机、平板上打开模型/图纸,最大限度压缩模型大小,最大限度降低CPU/内存/显卡开销。以及支持海量BIM数据(如:构件信息、空间信息、视图信息等)在云端结构化存储,获取数据方便快捷。
本发明的技术方案应用该BIMFACE软件实现二维图纸、三维模型的轻量化展示,图模联动交互效果。
3、构件(Component)
在BIMFACE中,所有的模型都是由有限数量的构件组成的,通过默认Toolbar的“基本信息”按钮可以查看该模型的总构件数量。构件直观上说是用户可以选中的最小单元,如图1A中的窗户构件。又例如三维模型中的各个模型,都是通过一个个构件组成。
除了几何信息之外,构件还具有构件Id、包围盒信息、构件详情等信息。点击构件后即可在控制台获取构件Id(elementId)及包围盒信息(boundingBox)。在Revit软件中,每个构件都会有一个唯一的ID(即BIMFACE中称“componentId”)。
3、包围盒(boundingBox)
包围盒是规则的立方体,是一个物体(一个模型、一个构件、一组构件)在视图中的最大边界;或者是指,图纸图元或模型构件在平面或空间上的最小矩形包围边界或长方体包围边界。如图1B所示。一般来说,BoundingBox的数据结构是两个三维坐标[x,y,z],分别是包围盒左下角的坐标及右上角的坐标。
例如,配置{"min":{"x":20174.19735877,"y":60867.4780141,"z":2946.2499989},
"max":{"x":20824.19735877,"y":61517.4784042,"z":3046.2499989}}。
另外,图元也可以通过包围盒来表示位置。
4、二三维联动
在施工交底时,根据二维图纸平台布局和三维模型的可视化配合施工。Revit中由模型生成的二维图纸可以与三维模型联动,BIMFACE在Web端可实现该功能。该功能包括:点击二维图纸的构件可以定位到三维模型的构件并高亮显示,同时点击三维模型的构件也可以定位到二维图纸的构件并高亮显示。如图1C所示,在视图左半边的三维模型中点击一个停车位的构件,对应到右半边的二维图纸中高亮对应的停车位区域。
此外,二维图纸的平面布局,三维模型的空间拓扑关系和可视化互相配合,可便于审阅二维图纸、三维模型以及建筑整体结构中的各个构件。
相关技术中,二三维联动实现方案,仅针对同源图模的部分情况,涵盖不了大部分应用场景。诸如,针非同源的模型和图纸无法做到二三维联动。又例如针对同源的图模,当导出的二维图纸通过图纸设计软件做了改动和编辑(变成新的二维图纸),此时与三维模型是非同源关系,无法对其做二三维联动
另外,目前二三维联动仅限于二维图纸和三维模型中同时都存在有对应构件的情形,当构件无对应时,无法做到二三维联动。比如在模型中的房间构件,该构件在二维图纸中无对应图元,则无法做到联动;进而无法做到空间级联合审查等。
本申请为了实现对非同源图模或部分同源图模的二三维联动审查,提供了一种解决方案,针对独立的二维图纸和三维建筑模型之间关系进行绑定,系统自动将非同源的三维模型和二维图纸进行解析、匹配,从而建立二维图纸和该三维模型的某一视图的关联关系,结合模型和模型视图(二维图纸)的联系,达到二维图纸和三维模型联系通路的创建,从而实现同源图模和非同源图模的构件级联动、空间级联动、特殊空间构件的联动。
下面对本申请实施例提供的技术方案进行详细说明。
本申请的技术方案可应用于一种网络系统,比如图2所示,该网络系统中包括服务器100和客户端200,其中,服务器100与客户端200之间通过网络连接。进一步地,服务器100可以是独立的服务器,或者是多个服务器组成的服务器集群,还可以是提供云服务/云计算、数据中心、Web服务器、网络服务、云通信、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的服务器。
客户端200包括至少一个终端设备,或称用户设备(User Equipment,UE),所述至少一个UE包括但不限于各种个人计算机PC、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备等。如图2所示,至少一个UE包括:笔记本(UE1)、台式机(UE2)和手机(UE3)。
此外,服务器100与客户端200之间连接的网络可以包括各种连接类型,例如有线、无线通信链路,如无线局域网(Wireless Local Area Network,WLAN)或者光纤电缆等等。
应理解,上述网络系统中还可以包括其他更多或更少的设备或装置,比如交换机等,本实施例对此不做限制。
另外,需要说明的是,本系统旨在处理建筑设计过程中产生的设计模型和设计图纸文件,设计模型即三维建筑模型,设计图纸即二维图纸,三维建筑模型和二维图纸的生成过程不做赘述,用户/客户端在生产过程中可使用设计工具进行生产。其中,三维建筑模型文件和二维图纸文件是否同源均可,本申请对此不予限制。
本实施例提供一种三维建筑模型与二维图纸的联动方法,该方法可由前端设备,比如客户端或网页端执行,如图3所示,该方法包括:
步骤101:获取建筑物的三维模型文件,以及所述建筑物的图纸文件,所述图纸文件包括所述建筑物的至少一个二维图纸。
其中,所述三维模型文件由转换工具转换的生成,所述图纸文件又可称为图纸源文件,至少一个二维图纸可以是由图纸源文件轻量化转换生成。所述转换工具可以是一种zdb转换器或zdb转换工具。
具体地,一种获取建筑物的三维模型文件的方法是:客户端利用zdb转换器对所述建筑物的模型源文件转换后生成所述三维模型文件,该转换后的三维模型文件为zdb模型文件或zdb模型数据。另外,所述模型源文件支持rvt/bdv格式。
如图4所示,客户端使用zdb转换器对建筑物的三维模型源文件进行读取、解析,按照构件规范转化为zdb格式的模型数据,并导出zdb模型文件,其导出过程中由用户自定义该模型源文件的每个视图对应的图纸名称。此外,应理解,前端设备还可以利用其安装的其他功能软件,实现将模型源文件转换为zdb模型文件的功能。
前端设备根据用户操作,通过网页登录系统后,将上述生成的导出的三维模型文件上传至所述后端服务器或网络系统,对应地,后端服务器/网络系统接收前端设备发送的所述三维模型文件。
上述步骤101中,前端设备还可以将建筑物的图纸源文件进行轻量化转换,生成至少一个二维图纸,所述图纸源文件可以是由第三方图纸绘制设计工具编辑后得到。
所谓轻量化转化是BIM业界人所共知的一个概念。可理解为转化为一个适用于浏览器端渲染的模型数据,包括几何数据和行业数据等等,本实施例中经过轻量化转换后的一个或多个二维图纸可在网页端(如浏览器端)展示。需要说明的是,本实施例中前端设备和/或后端设备均可通过BIMFACE软件展示经过轻量化转换后的二维图纸。
步骤102:发送所述三维模型文件和所述图纸文件至后端设备,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系。
其中,至少一个二维图纸可以是经过二次、三次修改后的图纸文件,与模型源文件中模型视图的关系是部分同源图模,或非同源图模。
对应地,后端设备,比如服务器接收来自前端设备的三维模型文件和至少一个二维图纸,且获取三维模型文件和至少一个二维图纸的先后顺序本实施例不做限制,另外对获取方式也不限制,既可以从一个客户端获得,也可以从不同的客户端获得。
后端设备建立所述绑定关系后,将该绑定关系发送给前端设备。
步骤103:接收所述绑定关系,并根据所述绑定关系显示目标二维图纸和模型视图的视图界面,所述目标二维图纸是所述至少一个二维图纸之一。
具体地,包括:鼠标在三维模型视图窗口内移动,点选三维模型视图中的某个构件,得到该构件的构件ObjectId;然后使用getDrawingListById()方法,根据该构件ObjectId,获取该构件存在于模型的视图位置中,并得到视图列表sheetList,若多个视图中均包含该构件,则随机在sheetList中选择一张视图,比如第一视图sheet1;最后,根据该第一视图sheet1,以及前述步骤102中得到的二维图纸和三维模型视图的绑定关系,得到第一视图所对应的二维图纸drawing1,即所述目标二维图纸,并渲染该目标二维图纸,本方法可在多个二维图纸中找到合适、符合意愿的图纸作为目标二维图纸,然后与三维模型视图一同展示在视图界面。
步骤104:接收用户在所述视图界面上的点击操作。
其中,视图界面上同时显示三维模型视图和目标二维图纸,所述点击操作包括:用户在视图界面上点击模型视图的操作,或者点击目标二维图纸的操作。
步骤105:响应于所述点击操作确定所述模型视图中的目标构件,或,所述目标二维图纸上的目标图元,并展示所述目标构件或所述目标图元。
由于上述步骤建立了模型视图和目标二维图纸之间绑定关系,所以基于该绑定关系,当前端设备接收到用户的点击操作时,比如点击模型视图中的一个构件时,根据所述绑定关系,在目标二维图纸中查找到对应的目标图元;或者点击目标二维图纸上的图元时,根据绑定关系确定出在模型视图中的目标构件,最后显示所述目标构件或目标图元。
本实施例提供的联动方法,通过后端设备建立建筑物的三维模型文件与至少一个二维图纸之间的绑定关系,并基于该绑定关系在前端设备的视图界面上显示,从而在前端设备实现二维图纸与三维模型之间的联动,从而满足用户的审查需求。且该方法不受图纸二次、三次修改的限制,实现了非同源图模、部分同源图模的二维图纸、三维模型之间绑定关系的建立,为二三维联动提供保证。
可选的,在本实施例的上述步骤102中,后端设备建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,具体包括:
首先,解析所述三维模型文件得到模型库文件。所述模型库文件包括视图图纸关系表,所述视图图纸关系表中包括至少一组对应关系,每组对应关系包括一个模型视图与一个二维图纸之间的对应关系,比如包含m组对应关系,m≥1,且m为正整数。
其次,在所述至少一组对应关系中,查找与所述图纸文件的至少一个二维图纸相匹配的模型视图。
具体地,设在步骤101中获取n个二维图纸,n≥1,则根据视图图纸关系表中定义的关系,后端设备为n个二维图纸中的每一个二维图纸,在m组对应关系中选择一个相匹配的模型视图,例如n个二维图纸中的任一二维图纸对应的唯一标识,利用该唯一标识在m组对应关系中查找与该标识有关联关系的模型视图,作为相匹配的模型视图。按照逐一查找的方法,在m组对应关系中可能找到至少一个相匹配的模型视图,m≥n,一种可能的情况是,n个二维图纸都找到对应相匹配的模型视图,则获得最多数量n个模型视图。
最后,根据所述相匹配的模型视图的特征点,以及与这些模型视图对应的二维图纸的特征点,建立所述三维模型文件中的模型视图与所述至少一个二维图纸之间的绑定关系。
具体包括:当查找到相匹配的至少一个模型视图(比如n个模型视图)后,根据每个模型视图的特征点与相匹配的至少一个二维图纸的特征点,计算每一对模型视图与对应二维图纸之间的关联关系,再通过所有关联关系,建立模型视图与二维图纸之间的绑定关系,从而实现对于部分同源图模、非同源图模之间的关联关系建立。
本实施例提供的方法,根据模型库文件中的视图图纸关联表,以该视图图纸关系表中二维图纸为媒介,查找与图纸源文件中的至少一个二维图纸之间相匹配的模型视图,从而建立模型视图与二维图纸之间的绑定关系,并基于该绑定关系实现了二维图纸与三维模型之间的联合审查,从而满足用户的审查需求。
另外,本方法通过构建一条从三维建筑模型到模型视图、再到二维图纸的空间构件图元的映射通路,做到二维图纸和三维模型的相互联动,且该方法不受图纸二次、三次修改的限制,从而实现了非同源图模、部分同源图模的二维图纸、三维模型之间绑定关系的建立,为二三维联动提供保证。
可选的,在本实施例的一种具体实施方式中,上述获取建筑物的至少一个二维图纸,包括:后端设备接收前端设备上传的所述建筑物的图纸源文件;对该图纸源文件进行轻量化转换,得到所述至少一个二维图纸。其中,至少一个二维图纸可对应建筑物模型的不同视图和不同角度。具体地,轻量化转换过程和显示转换后的二维图纸过程,本实施例对此不做详细赘述。
另外,上述对图纸源文件进行轻量化转换的过程中,方法还包括:对图纸源文件进行轴网识别,得到图纸源文件的轴网数据,该轴网数据包括:轴网名称和轴网交点矩阵。具体地,轴网识别的过程,如图5所示,包括:对图纸源文件进行轻量化转换得到轻量化图纸数据,即二维图纸数据;对所述图纸源文件,通过AI技术进行轴网识别,得到该图纸源文件的轴网数据,该轴网数据用于后续视图与图纸之间坐标系对齐、校正。需要说明的是,上述轻量化转换和轴网识别方法步骤执行先后顺序不限制。
另外,在上述步骤中做轻量化转换过程中,还包括:对三维模型文件进行轻量化转换,得到轻量化模型,并导出视图,如图5所示,然后再建立模型视图与二维图纸之间的绑定关系。
具体地,如图6所示,上述后端设备解析所述三维模型文件得到模型库文件,包括:
步骤102-1:对所述三维模型文件中的模型轻量化文件进行提取、导出得到多个二维视图图纸文件。
步骤102-2:根据所述多个二维视图图纸文件和所述三维模型文件中的构件表,按照自定义的视图数据,对每个模型视图生成一个二维视图图纸轻量化文件。
所述二维视图图纸轻量化文件中包括二维视图图纸中的图元和模型构件之间的一一对应关系。其中,图元通过图元ID来标识,模型构件通过模型构件ID来标识。
其中,上述三维模型文件,即zdb模型文件中包括:bmv轻量化数据、模型库数据。如图7所示,ZDB文件包括:设计信息表、bmv模型轻量化文件和模型库文件。
进一步地,设计信息表:用于描述模型设计信息,该设计信息表的格式可以是xlsx格式。bmv模型轻量化文件:用于后续的模型视图在线模型浏览,可以包括:模型轻量化和模型出图的轻量化功能模块。模型库文件(db文件)包括:构件表、关系表、几何信息表和系统表,
其中,所述构件表:用于描述模型构件的相关信息,比如视图、轴网、标高、墙、们、窗等构件。所述关系表中包括:视图图纸关系表、视图构件关系表和轴网交点表等。
所述视图图纸关系表:视图及关联图纸名称的列表数据,具体可包括m组对应关系,每组所述对应关系为一个模型视图与一个二维图纸之间的对应关系。
所述视图构件关系表:描述模型某一视图上所包含的一个或多个构件集合。
所述轴网交点表:用于描述模型的轴网交点信息,目的是后续二维图纸和模型视图的坐标点对齐信息。
所述几何信息表:用于描述模型构件的几何信息。所述系统表:用于描述其他信息。
应理解,在模型库文件中还可以包括其他更多或更少的关系表和信息内容,本实施例对此不做限制。
上述步骤102-1和102-2中,对所述zdb模型文件进行解析,根据文件中的上述信息具体做以下处理:对bmv轻量化模型数据做视图导出,视图导出根据该模型中定义的视图数据,对每一个视图生成一张二维视图图纸轻量化文件;其中,步骤102-2中生成的二维视图图纸轻量化文件中包含:轻量化展示需要的二维几何数据。比如在Revit Ids.json文件中描述二维视图图纸中的视图图元和模型中构件的对应关系,数据结构如下表1所示:
表1
视图图元ID | 模型构件ID |
150 | 448979 |
155 | 448981 |
160 | 448983 |
165 | 448985 |
171 | 448987 |
177 | 448989 |
...... | ...... |
另外,在执行上述步骤102-1和102-2后,方法包括:对所述zdb模型文件的视图图纸关系列表数据进行处理,为所述图纸源文件的所述至少一个二维图纸中的每个所述二维图纸查找对应的模型视图图纸文件。比如,查找至少一个二维图纸中是否存在一个视图图元ID为150的图元,如果是,则查找到该图元对应的模型构件ID是448979,进而确定出与当前图元的二维图纸相匹配的模型视图是构件ID为448979的模型视图。
可选的,在又一施例方式中,如图8所示,上述根据所述相匹配的模型视图的特征点,以及对应的二维图纸的特征点,建立所述绑定关系,具体包括:
步骤1:根据所述模型视图的特征点坐标,以及所述对应的二维图纸的特征点坐标,计算所述二维图纸与所述模型视图的至少一个坐标转换矩阵。
步骤2:根据所述至少一个坐标转换矩阵建立所述三维模型文件中的模型视图与所述至少一个二维图纸之间的至少一个绑定关系。
具体地,在一组相匹配的模型视图和二维图纸中分别设置两个特征点,比如p1,p2和p3,p4。根据n个视图源文件的图纸以及上述为每个源文件图纸匹配的模型视图,分别寻找每一个二维图纸中的两个特征点,假设两个特征点为p1、p2,和与之匹配上的模型视图中的两个特征点p3,p4。其中p1和p3对应,p2和p4对应;确定出4个特征点后,根据步骤104-2中的p1、p2、p3、p4四个特征的坐标计算二维图纸和对应的模型视图文件之间的坐标转换矩阵,该坐标转换矩阵为第一坐标系和第二坐标系的转换关系,所述第一坐标系为特征点p1、p2的坐标系,即二维图纸的坐标系;所述第二坐标系为特征点p3,p4的坐标系,即模型视图的坐标系。同理地,重复步骤104-1和104-2,直至每个二维图纸源文件和对应的模型视图文件计算出坐标系变换矩阵。
可选的,上述特征点p1、p2、p3、p4选择并确定的过程包括:
首先,通过AI识别技术获取图纸源文件的轴网数据,轴网数据描述为轴线名称及交点坐标矩阵;然后,通过解析三维模型文件获取对应的模型视图的轴网数据,轴网数据同样描述为三维模型的轴线名称及交点坐标矩阵;再次,在所述图纸源文件的一个图纸的轴网交点数据矩阵中寻找3个不在同一直线上的点,例如图9所示,在第一轴网数据中寻找的三个点,分别为p11、p12、p13;同样,在模型视图轴网数据(即第二轴网数据)中也寻找3个不在同一直线上的点,比如分别为p21、p22、p23。
再次,比较第一、第二轴网数据中找到的各个点的位置关系是否满足匹配条件,例如判断点p11和点p21对应的相交轴线名称是否一致,即判断p11的相交轴线名称w和h,与,p21交点的相交轴线名称w和h是否一致,本示例中判断出p11和p12的相交轴线名称一致,即满足匹配条件。其中,相交轴线指的是图纸中有交点的两条轴线,w、h是两条轴线名称。在图9的示例中,轴线名称还可以是a、b、x、y、z、k等等。
同理地,依次判断点p12的相交轴线名称b、y和点p22的相交轴线名称b、y是否一致,以及点p13和点p23的相交轴线名称x、k是否一致,具体判断是否一致过程同上描述。
对p11、p12、p13三点连线组成的三角形ABC和p11、p12、p13三点连线组成的三角形A’B’C’进行相似性判定,若两个三角形为相似三角形,则取p11、p12、p21、p22为找到的p1、p2、p3、p4特征点;若不是相似三角形,则此次查找的p1~p4不满足特征点要求,需要重新配置新的特征点。
本实施例提供的方法,利用二维图纸文件上的特征点和三维模型视图上的特征点进行选取、计算,得到二维图纸和三维模型的两个坐标系的转换矩阵,从而根据该转换矩阵建立二维图纸与三维模型之间的绑定关系。在三维模型视图和二维图纸的之间建立绑定过程中,通过构件和图元映射关系做构件级的映射,通过模型三维空间坐标与视图二维平面坐标的坐标系转换矩阵做到空间级映射。
可选的,上述步骤1中生成至少一个坐标转换矩阵的过程中,还包括:通过自动对齐,生成至少一个坐标变换矩阵,若模型视图和二维图纸之间差异性较大,则需要人工辅助来实现坐标系对齐,建立模型视图坐标系到二维图纸坐标系的映射。
应理解,本实施例中举例了通过特征点匹配方法,计算出图纸源文件的二维图纸坐标系和模型视图的二维图纸的坐标系之间的坐标转换矩阵,特征点匹配可以但不仅限于通过两张图纸的轴网数据寻找,还可以通过更多数据或其他方法确定坐标系转换矩阵,本实施例对此不做限制。
另外,在坐标系转换矩阵计算过程中,本方法还将不同格式的三维模型文件进行格式统一,统一成zdb格式文件,以及对数据标准进行统一,便于后续输出结果的处理和轻量化展示。
下面对上述实施例中的步骤104和105的过程进行详细说明,步骤104和105是基于上述三维模型视图与二维图纸之间建立的绑定关系,在前端设备的视图界面上进行二三维联动的过程。具体地,首先介绍第一种联动过程,用户点击二维图纸上的图元,在三维模型中联动的过程。如图10所示,该方法包括如下步骤:
步骤201:接收用户在二维图纸上的点击操作。
所述点击操作用于选中二维图纸区域上的至少一个图元。例如鼠标在图纸区域移动,点选二维图纸区域的某个图元。在上述实施例建立了三维的模型库文件与二维的图纸源文件之间的绑定关系后,可以在显示界面上同时显示三维模型视图和二维图纸的图元,并且基于该显示界面上的二维图纸和三维模型视图执行步骤201。
可选的,所述二维图纸为前述实施例中的目标二维视图。
步骤202:判断点击操作是否命中目标图元。
步骤203:如果是,即所述点击操作命中目标图元,则获取所述目标图元对应的包围盒信息。具体地,当确定用户点击操作所选中的目标图元后,根据该目标图元的几何数据,计算该目标图元的包围盒(boundingBox)信息。
步骤204:根据所述目标二维图纸和所述模型视图之间的绑定关系,以及所述包围盒信息,确定所述目标图元在模型视图上的位置区域。
具体地,根据上述实施例中得到的目标二维图纸和三维模型视图的绑定关系,得到该目标二维图纸对应的模型视图,根据坐标转换matrix矩阵进一步计算出该图纸的目标图元包围盒对应在模型视图上的位置区域P。
步骤205:在所述位置区域中确定目标模型构件,所述目标模型构件与所述目标图元具有映射关系。
步骤206:获取所述目标模型构件中的目标构件ID,并根据所述目标构件ID确定所述目标构件。
根据所述模型视图的图元ID与目标构件ID之间的映射关系,换算出所述目标图元ID对应的目标构件ID,并在对应的模型视图中,定位查找到所述目标构件ID对应的目标构件。
步骤207:展示所述目标构件。具体地,一种显示方式是,高亮显示所述目标构件。
本实施例提供的方法,在客户端,比如浏览器中,分别轻量化展示二维图纸和三维模型视图,基于用户对二维图纸上图元点击事件和图纸上的点击事件做监听,当点击事件发生后,获取点击的图纸中的位置坐标或点击的图元的包围盒信息,通过matrix矩阵变换出在视图中的包围盒信息,根据包围盒信息获取视图上包围盒范围内的图元集合,由构件和图元关系映射表映射到模型的目标构件,进而对目标构件做具体展示绘制等操作,本方法实现了二维图纸到三维模型视图之间的相互联动,为图模的联合审查提供便捷。
具体地,在一种可能的实施方式中,如图11所示,上述步骤205具体包括:
步骤205-1:判断步骤204中确定的位置区域中是否存在至少一个图元。目的是在该位置区域P中寻找该区域的一个或多个图元。
步骤205-2:如果是,则获取包含所述至少一个图元的图元集合。比如获取图元ID集合。
步骤205-3:根据所述目标图元ID和模型构件ID的对应关系,在所述位置区域所包含的图元集合中查找与所述目标图元ID对应的目标模型构件。
另外,方法还包括:如果步骤205-1中判断结果为否,即所述位置区域中不存在图元执行步骤205-4。
步骤205-4:根据位置区域中的预设坐标点,换算成模型中对应的区域坐标。
具体地,可以使用位置区域P的四个顶点坐标中心,根据getModelPosition()方法计算模型中对应的区域坐标(x’,y’,z’)。
步骤205-5:在所述视图界面上定位所述区域坐标,并展示所述区域坐标对应的区域位置。例如在视图界面的模型视窗中,将模型定位到三维区域坐标(x’,y’,z’),并查看该区域位置。
本实施例提供的方法,当位置区域中不存在图元时,基于用户的点击操作,确定并展示该点击操作所对应的三维区域位置,从而实现了二三维联动。
另外,可选的,如图12所示,在上述步骤202中,判断点击操作是否命中目标图元之后,所述方法还包括:
步骤208:如果否,即步骤201中的所述点击操作未命中目标图元,则根据点击事件获取点击位置,所述点击位置通过屏幕坐标系表示。
具体地,根据点击操作对应的鼠标点击事件,比如mouseDownEvent获取点击位置的屏幕坐标,假设该屏幕坐标为{x:400,y:300}。
步骤209:将所述屏幕坐标系表示的所述点击位置转换成模型视图中的坐标。
一种可能的实施方式是,根据clientToWord()方法,使用屏幕坐标换算获得该屏幕坐标点在图纸中的世界真实坐标,比如经过坐标转换,屏幕坐标{x:400,y:300}转换为世界坐标系的真实坐标为{x:16000,y:2800}。
步骤210:根据所述模型视图中的坐标确定所述模型中对应的三维坐标。
根据前述得到的二维图纸和三维模型视图之间的匹配关系,得到该二维图纸对应的模型视图,以及根据坐标转换matrix矩阵,进一步计算出当前二维图纸上命中的点在三维模型视图中的坐标。
步骤211:根据所述三维坐标对所述点击位置做相机定位和展示。
基于步骤210中换算得到的视图中的点坐标,根据getModelPosition()方法计算模型中对应的三维坐标(x’,y’,z’),在三维模型视窗中,将模型定位到三维坐标(x’,y’,z’)进行查看和展示。
本实施例提供的方法,在用户点击未命中图元的情况下,基于二维图纸和三维模型视图之间的对应关系,以及坐标转换matrix矩阵,将用户点击的二维图纸中的某一位置通过三维模型视图以定位的三维坐标的形式展示,从而实现二三维的图模联动。
在本申请的另一个实施例中,还提供了第二种二三维联动方法,用户在视图界面上点击模型视图中的三维模型,响应于该点击操作确定其对应的目标二维图纸上的目标图元。具体地,如图13所示,该方法包括:
步骤301:接收用户在三维建筑模型中的点击操作。
步骤302:获取所述点击操作命中的构件,并判断所述构件的构件类型。
具体地,前端设备检测到用户的点击操作后,获得构件的构件ObjectId,并根据该构件ObjectId获取构件信息,所述构件信息包括构件类型。进一步地,构件类型分为空间类构件和普通类构件,所谓空间类构件是指该构件中包括至少一个其他构件,比如空间类构件为一个房屋,该房屋构件中包括门窗、墙、梁、柱等构件。所谓普通类构件是指单一结构的构件,比如门、窗、柱子等等。
步骤303:若所述构件类型为空间类构件,则获取所述构件的包围盒信息。
其中,所述构件的包围盒(boundingBox)信息中包括至少一个构件,所述至少一个构件形成构件集合。在一示例中,所述包围盒信息用坐标表示为[{x1,y1,z1},{x2,y2,z2}]。
步骤304:根据模型视图图元和模型构件之间的转换关系,确定所述构件集合对应的第一视图图元集合。
具体地,根据所述包围盒信息,获取模型中在这个包围盒中的所有构件,得到模型构件id集合objectIdSet;然后根据之前得到的模型视图图元和模型构件id的映射关系,用模型构件id集合objectIdSet得到对应的视图图元集合drawingObjectIdSet,即第一视图图元集合。
步骤305:将所述第一视图图元集合中确定的目标包围盒信息转换为图纸中对应的包围盒信息。
步骤306:根据所述图纸中的所述包围盒信息确定所述目标图元。
进一步地,参见图14,上述步骤305,具体包括:
步骤305-1:根据所述第一视图图元集合中每一个图元的包围盒信息,确定所述目标包围盒信息,其中,目标包围盒为第一视图图元集合中所有图元的包围盒中最大范围的包围盒。
具体地,在视图中,根据第一视图图元集合,比如drawingObjectIdSet图元集合,使用getObjectBoundingBox()方法获取每一个图元的包围盒信息,合并计算出能够包围所有图元的大的包围盒,假设标记为BigBox1,该大包围盒的坐标为[{minX1,minY1},{maxX1,maxY1}],其中,max表示最大值,min表示最小值。
步骤305-2:根据图纸与视图图元集合之间的坐标转换关系,将所述目标包围盒信息转换为所述图纸中对应的包围盒信息。
具体地,根据前述实施例中得到的坐标转换matrix矩阵,用视图中的大的包围盒BigBox1换算出在图纸中与之对应的包围盒信息,比如该包围盒信息被标记为BigBox2,其坐标为[{minX2,minY2},{maxX2,maxY2}]。
步骤306:使用BigBox2包围盒信息,在图纸中绘制该矩形包围盒区域,并使图纸定位到该区域。更进一步地,上述步骤306,具体包括:
步骤306-1:判断图纸区域中是否存在一个或多个图元。一种可能的实施方式是,根据所述图纸中的所述包围盒信息,判断是否存在一个或多个图元。
步骤306-2:如果存在,则将所述一个或多个图元确定为所述目标图元,并得到图元集合。
步骤306-3:点亮所述图元集合中的所述目标图元。
可选的,在本实施例中,上述方法还包括:
步骤307:若所述构件类型为普通类构件,则根据模型视图图元和模型构件之间的转换关系,确定所述构件应的第二视图图元集合。
其中,模型视图图元和模型构件之间的转换关系通过上述实施例中获得。
步骤308:根据所述第二视图图元集合中的包围盒信息,确定对应的图纸图元集合。
其中,确定出的图纸图元集合中也对应图纸图元中的图纸区域,然后执行步骤306-1:判断所述图纸图元集合中是否包含一个或多个图元,即同步骤306-1。如果是,则执行步骤306-2和步骤306-3,具体过程可参见前述实施例,此处不再赘述。如果否,则执行步骤309。
步骤309:如果否,即不存在一个或多个图元,则确定所述图纸图元集合所包围的区域,获取所述区域坐标,并展示到所述区域坐标对应的区域位置。
在一具体示例中,当为普通构件时,根据之前得到的模型视图图元和模型构件id的映射关系表,使用ObjectId得到在视图中与该构件对应的第二视图图元集合drawingObjectIdSet2,根据该第二视图图元集合drawingObjectIdSet2,在视图中获取每一个图元的包围盒信息,得到视图中图元包围盒的集合drawingObjectBoundingBoxSet1;根据之前得到的坐标转换matrix矩阵,使用drawingObjectBoundingBoxSet1在图纸中针对每一个包围盒进行坐标换算,得到图纸中对应的包围盒集合drawingObjectBoundingBoxSet2。
在图纸中,使用getElementsByBoundingBox方法,将drawingObjectBoundingBoxSet2集合中的每一个包围盒内含有的图纸图元找到,得到第二图纸图元的集合drawingObjectIdSet2;并判断该drawingObjectIdSet2中是否有数据。
若该drawingObjectIdSet2中有数据,则根据第二图纸图元集合drawingObjectIdSet2,将每一个图元高亮,并将图纸移动到图元集合的位置。若该drawingObjectIdSet2中数据为空,即在第二图纸图元集合中未找到图元,则在图纸中,根据drawingObjectBoundingBoxSet2计算出能将所有包围盒区域包围的大包围盒信息,在图纸中绘制该矩形包围盒区域,并使图纸定位到该区域。
本实施例提供的方法,在客户端,比如浏览器中,分别轻量化展示三维模型视图,二维图纸,并对模型中的构件做监听,当接收到用户的点击或操作模型构件时,读取该构件信息,通过构件和图元之间的关系映射,获取该构件在视图中的图元表述集;并判断该图元表述集中是否存在图元集合(一个或多个图元),若能够找到图元集合,则继续根据图元集合获取该集合在视图中的boundingBox包围盒信息,通过matrix矩阵变换出在图纸中的包围盒信息,进而锁定图纸中该包围盒范围内的图元,对图元进行对应的展示操作。
若找不到图元集合,则读取模型构件的空间几何信息,获取模型构件的包围盒,并计算出对应到视图二维平面的boundingBox包围盒,通过matrix矩阵变换出在图纸中的对应坐标位置信息,进而锁定图纸中该包围盒范围内的图元,对图元进行对应的展示操作,从而实现图纸的联动。
另外,本实施例还提供了一种三维建筑模型与二维图纸的联动装置,该装置用于实现前述图3至图6、图8所示的方法步骤,具体地,参见图15所示,该装置包括:获取单元410、发送单元420、接收单元430、显示单元440和确定单元450,此外,该装置还可以包括其他更多或更少的结构或单元,比如存储单元等,本实施例对此不作限制。
其中,获取单元410,用于获取建筑物的三维模型文件,以及所述建筑物的图纸文件,所述图纸文件包括所述建筑物的至少一个二维图纸。
发送单元420,用于发送所述三维模型文件和所述图纸文件至后端设备,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,所述模型视图与所述至少一个二维图纸为非同源图模,或部分同源图模。
接收单元430,用于接收所述绑定关系。
显示单元440,用于根据所述绑定关系显示目标二维图纸和模型视图的视图界面,所述目标二维图纸是所述至少一个二维图纸之一。
所述接收单元430,还用于接收用户在所述视图界面上的点击操作。
确定单元450,用于响应于所述点击操作确定所述模型视图中的目标构件,或,所述目标二维图纸上的目标图元,并通过所述显示单元展示所述目标构件或所述目标图元。
可选的,所述联动装置为一种前端设备,比如客户端。
此外,上述获取单元410、发送单元420、接收单元430、显示单元440和确定单元450还用于实现前述实施例中一种三维建筑模型与二维图纸的联动方法的其他方法步骤。
可选的,在另一个实施例中,该联动装置还可以是一种后端设备,比如服务器,用于执行前述实施例中后端设备的方法步骤,从而实现基于二三维模型的图模联动。
另外,本发明实施例还提供了一种电子设备,如图16所示,该电子设备可以包括处理器110和存储器120,其中处理器110和存储器120可以通过总线或者其他方式连接,图16中以通过总线连接为例。此外,该电子设备中还包括至少一个接口130,该至少一个接口130可以是通信接口或其他接口,本实施例对此不做限制。
该电子设备可以是上述实施例中的前端设备,或者还可以是一种后端设备。
其中,处理器110可以为中央处理器(Central Processing Unit,CPU)。处理器110还可以为其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
存储器120作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的三维建筑模型与二维图纸的联动方法对应的程序指令/模块。其中处理器110通过运行存储在存储器120中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的三维建筑模型与二维图纸的联动方法。
存储器120可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器110所创建的数据等。此外,存储器120可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器120可选包括相对于处理器110远程设置的存储器,这些远程存储器可以通过网络连接至处理器110。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
另外,至少一个接口130用于电子设备与外部设备的通信,比如与服务器通信等。可选的,至少一个接口130还可以用于连接外设输入、输出设备,比如键盘、显示屏等。
所述一个或者多个模块存储在所述存储器120中,当被所述处理器110执行时,执行如前述图3至图6、以及图8所示实施例中的方法步骤,以及执行如图10至14中所述方法步骤。具体地,方法的实现过程可参见前述方法实施例的描述,本实施例此处不详细赘述。
本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random AccessMemory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD)等;所述存储介质还可以包括上述种类的存储器的组合。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (16)
1.一种三维建筑模型与二维图纸的联动方法,其特征在于,所述方法包括:
获取建筑物的三维模型文件,以及所述建筑物的图纸文件,所述图纸文件包括所述建筑物的至少一个二维图纸;
发送所述三维模型文件和所述图纸文件至后端设备,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,所述模型视图与所述至少一个二维图纸为非同源图模,或部分同源图模;
接收所述绑定关系,并根据所述绑定关系显示目标二维图纸和模型视图的视图界面,所述目标二维图纸是所述至少一个二维图纸之一;
接收用户在所述视图界面上的点击操作;
响应于所述点击操作确定所述模型视图中的目标构件,或,所述目标二维图纸上的目标图元,并展示所述目标构件或所述目标图元。
2.根据权利要求1所述的方法,其特征在于,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,包括:
解析所述三维模型文件得到模型库文件,所述模型库文件包括至少一组对应关系,每组所述对应关系包括一个模型视图与一个二维图纸之间的对应关系;
在所述至少一组对应关系中,查找与所述图纸文件的至少一个二维图纸相匹配的模型视图;
根据所述相匹配的模型视图的特征点,以及对应的二维图纸的特征点,建立所述三维模型文件中的模型视图与所述至少一个二维图纸之间的绑定关系。
3.根据权利要求1所述的方法,其特征在于,所述获取建筑物的三维模型文件,包括:
获取所述建筑物的模型源文件;
利用转换工具将所述模型源文件转换成所述三维模型文件,所述三维模型文件为zdb模型文件。
4.根据权利要求1所述的方法,其特征在于,获取所述建筑物的图纸文件,包括:
对所述建筑物的图纸文件进行修改、编辑,生成所述至少一个二维图纸。
5.根据权利要求2所述的方法,其特征在于,解析所述三维模型文件得到模型库文件,包括:
对所述三维模型文件中的模型轻量化文件进行提取、导出得到多个二维视图图纸文件;
根据所述多个二维视图图纸文件和所述三维模型文件中的构件表,按照自定义的视图数据,对每个模型视图生成一个二维视图图纸轻量化文件,所述二维视图图纸轻量化文件中包括二维视图图纸中的图元和模型构件之间的一一对应关系。
6.根据权利要求2所述的方法,其特征在于,根据所述相匹配的模型视图的特征点,以及对应的二维图纸的特征点,建立所述绑定关系,包括:
根据所述模型视图的特征点坐标,以及所述对应的二维图纸的特征点坐标,计算所述二维图纸与所述模型视图的至少一个坐标转换矩阵;
根据所述至少一个坐标转换矩阵建立所述三维模型文件中的模型视图与所述至少一个二维图纸之间的绑定关系。
7.根据权利要求1-6任一项所述的方法,其特征在于,若所述用户在所述视图界面上的点击操作为在所述目标二维图纸上的点击操作,则响应于所述点击操作确定所述模型视图中的目标构件,包括:
若所述点击操作命中目标图元,则获取所述目标图元对应的包围盒信息;
根据所述目标二维图纸和所述模型视图之间的绑定关系,以及所述包围盒信息,确定所述目标图元在模型视图上的位置区域;
在所述位置区域中确定目标模型构件,所述目标模型构件与所述目标图元具有映射关系;
获取所述目标模型构件中的目标构件ID,并根据所述目标构件ID确定所述目标构件。
8.根据权利要求7所述的方法,其特征在于,在所述位置区域中确定目标模型构件,包括:
如果所述位置区域中存在至少一个图元,则获取包含所述至少一个图元的图元集合;
根据目标图元ID和模型构件ID的对应关系,在所述位置区域所包含的图元集合中查找与所述目标图元ID对应的目标模型构件。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
如果所述位置区域中不存在图元,则根据所述位置区域中的预设坐标点,换算成模型对应的区域坐标;
在所述视图界面上定位区域坐标,并展示所述区域坐标对应的区域位置。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
若所述点击操作未命中目标图元,则根据点击事件获取点击位置,所述点击位置通过屏幕坐标系表示;
将所述屏幕坐标系表示的所述点击位置转换成模型视图中的坐标;
根据所述模型视图中的坐标确定所述模型中对应的三维坐标;
根据所述三维坐标对所述点击位置做相机定位和展示。
11.根据权利要求1-6任一项所述方法,其特征在于,若所述用户在所述视图界面上的点击操作为在所述模型视图中的点击操作,则响应于所述点击操作确定所述目标二维图纸上的目标图元,包括:
获取所述点击操作命中的构件,并判断所述构件的构件类型;
若所述构件类型为空间类构件,则获取所述构件的包围盒信息,所述构件的包围盒信息中包括至少一个构件,所述至少一个构件形成构件集合;
根据模型视图图元和模型构件之间的转换关系,确定所述构件集合对应的第一视图图元集合;
将所述第一视图图元集合中确定的目标包围盒信息转换为图纸中对应的包围盒信息;
根据所述图纸中的所述包围盒信息确定所述目标图元。
12.根据权利要求11所述的方法,其特征在于,将所述第一视图图元集合中确定的目标包围盒信息转换为图纸中对应的包围盒信息,包括:
根据所述第一视图图元集合中每一个图元的包围盒信息,确定所述目标包围盒信息,其中,目标包围盒为所述第一视图图元集合中所有图元的包围盒中最大范围的包围盒;
根据图纸与视图图元集合之间的坐标转换关系,将所述目标包围盒信息转换为所述图纸中对应的包围盒信息。
13.根据权利要求11所述的方法,其特征在于,根据所述图纸中的所述包围盒信息确定所述目标图元,包括:
根据所述图纸中的所述包围盒信息,检测图纸区域中是否存在一个或多个图元;
如果存在,则将所述一个或多个图元确定为所述目标图元。
14.根据权利要求11所述的方法,其特征在于,所述方法还包括:
若所述构件类型为普通类构件,则根据所述模型视图图元和模型构件之间的转换关系,确定所述构件对应的第二视图图元集合;
根据所述第二视图图元集合中的包围盒信息,确定对应的图纸图元集合;
判断所述图纸图元集合中是否包含一个或多个图元;
如果是,则确定所述一个或多个图元为所述目标图元;
如果否,则确定所述图纸图元集合所包围的区域,获取所述区域坐标,并展示所述区域坐标对应的区域位置。
15.一种三维建筑模型与二维图纸的联动装置,其特征在于,所述装置包括:
获取单元,用于获取建筑物的三维模型文件,以及所述建筑物的图纸文件,所述图纸文件包括所述建筑物的至少一个二维图纸;
发送单元,用于发送所述三维模型文件和所述图纸文件至后端设备,所述后端设备用于建立所述三维模型文件中的模型视图与至少一个二维图纸之间的绑定关系,所述模型视图与所述至少一个二维图纸为非同源图模,或部分同源图模;
接收单元,用于接收所述绑定关系;
显示单元,用于根据所述绑定关系显示目标二维图纸和模型视图的视图界面,所述目标二维图纸是所述至少一个二维图纸之一;
所述接收单元,还用于接收用户在所述视图界面上的点击操作;
确定单元,用于响应于所述点击操作确定所述模型视图中的目标构件,或,所述目标二维图纸上的目标图元,并通过所述显示单元展示所述目标构件或所述目标图元。
16.一种电子设备,其特征在于,包括处理器和存储器,所述存储器与所述处理器耦合;
所述存储器上存储有计算机可读程序指令,当所述指令被所述处理器执行时,实现如权利要求1至14中任一项所述的三维建筑模型与二维图纸的联动方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211536500.8A CN115859431A (zh) | 2022-12-02 | 2022-12-02 | 三维建筑模型与二维图纸的联动方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211536500.8A CN115859431A (zh) | 2022-12-02 | 2022-12-02 | 三维建筑模型与二维图纸的联动方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115859431A true CN115859431A (zh) | 2023-03-28 |
Family
ID=85669248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211536500.8A Pending CN115859431A (zh) | 2022-12-02 | 2022-12-02 | 三维建筑模型与二维图纸的联动方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115859431A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116704009A (zh) * | 2023-08-10 | 2023-09-05 | 深圳普达核工业数字测控有限公司 | 基于预制组件的施工测量数据处理方法、装置及其设备 |
-
2022
- 2022-12-02 CN CN202211536500.8A patent/CN115859431A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116704009A (zh) * | 2023-08-10 | 2023-09-05 | 深圳普达核工业数字测控有限公司 | 基于预制组件的施工测量数据处理方法、装置及其设备 |
CN116704009B (zh) * | 2023-08-10 | 2023-12-01 | 深圳普达核工业数字测控有限公司 | 基于预制组件的施工测量数据处理方法、装置及其设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11663375B2 (en) | Configuration of a digital twin for a building or other facility via BIM data extraction and asset register mapping | |
JP7104683B2 (ja) | 情報を生成する方法および装置 | |
CN111368520A (zh) | 一种电子表格的编辑方法及设备 | |
CN108597032B (zh) | 将建筑信息模型导入Unity3D中显示方法及系统 | |
CN106951479B (zh) | 一种基于云环境的仿真数据可视化协作应用系统及方法 | |
CN109462736B (zh) | 一种基于bim+gis建模的路桥工程建设视频会议管理方法及系统 | |
EP3259679A1 (en) | An automatically invoked unified visualization interface | |
CN111815738B (zh) | 一种构建地图的方法和装置 | |
CN104899258A (zh) | 面向海量文献信息可交互可视化分析系统架构 | |
CN110704920B (zh) | 一种基于Revit模型的在线轻量化方法和系统 | |
US20150379063A1 (en) | System for managing ifc version synchronized with bim and method for managing ifc version thereof | |
US20230386041A1 (en) | Control Method, Device, Equipment and Storage Medium for Interactive Reproduction of Target Object | |
CN114116065B (zh) | 获取拓扑图数据对象的方法、装置、及电子设备 | |
CN111159897B (zh) | 基于系统建模应用的目标优化方法和装置 | |
CN116340260A (zh) | 建筑模型数据渲染方法、装置、电子设备及可读存储介质 | |
CN115859431A (zh) | 三维建筑模型与二维图纸的联动方法、装置和设备 | |
CN114627239B (zh) | 包围盒生成方法、装置、设备及存储介质 | |
CN109063223B (zh) | Bim模型的轻量化方法和装置以及bim模型的处理方法和系统 | |
US20230283834A1 (en) | Synchronous widget and a system and method therefor | |
CN111651826A (zh) | 一种基于建筑信息模型技术的建筑工业化系统 | |
CN115544311A (zh) | 数据分析方法以及装置 | |
CN114416836A (zh) | 一种多源异构cim数据库融合访问系统及方法 | |
CN113010627A (zh) | 一种城市信息模型服务方法 | |
CN112328237A (zh) | 一种场景展示方法、装置、计算机设备和存储介质 | |
CN111813555A (zh) | 基于互联网技术的超融合基础架构分层资源管理系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |