一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于SWRL规则的BIM和GIS本体融合方法及系统与流程

2022-02-22 04:58:26 来源:中国专利 TAG:

基于swrl规则的bim和gis本体融合方法及系统
技术领域
1.本发明涉及图像数据处理技术领域,特别是涉及基于 swrl规则的bim和gis本体融合方法及系统。


背景技术:

2.本部分的陈述仅仅是提到了与本发明相关的背景技术,并不必然构成现有技术。
3.在信息技术高速发展的潮流背景下,以智慧城市建设为核心的如何将新一代信息技术创新性应用到优化城市结构优化更新等问题广受关注。从数字城市到智慧城市是城市管理更加精细的一个过程。仅利用建筑信息模型bim会缺少在地理坐标上的数据信息,而如果仅利用地理信息系统gis则无法得到在建筑物内各实体的结构组成。因此实现bim和gis的融合就可将bim领域中建筑内部的精确数据信息和gis领域中地理位置数据信息相结合,让二者互补融合,最终实现从建筑物外走进建筑物内。
4.现有的基于 swrl规则的bim和gis本体融合方式,主要包括:数据格式转换或者标准扩展。
5.现有的基于 swrl规则的bim和gis本体融合方式,存在的技术缺陷有:(1)数据格式转换后的gis数据格式不具备语义信息,不能表达建筑物间的关联关系,不具备多细节层次表达形式,不能用于多领域的数据共享。
6.(2)标准扩展根据特定的研究领域,选取了bim模型中的部分信息进行研究,没有对建筑构件进行详细的讨论,难以实现完整的映射。
7.中国发明专利(申请号:201810055619,专利名称:一种基于rdf框架的citygml与ifc类结构语义映射本体的方法),虽然提及了将ifc数据标准的信息和citygml数据标准的信息通过语义映射本体方法,将citygml标准与ifc标准进行统一描述,通过建立本体,结合语义网络映射方式实现两个领域数据标准的集成,通过映射规则形成对应的citygml数据标准模型。但是其发明并没有具体描述说出映射规则及转换规则是什么。该发明虽然提出了通过本体,但是并没有用ifc和citygml标准的本体文件。且没有用到swrl规则,只能手动映射,不能实现自动转换,手动映射需要耗费大量时间,实用性较差。
8.中国发明专利(申请号:201910299613,专利名称:一种从bim实体模型自动提取多细节层次gis表面模型的方法),虽然提及了通过分别映射lod0—lod4五层的citygml模型,其发明在转换模型方面是通过ifc模型解析、基于语义映射关系过滤ifc模型等四个方面实现,但是该发明是直接基于ifc和citygml两个格式的文件,直接转换会因为一些信息不对等、不匹配等问题而造成数据或信息的丢失,最终导致转换结果的不完整。


技术实现要素:

9.为了解决现有技术的不足,本发明提供了基于 swrl规则的bim和gis本体融合方法及系统;第一方面,本发明提供了基于 swrl规则的bim和gis本体融合方法;
基于 swrl规则的bim和gis本体融合方法,包括:对建筑信息模型bim进行解析,得到实体类别和实体属性;其中,实体属性,包括:实体关系属性和实体数据属性;将解析得到的实体类别和实体属性进行转换,得到地理信息系统gis所对应的实体类别和实体属性;将实体类别和实体属性进行存储;基于所存储的实体类别和实体属性,确定地理信息系统gis中各个层次对应的数据。
10.第二方面,本发明提供了基于 swrl规则的bim和gis本体融合系统;基于 swrl规则的bim和gis本体融合系统,包括:解析模块,其被配置为:对建筑信息模型bim进行解析,得到实体类别和实体属性;其中,实体属性,包括:实体关系属性和实体数据属性;转换模块,其被配置为:将解析得到的实体类别和实体属性进行转换,得到地理信息系统gis所对应的实体类别和实体属性;存储模块,其被配置为:将实体类别和实体属性进行存储;输出模块,其被配置为:基于所存储的实体类别和实体属性,确定地理信息系统gis中各个层次对应的数据。
11.与现有技术相比,本发明的有益效果是:(1)本发明在本体层采用语义匹配和几何重构相结合的方法,针对ifc和citygml标准下的实体对应及部分属性对应(如颜色、透明度等对应)采用语义匹配,对坐标转换等属性则采用几何重构的方法,自动完成ifc到citygml的转换。
12.(2)本发明在研究ifc与citygml本体融合中,创新地使用了知识图谱相关方法,通过把owl格式作为中介,将ifc标准中的实体和属性信息通过语义匹配和几何转换为citygml标准的信息,并以三元组形式存储在owl文件中,这样可以解决语义丢失和语义信息不匹配的问题。
13.(3)本发明使用swrl规则实现从存储citygml标准信息的owl文件中推理出lod0—lod4的citygml数据信息,可以解决转换过程中信息丢失的问题。
14.swrl规则是由以语义的方式呈现规则的一种语言,将语义web规则语言( semantic web rule language , swrl)引入到本体中,能大大改善本体的推理能力,从而挖掘出许多新的隐含知识,通过swrl规则推理可实现从ifc数据信息转换为citygml的数据信息。
15.citycml不仅可以表现城市模型的图形外观,还可以照顾到语义的表现,例如主题属性、数字地形模型的分类及聚合、站场(包括建筑物、桥梁、隧道)、植被、水系、交通设施、城市配备等。所有的模型可以分为五个不同的连贯细节层次(lod),随着细节层次的提升可以获得关于几何及主题的更多细节。lod0-地域模型(regional model),2.5d数字地形图(digital terrain model);lod1
ꢀ‑
城市/场地模型(city/ site model),没有屋顶结构的“楼块模型”;lod2
ꢀ–
城市/场地模型(city/ site model),包含贴图和楼顶结构的粗模;lod3
ꢀ‑
城市/场地模型(city/ site model),包含更多细节的建筑模型;lod4-室内模型(interior model),可以“步行进入”的建筑模型。
16.(4)本发明致力于ifc和citygml两大标准的融合,在bim和gis的融合具有非常广泛的应用价值,可以给智慧城市建设带来新的思路和方法。bim和gis的融合能够优化传统市政设备的治理和管理模式,显著提升市政设施的管理效率。市政bim模型整合gis监控数据,将市政道路、桥隧、泵站、变电站等的工作运行状态等信息及时响应到bim模型中。此外还能在火灾响应时间、火灾精细化处理、人员应急疏散等方面提供技术辅助,建立室内外联合应急空间模型。
17.(5)本发明未使使用三维实景进行坐标转换,而是通过解析本体owl文件提取坐标信息进行几何重构,计算量小且精度高。
附图说明
18.构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。
19.图1是本发明实施例一的ifc的版本为ifc4的参照视图;图2是本发明实施例一的ifc的版本为ifc4的平面图;图3是本发明实施例一的citygml的lod0细节层次表达示例图;图4是本发明实施例一的citygml的lod1细节层次表达示例图;图5是本发明实施例一的citygml的lod2细节层次表达示例图;图6是本发明实施例一的citygml的lod3细节层次表达示例图;图7是本发明实施例一的citygml的lod4细节层次表达示例图。
具体实施方式
20.应该指出,以下详细说明都是示例性的,旨在对本发明提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本发明所属技术领域的普通技术人员通常理解的相同含义。
21.在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
22.本实施例所有数据的获取都在符合法律法规和用户同意的基础上,对数据的合法应用。
23.术语解释:bim,建筑信息模型,建筑信息模型(building information modeling)是以建筑工程项目的各项相关信息数据作为模型的基础,进行建筑模型的建立,通过数字信息仿真模拟建筑物所具有的真实信息。它具有信息完备性、信息关联性、信息一致性、可视化、协调性、模拟性、优化性和可出图性八大特点。
24.gis,地理信息系统;地理信息系统(geographic information system或 geo-information system,gis)有时又称为"地学信息系统"。它是一种特定的十分重要的空间信息系统。它是在计算机硬、软件系统支持下,对整个或部分地球表层(包括大气层)空间中的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描述的技术系统。
25.lod层次(level of detail),是citygml标准的模型可以分为的五个不同的连贯细节层次(lod),随着细节层次的提升可以获得关于几何及主题的更多细节。citygml文件可以(但不是必须)同时包含每个对象的多个细节层次。lod0—地域模型(regional model)
2.5d数字地形图(digital terrain model );lod1—城市/场地模型(city/ site model)没有屋顶结构的“楼块模型”;lod2—城市/场地模型(city/ site model)包含贴图和楼顶结构的粗模;lod3—城市/场地模型(city/ site model)包含更多细节的建筑模型;lod4—室内模型(interior model )可以“步行进入”的建筑模型。
26.swrl(semantic web rule language)是由以语义的方式呈现规则的一种语言,swrl的规则部分概念是由ruleml所演变而来,再结合owl本体论形成。目前swrl已经是w3c规范中的一员。
27.建筑信息模型(bim)主要是以ifc格式为标准,地理信息系统(gis)主要以citygml格式为标准。ifc标准采用express语言定义建筑数据,侧重描述现实世界的实体和关注建筑物的构件。citygml标准则是采用xml格式完成数据的交换和存储,侧重描述城市中的地理位置数据信息和空间属性等。此外,ifc标准中包含的语义信息和数据信息比citygml标准中的信息更多更详细。
28.owl被设计为提供一种通用的处理web信息的内容的方法,可以解析提取所有与模型相关的信息。 swrl(semantic web rule language)是由以语义的方式呈现规则的一种语言,在owl上使用swrl推理,可以方便快捷地实现ifc到citygml的自动转换。
29.实施例一本实施例提供了基于 swrl规则的bim和gis本体融合方法;基于 swrl规则的bim和gis本体融合方法,包括:s101:对建筑信息模型bim进行解析,得到实体类别和实体属性;其中,实体属性,包括:实体关系属性和实体数据属性;s102:将解析得到的实体类别和实体属性进行转换,得到地理信息系统gis所对应的实体类别和实体属性;s103:将实体类别和实体属性进行存储;s104:基于所存储的实体类别和实体属性,确定地理信息系统gis中各个层次对应的数据。
30.进一步地,所述s101:对建筑信息模型bim进行解析,得到实体类别和实体属性;具体包括:利用python中的ifcopenshell接口,对建筑信息模型bim的ifc格式的建筑模型进行解析,得到实体类别和实体属性。
31.进一步地,所述实体类别,具体包括:墙wallstandardcase、门door、屋顶covering、窗户window、梁beam、建筑元素buildingelementproxy、家具furniture、柱column、幕墙curtainwall、桩pile、屋顶roof、地板slab、楼梯stair或栏杆扶手railing。
32.进一步地,所述实体属性,包括:唯一标识globalid、坐标objectplacement.relativeplacement.location、面积sweptarea、材料relatingmaterial、透明度transparency、表面颜色surfacecolour、漫射颜色diffusecolour或边缘轮廓outer。
33.进一步地,所述s102:将解析得到的实体类别和实体属性进行转换,得到地理信息系统gis所对应的实体类别和实体属性;具体包括:s1021:将解析得到的实体类别进行转换,得到地理信息系统gis所对应的实体类别;
s1022:将解析得到的关系属性进行转换,得到地理信息系统gis所对应的关系属性;s1023:将解析得到的数据属性进行转换,得到地理信息系统gis所对应的数据属性。
34.进一步地,所述s1021:将解析得到的实体类别进行转换,得到地理信息系统gis所对应的实体类别;具体包括:使用语义匹配和几何转换规则,将解析得到的ifc格式的实体类别,进行转换,得到地理信息系统gis所对应的citygml格式的实体类别。
35.其中,citygml共有五个细节层次表达,分别是第一细节层次lod0,如图3;第二细节层次lod1,如图4,第三细节层次lod2,如图5;第四细节层次lod3,如图6;第五细节层次lod4,如图7。
36.进一步地,所述s1021:将解析得到的实体类别进行转换,得到地理信息系统gis所对应的实体类别;具体包括:将解析得到的ifc格式的实体类别,进行第一细节层次lod0的转换,得到地理信息系统gis中第一细节层次lod0所对应的citygml格式的实体类别;将解析得到的ifc格式的实体类别,进行第二细节层次lod1的转换,得到地理信息系统gis中第二细节层次lod1所对应的citygml格式的实体类别;将解析得到的ifc格式的实体类别,进行第三细节层次lod2的转换,得到地理信息系统gis中第三细节层次lod2所对应的citygml格式的实体类别;将解析得到的ifc格式的实体类别,进行第四细节层次lod3的转换,得到地理信息系统gis中第四细节层次lod3所对应的citygml格式的实体类别;将解析得到的ifc格式的实体类别,进行第五细节层次lod4的转换,得到地理信息系统gis中第五细节层次lod4所对应的citygml格式的实体类别。
37.进一步地,所述进行第一细节层次lod0的转换,具体是:获取slab的长和宽,将ifc格式的实体类别地板slab的占地面积,转换成citygml格式的建筑物内地面floorsurface占地面积和建筑物外地面outerfloorsurface占地面积;在第一细节层次lod0,当前建筑物模型为二维。
38.进一步地,所述进行第二细节层次lod1的转换,具体是:在第一细节层次lod0的基础上,再获取屋顶roof实体及屋顶roof实体高度的数据信息;将ifc格式的实体类别空间space,转换成citygml格式的房间room;将ifc格式的实体类别屋顶roof,转换成citygml格式的屋面roofsurface;与第一细节层次lod0的占地面积相结合,将当前建筑模型拉伸为三维实体。
39.进一步地,所述进行第三细节层次lod2的转换,具体是:在第二细节层次lod1的基础上,再获取墙wall和屋顶实体的详细信息;将ifc格式的实体类别墙wall,转换成citygml格式的壁面wallsurface和内墙面interiorwallsurface;将ifc格式的实体类别屋顶覆盖物covering,转换成citygml格式的天花板面ceilingsurface和外天花板面outerceilingsurface;
通过获取屋顶的边缘点,勾勒出屋顶的形状。
40.进一步地,所述进行第四细节层次lod3的转换,具体是:在第三细节层次lod2的基础上,再获取门、窗口和梁的实体信息;将ifc格式的实体类别门door,转换成citygml格式的门door;将ifc格式的实体类别窗口window,转换成citygml格式的窗口window;将ifc格式的实体类别梁beam、柱column、楼梯stair和栏杆railing,转换成citygml格式的建筑安装buildinginstallation。
41.应理解地,第四细节层次lod3将建筑物刻画的更加细致,但始终在建筑物外表面。
42.进一步地,所述进行第五细节层次lod4的转换,具体是:在第四细节层次lod3的基础上,再获取室内的实体信息;将ifc格式的实体类别构造元素buildingelementproxy,转换成citygml格式的建筑安装intbuildinginstallation;将ifc格式的实体类别家具furniture,转换成citygml格式的建筑家具buildingfurniture;实现了从室外走进室内。
43.进一步地,所述s1022:将解析得到的关系属性进行转换,得到地理信息系统gis所对应的关系属性;具体包括:s10221:查看当前ifc格式的实体是否存在被包含于另外一个ifc格式的实体内的情况,如果存在,就遍历所有的ifc格式的实体的唯一标识globalid,找到包含实体的唯一标识globalid;如果找到包含实体的唯一标识globalid,就将当前实体与包含实体建立关联containedinstructure;s10222:查看是否存在与当前ifc格式的实体有关联的实体,如果存在,就遍历ifc所有实体的globalid,找到与覆盖物实体globalid相同的实体;如果找到,就将当前实体与被找到的实体建立关联hasassociations;s10223:查看当前ifc格式的实体是否包含覆盖物;如果包含,就遍历ifc格式的所有实体的globalid,找到与覆盖物实体globalid相同的实体;如果找到,就将当前实体与文本贴纸context建立关联hascoverings;如果没找到,就将当前实体建立一个对象context_1,与ifcwall建立关联hascoverings;s10224:查看当前ifc格式的实体是否包含开口组件;如果是,则遍历ifc所有实体的globalid,找到与窗户实体globalid相同的实体;如果找到,则将当前实体与开口组件opening建立关联hasopenings;s10225:查看当前ifc格式的实体是否存在文字贴纸;如果存在,则遍历ifc所有实体的globalid,找到与当前ifc格式的实体globalid相同的实体;如果有,则将当前ifc格式的实体与文本贴纸context建立关联hascontext;如果没有,则建立一个对象context_1,与ifcwall建立关联hascontext。
44.进一步地,从ifc到citygml的实体对应具体如表1,从ifc到citygml的关系属性对应具体如表2。
45.进一步地,所述s1023:将解析得到的数据属性进行转换,得到地理信息系统gis所对应的数据属性;具体包括:
s10231:非屋顶且非建筑元素的实体数据属性映射;s10232:屋顶实体数据属性映射;s10233:建筑元素实体数据属性映射。
46.表1应理解地,ifc关系属性映射到citygml的数据属性,分三类实体:实体ifccovering、实体ifcbuildingelementproxy,以及其它实体。
47.进一步地,所述s10231:非屋顶且非建筑元素的实体数据属性映射;具体包括:s102311:将待数据属性映射的ifc格式的实体通过ifcopenshell解析该实体获取其outer属性,即可得出八个顶点;s102312:获取待数据属性映射的ifc格式的实体的唯一标识;s102313:针对不同实体,建立对应的空间面;s102314:将面的顶点坐标进行存储;s102315:将获取到点的坐标,根据向量矩阵转化为citygml中的世界坐标;s102316:将ifc类型的表面风格渲染surfacestylerendering类中的属性与citygml相应的属性做对应。ifc关系属性映射到citygml数据属性,如表3。
48.表2
进一步,所述s102313:针对不同实体,建立对应的空间面;具体包括:s1023131:针对墙wall实体,将点a、b、b1、a1连接,组成interiorwallsurface,id为globalid_1;将d、c、c1、d1连接,组成wallsurface,id为globalid_2;此处点a代表长方体的下底面左前顶点,在该长方形从a点逆时针旋转,其余三个点依次分别为b、c、d;此处点a1代表长方体的上底面左前顶点,在该长方形从a1点逆时针旋转,其余三个点依次分别为b1、c1、d1。ifc标准csg模型实体顶点,如表4;citygml标准b-rep模型实体顶点,如表5。
49.表3表4
表5s1023132:针对地板slab实体,把点e、f、f1、e1连接,组成floorsurface,id为globalid_1;把点g、h、h1、g1连接,组成outerfloorsurface,id为globalid_2;(此处点e代表长方体的下底面左前顶点,在该长方形从e点逆时针旋转,其余三个点依次分别为f、g、h;此处点e1代表长方体的上底面左前顶点,在该长方形从e1点逆时针旋转,其余三个点依次分别为f1、g1、h1。)s1023133:针对梁beam实体,通过连接顶点,建立多个面片实体,并对面片实体依次设置唯一标识;s1023134:针对家具furniture实体,通过连接每一个边缘轮廓outer里的顶点建立一个面片对象,多个outer属性就有多个面片对象,依次对多个面片对象设置唯一标识;s1023135:针对空间space实体,连接边缘顶点,建立一个对象,并设置对象的唯一标识;s1023136:针对门实体和窗实体,分别将点m、n、n1、m1分别与点p、k、k1、p1合并,组成二维的window和door,id均为其对应globalid_1。
50.进一步地,所述s102315:将获取到点的坐标,根据向量矩阵转化为citygml中的世界坐标;具体包括:
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)其中,y是指矩阵在y轴的延伸方向,z是指矩阵在z轴的延伸方向,m是指向量矩阵。
51.进一步地,所述s10232:屋顶实体数据属性映射;具体包括:s102321:将ifc格式的屋顶covering通过outer属性解析出边缘顶点;s102322:获取屋顶covering的唯一标识globalid;s102323:将边缘顶点连接,组成:天花板外表面ceilingsurface,id为globalid_1;天花板内表面outerceilingsurface,id为globalid_2;s102324:将面的点坐标进行存储;s102325:将获取到的点的坐标根据向量矩阵转化为citygml中的世界坐标;s102326:ifc格式的表面风格渲染surfacestylerendering类中的属性与citygml相应的属性做对应。
52.进一步地,所述s10233:建筑元素实体数据属性映射;具体包括:s102331:把ifc格式的实体通过objectplacement属性找出其坐标点;s102332:获取ifc格式的实体的唯一标识globalid;s102333:通过实体类型objecttype属性,获取ifc格式的实体的高度、宽度和长度;s102334:通过坐标点和高度将ifc格式的实体拉伸,实体id设置为globalid;s102335:把原点坐标和拉伸后的坐标存储;s102336:将获取到的顶点的坐标,根据向量矩阵转化为citygml中的世界坐标。
53.进一步地,所述s103:将实体类别和实体属性进行存储;具体包括:使用python中的owlready2接口,将实体类别和实体属性以三元组的形式存储到owl格式的文件中。
54.进一步地,所述s103:将实体类别和实体属性进行存储;具体包括:s1031:将获取的citygml格式的实体类别和实体属性,导入citygml2.0标准的owl文件;s1032:在python中通过使用owlready2接口与citygml标准的owl文件建立连接,并在python中建立数据属性和对象属性,添加到该owl文件中;s1033:将citygml数据信息中的对象添加到对应owl类中,将每一个对象作为对应类的实例,并将其对应的数据属性和对象属性填入其中。
55.进一步地,所述s104:基于所存储的实体类别和实体属性,确定地理信息系统gis中各个层次对应的数据;具体包括:基于所存储的实体类别和实体属性,使用swrl规则,将lod0~lod4对应的数据信息推理出来,实现从ifc格式到citygml格式lod0~lod4的转换。
56.进一步地,所述s104:基于所存储的实体类别和实体属性,确定地理信息系统gis中各个层次对应的数据;具体包括:s1041:基于所存储的实体类别和实体属性,使用swrl规则,将lod0对应的数据信息推理出来,实现从ifc格式到citygml格式lod0的转换;s1042:基于所存储的实体类别和实体属性,使用swrl规则,将lod1对应的数据信息推理出来,实现从ifc格式到citygml格式lod1的转换;s1043:基于所存储的实体类别和实体属性,使用swrl规则,将lod2对应的数据信息推理出来,实现从ifc格式到citygml格式lod2的转换;s1044:基于所存储的实体类别和实体属性,使用swrl规则,将lod3对应的数据信息推理出来,实现从ifc格式到citygml格式lod3的转换;s1045:基于所存储的实体类别和实体属性,使用swrl规则,将lod4对应的数据信息推理出来,实现从ifc格式到citygml格式lod4的转换。
57.进一步地,所述s1041:基于所存储的实体类别和实体属性,使用swrl规则,将lod0对应的数据信息推理出来,实现从ifc格式到citygml格式lod0的转换;具体包括:s10411:通过swrl规则,找到所有的墙和地板实体;s10412:通过swrl规则,把墙和地板的x,y的值分别表示出来;s10413:通过swrl规则,比较各实体的x,y,找出x值最大的点和x值最小的点,以及y值最大的点和y值最小的点,共四个顶点。
58.应理解地,lod0:遍历每一个墙、地板的坐标,找范围最大的那一个,只看二维空间x,y的值。在一堆点中找出边缘的点,即这个点的坐标要么是x的最大或者最小,要么是y最大或者最小。
59.第一步:通过swrl规则找到所有的墙和地板实体。
60.建立集合lod0_e;遍历所有的实体ze:如果ze==“墙”或“地板”;将ze放入集合lod0_e中。
61.第二步:通过swrl规则把墙和地板的x,y的值分别表示出来。
62.建立集合实体集合e的点集合lod0_e_points;遍历集合lod0_e,i to n:(zei.x,zei.y)
……
(zen.x,zen.y);将(zei.x,zei.y)放入集合lod0_e_points中。
63.第三步:通过swrl规则比较各实体的x,y,找出x值最大的点和x值最小的点,以及y值最大的点和y值最小的点,共四个顶点。
64.遍历集合点集合lod0_e_points:比较ze1.x、ze2.x
……
zen.x的大小,找出x为最小值和x为最大值两个顶点;比较ze1.y、ze2.y
……
zen.y的大小, 找出y为最小值和y为最大值两个顶点。
65.进一步地,所述s1042:基于所存储的实体类别和实体属性,使用swrl规则,将lod1对应的数据信息推理出来,实现从ifc格式到citygml格式lod1的转换;具体包括:在lod0的基础上,通过swrl规则寻找屋顶实体,并把屋顶的z轴值作为该建筑的最
高点。
66.lod1:是在lod0的基础上,加上第三维空间,寻找z轴最大的坐标。
67.第一到第三步和lod0相同。
68.第四步:通过swrl规则寻找屋顶实体,并把屋顶的z轴值作为该建筑的最高点;建立集合lod1_e;遍历所有的实体fe:如果fe==“屋顶”;将fe放入集合lod1_e中;将(fei.x,fei.y,fei.z)放入集合lod1_e_points中;建筑物z轴最高==fei.z。
69.进一步地,所述s1043:基于所存储的实体类别和实体属性,使用swrl规则,将lod2对应的数据信息推理出来,实现从ifc格式到citygml格式lod2的转换;具体包括:是在lod1基础上,把lod2内实体及其属性遍历出来;除了与lod1相同的步骤,找出x,y,z方向的最大范围值,还要找出没有开口的实体的具体属性,以此来描述lod2建筑。
70.示例性地,以墙为例如下:第一步:通过swrl规则,查找所有墙实体。
71.建立集合lod2_e;遍历所有的实体se:如果se==“墙”;将se放入集合lod2_e中。
72.第二步:通过swrl规则,查找出所有墙实体对应的属性,如类别、名称、唯一标识、颜色、透明度、坐标等。
73.建立集合lod2_e_attri;遍历集合lod2_e中所有实体se:sei.type, sei.globalid, sei.rgb, sei.transparency, sei.x, sei.y放入集合lod2_e_attri中。
74.第三步:通过swrl规则把相应属性转化为citygml标准的属性。
75.建立变量,wall_type, wallsurface, wall_diffusecolour, wall_transparency, wall_id;遍历集合lod2_e_attri中所有实体se及属性:wall_type = sei.type,wallsurface = [(se1.x, se1.y, se1.z), (se2.x, se2.y, se2.z), (se3.x, se3.y, se3.z), (se4.x, se4.y, se4.z)];wall_diffusecolour = sei.rgb;wall_transparency = sei.transparency;wall_id = sei.globalid。
[0076]
第四步:将获取到的citygml实体及属性信息,通过python写入到gml文件中。最终完成从ifc标准到citygml标准格式的转换。
[0077]
进一步地,所述s1044:基于所存储的实体类别和实体属性,使用swrl规则,将lod3对应的数据信息推理出来,实现从ifc格式到citygml格式lod3的转换;具体包括:在lod2的基础上,加上开口的实体,如门、窗等。
[0078]
进一步地,所述s1045:基于所存储的实体类别和实体属性,使用swrl规则,将lod4对应的数据信息推理出来,实现从ifc格式到citygml格式lod4的转换;具体包括:在lod3的基础上,不只看该建筑物的外面的实体和属性,还需要从室外走进室内,将室内家具、里墙等室内结构遍历出来。
[0079]
实例步骤一:首先通过revit建立一个ifc格式的建筑,并导出ifc文件,其中,ifc的版本为:ifc ifc4 参照视图,模型如图1,平面图如图2。
[0080]
revit是由autodesk公司开发的一款国际通用的三维建模软件,是目前最主流的bim软件。它的主要功能是建筑外观及内部的设计或设备的规划,可以从多个角度观看建筑外部景观和内部景观。为达到bim技术与gis技术的融合,首先需要通过revit软件进行三维建模,将三维模型数据作为基础数据,步骤如下:(1)选择建筑样板;(2)建立标高;(3)建立轴网和墙体;(4)建立门、窗、幕墙、楼梯、屋顶、地形与场地等各个构件;(5)模型检查,导出其它格式并与其它软件进行对接;步骤二:利用ifcopenshell解析该ifc文件,提取出其中的实体信息,ifc标准模型实体信息提取结果如表6;表6步骤三:根据ifc4.0的官方本体文件,利用owlready2将解析出的实体信息放入到本体文件中,ifc标准模型数据信息在本体中的存储内容,如表7;表7
步骤四:根据定义的从lod0到lod4的swrl规则将信息自动转换为citygml格式的信息,并实现可视化。五个细节层次的结果分别如图3、图4、图5、图6、图7所示。
[0081]
实施例二本实施例提供了基于 swrl规则的bim和gis本体融合系统;基于 swrl规则的bim和gis本体融合系统,包括:解析模块,其被配置为:对建筑信息模型bim进行解析,得到实体类别和实体属性;其中,实体属性,包括:实体关系属性和实体数据属性;转换模块,其被配置为:将解析得到的实体类别和实体属性进行转换,得到地理信息系统gis所对应的实体类别和实体属性;存储模块,其被配置为:将实体类别和实体属性进行存储;输出模块,其被配置为:基于所存储的实体类别和实体属性,确定地理信息系统gis中各个层次对应的数据。
[0082]
实施例二中各个步骤对应的功能细节,与实施例一种各个步骤对应的步骤细节是一致的,此处不再重复赘述。
[0083]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献