CN113568989A - 一种ifc子模型提取方法 - Google Patents
一种ifc子模型提取方法 Download PDFInfo
- Publication number
- CN113568989A CN113568989A CN202110882729.6A CN202110882729A CN113568989A CN 113568989 A CN113568989 A CN 113568989A CN 202110882729 A CN202110882729 A CN 202110882729A CN 113568989 A CN113568989 A CN 113568989A
- Authority
- CN
- China
- Prior art keywords
- entity
- ifc
- extracting
- instance
- traversing
- 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.)
- Granted
Links
- 238000000605 extraction Methods 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 claims abstract description 80
- 230000008569 process Effects 0.000 claims abstract description 50
- 238000004519 manufacturing process Methods 0.000 claims abstract description 31
- 238000001914 filtration Methods 0.000 claims abstract description 28
- 230000008520 organization Effects 0.000 claims abstract description 21
- 230000002441 reversible effect Effects 0.000 claims description 34
- 239000000463 material Substances 0.000 claims description 12
- 238000004220 aggregation Methods 0.000 claims description 9
- 230000002776 aggregation Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000005304 joining Methods 0.000 claims description 4
- 239000000284 extract Substances 0.000 abstract description 3
- 229910000831 Steel Inorganic materials 0.000 description 100
- 239000010959 steel Substances 0.000 description 100
- 238000009434 installation Methods 0.000 description 49
- 238000010276 construction Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 7
- 238000009826 distribution Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 239000002023 wood Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/288—Entity relationship models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- Computational Linguistics (AREA)
- Architecture (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Evolutionary Computation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种IFC子模型提取方法,包括:1、读入过滤条件t,根据t从IFC完整模型Lc中提取核心实体E1;2、分析核心实体E1,若核心实体E1为空则结束提取;若te是产品实体,直接进入步骤3;若te是过程实体,则提取过程实体的IFC实例集合;若te是组织、控制、生产资料和分组实体,则提取组织、控制、生产资料和分组实体的IFC实例集合;若te是类型实体,则提取类型实体的IFC实例集合;若te是项目实体,则根据MVD从IFC完整模型Lc中提取实体级子模型,MVD={cj};若te是属性实体,则提取属性实体的IFC实例集合;3、计算并提取核心实体E1的相关IFC实例。本发明的提取方法过滤不必要的实例,提取强相关的实例,保证提取的IFC子模型是满足使用需求的最小IFC实例结合。
Description
技术领域
本发明涉及建筑信息化领域,具体涉及一种IFC子模型提取方法。
背景技术
IFC(Industry foundation Classes)标准是对建筑信息模型(BIM)的开放式、标准化数据存储格式,BIM建模软件创建的模型均可导出为IFC格式文件进行存储。IFC标准包含了各种类型的IFC实体ci,IFC标准以各种类型的IFC实体的实例存储各个建筑构件及其关系。每个IFC实体有很多属性,用于存储建筑的信息。一个IFC完整模型可以由一个IFC实体的实例列表表示Lc={ci,{eij}},eij是实体ci的实例。
如图1所示,IFC实体可分为可独立交换实体和非独立交换实体(又称资源实体)。可独立交换实体,包括全局唯一标识GlobalId,可被单独检索、提取和共享;非独立交换实体只有临时ID,不可被独立提取,不能在不同软件之间交换共享。如图1所示,可独立交换实体又分为基本实体和关系实体。基本实体又分为主体实体、属性集实体、类型实体和项目实体。主体实体又分为产品实体、过程实体、生产资料实体、组织实体、控制实体以及分组实体,构成IFC模型主要组成部分。其中产品实体用于描述建筑中物理构件,譬如梁、柱、墙等,包括几何属性和非几何属性。过程实体用于描述物理构件的设计、施工或安装的过程。生产资料实体用于描述物理构件或施工过程使用的人材机等生产资料,组织实体用于描述物理构件或施工过程的相关组织或人员,控制实体用于描述物理构件或施工过程的成本等外部约束,分组实体用于描述描述物理构件或施工过程的分区和组合等信息。类型实体用于定义同类型主体实体实例的共性特征,是对产品、过程和生产资料实体的信息的必要补充描述。属性集实体用于扩展描述主体实体的相关属性。项目实体是一个特殊的实体,每个IFC模型只有一个项目实体,定义模型的项目名称、地址等基础信息。
关系实体用于描述两个或多个基本实体之间的关系,基本实体之间一般不通过直接的相互引用建立关系。关系实体分为关联关系、聚合关系、定义关系、分配关系和外部关联关系五种。如图2所示,IFC的关系实体均为1:n型关系,即描述实体实例A与实体实例集合Bs之间的关系。为方便描述,关系实体中定义A的属性为主要实体属性pa,定义Bs的属性为次要实体属性pb。如图2所示,只有基本实体有反向属性,基本实体的反向属性的值是关系实体,用于查询与基本实体实例相关的关系实体实例,从而进一步查询与基本实体实例相关的其他基本实体实例。
IFC子模型指某个IFC模型的一个子集,一般用于某个建设过程,或某个建设过程创建的BIM模型。IFC子模型视图(Model View Definition,简称,MVD)是描述一个IFC子模型的包含的IFC实体的方法。MVD包括一个IFC实体集合V={ci}和一个IFC实例过滤条件t。实例过滤条件不为空的MVD是实例级MVD,为空的MVD是实体级MVD。实体级MVD不包括实例过滤条件,因此提取的IFC子模型包括MVD中各个IFC实体的所有IFC实例;比如MVD包括梁实例(IfcBeam),则IFC子模型包括IFC模型的所有梁实例。而实例级MVD包括实例过滤条件,对应的IFC子模型包括的实例不但要求其实体在MVD中,且要求其满足实例过滤条件。过滤条件t用三元组(IFC实体te,属性tp,取值范围tv)表示,即针对实体te定义的实例过滤条件,要求实例的tp属性等于或包含tv才可提取到IFC子模型中。譬如,针对IfcBeam实体定义过滤条件t=(IfcBeam,Name,“钢”),要求IfcBeam实例的名称属性Name包括“钢”,从而只提取钢梁,过滤混凝土、木材等其他材质的梁。过滤条件t的实体te一般为主体实体、类型实体、属性集实体等基本实体,不会是关系实体。
关于实例级IFC子模型提取需求十分大,但由于复杂性较高,目前尚未见有相关文献发表;譬如提取某种材料的建筑构件,某个系统的所有设备,某天施工的所有施工任务等应用场景。实例级IFC子模型提取方法的难点在于,IFC模型中各个实例通过关系实体实例相互关联,因此提取时若忽略所有关联的实例,将导致信息的不完整;反之,若提取所有关联的实例,则会包含大量不必要的实例。譬如,提取满足约束条件(IfcTask,Name,“土建施工”)的IFC模型,若只提取名称为“土建施工”的一个IfcTask施工任务实例,而忽略该施工任务的所有子任务,则提取的IFC子模型不能完整描述该任务的所有信息;若将“土建施工”任务关联的子任务、前置任务和后置任务等均提出,则包括了多余的任务节点;甚至可能提取所有IfcTask实例,达不到过滤的目的。
发明内容
为了解决上述技术问题,本发明提供了一种IFC子模型提取方法,过滤不必要的实例,提取强相关的实例,以保证提取的IFC子模型是满足使用需求的最小IFC实例结合。
本发明的技术目的是通过以下技术方案实现的:
一种IFC子模型提取方法,该方法包括以下步骤:
步骤1、读入过滤条件t,t=(te,tp,tv),根据过滤条件t从IFC完整模型Lc中提取核心实体E1,Lc={ci,{eij}},ci是实体名称,0={eij}是实体类型为ci的IFC实例的集合;
步骤2、分析核心实体E1,若核心实体E1为空则结束提取;若te是产品实体,直接进入步骤3;若te是过程实体,则计算并提取核心实体E1中的过程实体的IFC实例集合;若te是组织、控制、生产资料和分组实体,则计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例集合;若te是类型实体,则计算并提取核心实体E1中的类型实体的IFC实例集合;若te是项目实体,则根据MVD从IFC完整模型Lc中提取实体级子模型,MVD={cj};若te是属性实体,则计算并提取核心实体E1中的属性实体的IFC实例集合;
步骤3、计算并提取核心实体E1的相关IFC实例,结束提取。
进一步地,提取核心实体E1时,包括以下步骤:
1.1、读入过滤条件t,t=(te,tp,tv);
1.2、条件从Lc中提取ci=te的元素(te,{eij});
1.3遍历{eij}中各个实例eij,如果eij的tp属性的值等于tv或包含tv,则将eij加入核心实体E1,E1={eij};否则继续遍历{eij};
进一步地,提取过程实体的IFC实例时包括以下步骤:
2.1、根据过滤条件t提取过程实体的IFC实例的集合P1,P1=E1,P1={pi};
2.2、递归遍历P1中各个实例pi,提取pi反向属性IsNestedBy的值Rv={rnj},进入步骤2.3;遍历结束进入步骤2.4;
2.3、遍历Rv中所有关系实例rnj,提取rnj的RelatedObjects属性的值{pj}加入P2;P2中实例为P1实例的子过程;设置P1=P1∪P2;遍历结束返回步骤2.2;
2.4、计算E1=E1∪P1,并将E1和步骤2.2提取的所有关系实例Rv加入到子模型M1。
进一步地,计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例时,包括以下步骤:
3.1、设置集合Eo=E1,Eo={ei};分析te实体类型,若为组织实体,进入步骤3.2;若为控制实体,进入步骤3.3;若为分组实体,进入步骤3.4;若为生产资料实体,进入步骤3.5;
3.2、遍历Eo中各元素ei,提取ei的反向属性IsActingUpon的值{rij}加入Rv;遍历完后进入步骤3.6;
3.3、遍历Eo中各元素ei,提取ei的反向属性Controls的值{rij}加入Rv;遍历完后进入步骤3.6;
3.4、遍历Eo中各元素ei,提取ei的反向属性IsGroupedBy的值{rij}加入Rv;遍历完后进入步骤3.6;
3.5、遍历Eo中各元素ei,提取ei的反向属性ResourceOf的值{rij}加入Rv;遍历完后进入步骤3.6;
3.6、遍历Rv中各关系实例rij,提取rij的次要实体属性RelatedObjects值{ei}加入Eo;遍历完成后进入步骤3.7;
3.7、根据实体类型将Eo中实体分为产品实例集合Eoe、过程实例集合Eop和其他实体实例Eo;Eo=Eoe+Eop;
3.8、递归计算并提取Eop中过程实例pi的所有子过程P2,Eop=Eop∪P2;
3.9、计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例集合E1=Eop∪Eoe∪Eo,将E1和上述步骤3.2-3.5中提取的所有关系实例Rv加入到M1中。
进一步地,计算并提取核心实体E1中的类型实体的IFC实例时,包括以下步骤:
4.1、设置类型实体实例集合T1=E1,T1={ti},E1设为空集;
4.2、遍历T1中各实例ti,提取ti的反向属性Types的值Rv={rnj},rnj是IfcRelDefinesByType实体的实例,进入步骤4.3;遍历完T1后,进入步骤4.4;
4.3、遍历Rv的各个元素rnj,提取rnj的RelatedObjects属性的值T2,全部加入实例集合E1,即E1=E1∪E2;Rv遍历完成后,返回步骤4.2;
4.4、根据实体类型提取E1中过程实例集合E1p和生产资料实体实例集合Erp;
4.5、递归计算并提取E1p中过程实例pi的所有子过程P2,设置E1p=E1p∪P2;进入步骤4.7;
4.6、计算生产资料实体实例集合Erp中实例相关的核心实例结合P2,设置Erp=Erp∪P2;进入步骤4.7;
4.7、计算得到的核心实体集合E1=E1∪T1∪Erp∪Eip;将E1和过程中提取的关系实例Rv添加到子模型M1。
进一步地,计算并提取核心实体E1中的属性实体的IFC实例时,包括以下步骤:
5.1、设置属性实体实例集合S1=E1,S1={si},E1设为空集;
5.2、遍历S1中各实例si,提取si的反向属性DefinesOccurrence的值{rnj}加入Rv,rnj是IfcRelDefinesByProperties实体的实例;遍历完进入步骤5.3;
5.3、遍历Rv的各个元素rnj,提取rnj的RelatedObjects属性的值P1,加入核心实体集合E1,即E1=E1∪P1;遍历完成后,进入步骤5.4;
5.4、遍历S1中各实例si,提取si的反向属性的DefinesType的值T1={ti},ti是类型实体的实例;遍历完成后,进入步骤5.5;
5.5、提取T1中各个类型实例ti相关的核心实体T2,E1=E1∪T1∪T2;
5.6、计算得到核心实体集合E1=E1∪S1∪P1;将E1和过程中提取的关系实例Rv添加到子模型M1。
进一步地,步骤3包括以下步骤:
6.1、遍历E1中各个ei,提取ei的所有反向属性的值{rij}加入Rv,把Rv添加到子模型M1,进入步骤6.2;E1遍历完后,进入步骤6.7;
6.2、遍历Rv中各个元素rij;若rij实体是关联关系实体或rij的实体类型不在MVD中或M1中已包括rij,则继续遍历;否则,把rij添加到子模型M1;若ei是rij的主要实体,进入步骤6.3;若ei是rij的次要实体,且不是聚合关系,则进入步骤6.4;若ei是rij的次要实体,且rij是聚合关系实体,则继续遍历;Rv遍历完后进入步骤6.6;
6.3、获得rij的次要实体RelatedObjects属性值P2={pj};进入步骤6.5;
6.4、获得rij的主要实体RelatingObject属性值P2={p1};进入步骤6.5;
6.5、遍历P2中各个元素pj,若pj的实体类型不属于MVD,则从P2删除;P2遍历完后返回步骤6.2;
6.6、设置E1=E1∪P2;设置M1=M1∪E1;返回步骤6.1;
6.7、提取M1中所有元素的资源实体类型的属性,提取结束。
相比现有技术,本发明的有益效果在于,可以综合考虑MVD和实例过滤条件,提取满足使用需求的实例级别子模型,过滤大量不必要实例信息,提取强相关的实例信息;具体体现在:
(1)根据约束条件提取核心实例时,不考虑MVD中实体限制,只考虑实例属性值的约束,保障提取的子模型满足用户需求;
(2)以产品实体和过程实体为核心实例的主要实体,避免核心实例过多,降低过滤效果;
(3)子模型提取时,会将与核心实例相关的定义数据、外部关联数据和分配使用数据,以及组成核心实例的子产品或子过程同步提取,保障子模型的完整性;
(4)子模型提取时,不会提取与核心实例关联的实例,或其组成的整体等信息,避免无关信息或低相关信息提取到子模型,影响数据过滤效果和数据安全性。
附图说明
图1是现有技术中实体分类示意图。
图2是现有技术中实体实例与实体实例集合之间的关系示意图。
图3是本发明中的IFC子模型提取方法流程示意图。
图4是本发明中过程实体的IFC实例提取流程示意图。
图5是本发明中组织、控制、生产资料和分组实体的IFC实例提取流程示意图。
图6是本发明中类型实体的IFC实例提取流程示意图。
图7是本发明中属性实体的IFC实例提取流程示意图。
图8是本发明中产品实体的IFC实例提取流程示意图。
图9是本发明中IFC子模型提取结果示意图。
具体实施方式
下面结合具体实施方式对本发明的技术方案进行进一步描述:
一种IFC子模型提取方法,如图3所示,该方法包括以下步骤:
步骤1、读入过滤条件t,根据过滤条件t从IFC完整模型Lc中提取核心实体E1,具体包括:
1.1、读入过滤条件t,t=(te,tp,tv);
1.2、条件从Lc中提取ci=te的元素(te,{eij}),Lc={ci,{eij}},ci是实体名称,0={eij}是实体类型为ci的IFC实例的集合;
1.3遍历遍历{eij}中各个实例eij,如果eij的tp属性的值等于tv或包含tv,则将eij加入核心实体E1,E1={eij};否则继续遍历{eij}。
步骤2、分析核心实体E1,若核心实体E1为空则结束提取;若te是产品实体,直接进入步骤3;若te是过程实体,则计算并提取核心实体E1中的过程实体的IFC实例集合;若te是组织、控制、生产资料和分组实体,则计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例集合;若te是类型实体,则计算并提取核心实体E1中的类型实体的IFC实例集合;若te是项目实体,鉴于一个IFC模型只有一个项目实体,若过滤条件提取获得唯一的项目实例,相当于没有过滤约束条件,即为实体级子模型提取,因此只需要根据MVD从IFC完整模型Lc中提取实体类型在MVD中的实例,MVD={cj};若te是属性实体,则计算并提取核心实体E1中的属性实体的IFC实例集合;
具体地,如图4所示,提取过程实体的IFC实例时包括以下步骤:
2.1、根据过滤条件t提取过程实体的IFC实例的集合P1,P1=E1,P1={pi};
2.2、递归遍历P1中各个实例pi,提取pi反向属性IsNestedBy的值Rv={rnj},进入步骤2.3;遍历结束进入步骤2.4;
2.3、遍历Rv中所有关系实例rnj,提取rnj的RelatedObjects属性的值{pj}加入P2;P2中实例即为P1实例的子过程;设置P1=P1∪P2;遍历结束返回步骤2.2;
2.4、计算E1=E1∪P1,并将E1和步骤2.2提取的所有关系实例Rv加入到子模型M1。
具体地,如图5所示,计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例时,包括以下步骤:
3.1、设置集合Eo=E1,Eo={ei};分析te实体类型,若为组织实体,进入步骤3.2;若为控制实体,进入步骤3.3;若为分组实体,进入步骤3.4;若为生产资料实体,进入步骤3.5;
3.2、遍历Eo中各元素ei,提取ei的反向属性IsActingUpon的值{rij}加入Rv;遍历完后进入步骤3.6;
3.3、遍历Eo中各元素ei,提取ei的反向属性Controls的值{rij}加入Rv;遍历完后进入步骤3.6;
3.4、遍历Eo中各元素ei,提取ei的反向属性IsGroupedBy的值{rij}加入Rv;遍历完后进入步骤3.6;
3.5、遍历Eo中各元素ei,提取ei的反向属性ResourceOf的值{rij}加入Rv;遍历完后进入步骤3.6;
3.6、遍历Rv中各关系实例rij,提取rij的次要实体属性RelatedObjects值{ei}加入Eo;遍历完成后进入步骤3.7;
3.7、根据实体类型将Eo中实体分为产品实例集合Eoe、过程实例集合Eop和其他实体实例Eo;Eo=Eoe+Eop;
3.8、递归计算并提取Eop中过程实例pi的所有子过程P2,Eop=Eop∪P2;
3.9、计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例集合E1=Eop∪Eoe∪Eo,将E1和上述步骤3.2-3.5中提取的所有关系实例Rv加入到M1中。
具体地,如图6所示,计算并提取核心实体E1中的类型实体的IFC实例时,包括以下步骤:
4.1、设置类型实体实例集合T1=E1,T1={ti},E1设为空集;
4.2、遍历T1中各实例ti,提取ti的反向属性Types的值Rv={rnj},rnj是IfcRelDefinesByType实体的实例,进入步骤4.3;遍历完T1后,进入步骤4.4;
4.3、遍历Rv的各个元素rnj,提取rnj的RelatedObjects属性的值T2,全部加入实例集合E1,即E1=E1∪E2;Rv遍历完成后,返回步骤4.2;
4.4、根据实体类型提取E1中过程实例集合E1p和生产资料实体实例集合Erp;
4.5、递归计算并提取E1p中过程实例pi的所有子过程P2,设置E1p=E1p∪P2;进入步骤4.7;
4.6、计算生产资料实体实例集合Erp中实例相关的核心实例结合P2,设置Erp=Erp∪P2;进入步骤4.7;
4.7、计算得到的核心实体集合E1=E1∪T1∪Erp∪Eip;将E1和过程中提取的关系实例Rv添加到子模型M1。
具体地,如图7所示,计算并提取核心实体E1中的属性实体的IFC实例时,包括以下步骤:
5.1、设置属性实体实例集合S1=E1,S1={si},E1设为空集;
5.2、遍历S1中各实例si,提取si的反向属性DefinesOccurrence的值{rnj}加入Rv,rnj是IfcRelDefinesByProperties实体的实例;遍历完进入步骤5.3;
5.3、遍历Rv的各个元素rnj,提取rnj的RelatedObjects属性的值P1,加入核心实体集合E1,即E1=E1∪P1;遍历完成后,进入步骤5.4;
5.4、遍历S1中各实例si,提取si的反向属性的DefinesType的值T1={ti},ti是类型实体的实例;遍历完成后,进入步骤5.5;
5.5、提取T1中各个类型实例ti相关的核心实体T2,E1=E1∪T1∪T2;
5.6、计算得到核心实体集合E1=E1∪S1∪P1;将过程中提取的关系实例Rv添加到子模型M1。
步骤3、计算并提取核心实体E1的相关IFC实例,结束提取,如图8所示,包括以下步骤:
6.1、遍历E1中各个ei,提取ei的所有反向属性的值{rij}加入Rv,把Rv添加到子模型M1,进入步骤6.2;E1遍历完后,进入步骤6.7;
6.2、遍历Rv中各个元素rij;若rij实体是关联关系实体或rij的实体类型不在MVD中或M1中已包括rij,则继续遍历;否则,把rij添加到子模型M1;若ei是rij的主要实体,进入步骤6.3;若ei是rij的次要实体,且不是聚合关系,则进入步骤6.4;若ei是rij的次要实体,且rij是聚合关系实体,则继续遍历;Rv遍历完后进入步骤6.6;
6.3、获得rij的次要实体RelatedObjects属性值P2={pj};进入步骤6.5;
6.4、获得rij的主要实体RelatingObject属性值P2={p1};进入步骤6.5;
6.5、遍历P2中各个元素pj,若pj的实体类型不属于MVD,则从P2删除;P2遍历完后返回步骤6.2;
6.6、设置E1=E1∪P2;设置M1=M1∪E1;返回步骤6.1;
6.7、提取M1中所有元素的资源实体类型的属性,提取结束。
如图9所示,图9是某值机岛工程的IFC子模型提取,包括主体钢结构构件、风管、配电柜、消火栓等各类产品实例,下面以图9为例对本发明的方法进行进一步说明:
步骤1、读入过滤条件t,根据过滤条件t从IFC完整模型Lc中提取核心实体E1,具体包括:
表1各类型过滤条件的子模型提取
1.1、读入过滤条件t,t=(te,tp,tv);如表1所示,假设MVD包括{IfcColumn,IfcBeam,IfcWall,IfcSlab,IfcTask,IfcControl,IfcDuctSegment,IfcCableCarrierSegment,IfcRelNests,IfcRelAssignsToProcess,IfcRelSequence);t1=(IfcTask,Name,“主钢结构安装”);表示提取”主钢结构安装”施工任务相关的数据;t2=(IfcBuildingElementType,Name,“钢”),表示提取构件类型名称为”钢”的信息;t3=(IfcPropertySet,IfcPropertySet.LoadBearing,“F”),表示柱的承重属性为“否”相关的信息;t4=(IfcActor,Name,“机电总包”),表示提取“机电总包”相关的信息;
1.2、根据过滤条件从IFC完整模型Lc={ci,{eij}}中提取ci=te的元素(te,{eij});如表1所示,对于t1,Lc=(IfcTask,{eij});t2,Lc=(IfcBuildingElementType,{eij});t3,Lc=(IfcPropertySet,{eij});t4,Lc=(IfcActor,{eij});
步骤1.3、遍历{eij}中各个实例eij;如果eij的tp属性的值等于tv或包含tv,则将eij加入核心实体E1,E1={eij};否则继续遍历{eij};遍历结束后,进入步骤2;如表1所示,对于t1,E1={e1=IfcTask(主钢结构安装)};对于t2,E1={e1=IfcBuildingElementType(钢梁),e2=IfcBuildingElementType(钢柱)};对于t3,E1={e1=IfcPropertySet(非承重钢柱)};对于t4,E1={e1=IfcActor(机电总包)}。
步骤2、分析核心实体E1,若核心实体E1为空则结束提取;若te是产品实体,直接进入步骤3;
若te是项目实体,则根据MVD从IFC完整模型Lc中提取实体级子模型,MVD={cj};
若te是过程实体,进入如下步骤2.1至步骤2.4:
2.1、步骤2.1:设置P1=E1,P1={pi};
步骤2.2:递归遍历P1中各个实例pi,提取pi反向属性IsNestedBy的值Rv={rnj},进入步骤2.3;遍历结束进入步骤2.4;如表1所示,p1=IfcTask(主钢结构安装),其反向属性IsNestedBy的值Rv={IfcRelNests(主钢结构安装)};
步骤2.3:遍历将Rv中所有关系实例rnj,提取rnj的RelatedObjects属性的值{pj}加入P2;P2中实例即为P1实例的子过程;设置P1=P1∪P2;遍历结束返回步骤2.2;如表1所示,IfcRelNests(主钢结构安装)的RelatedObjects属性的值P2={IfcTask(钢柱安装),IfcTask(钢梁安装),Ifc(罗盘箱钢结构安装)};
步骤2.4:计算E1=E1∪P1,并将E1和步骤2.2提取的所有关系实例Rv加入到子模型M1;如表1所示,E1=(IfcTask(主钢结构安装),IfcTask(钢柱安装),IfcTask(钢梁安装),Ifc(罗盘箱钢结构安装));Rv=(IfcRelNests(主钢结构安装));核心实体共四个。
若te是组织、控制、生产资料和分组实体,进入步骤3.1至步骤3.9:
步骤3.1:设置集合Eo=E1,Eo={ei};分析te实体类型,若为组织实体,进入步骤3.2;若为控制实体,进入步骤3.3;若为分组实体,进入步骤3.4;若为生产资料实体,进入步骤3.5;
如表1所示,te为组织实体IfcActor,进入步骤3.2;Eo=(IfcActor(机电总包))
步骤3.2:遍历Eo中各元素ei,提取ei的反向属性IsActingUpon的值{rij}加入Rv;遍历完后进入步骤3.6;
如表1所示,提取IfcActor(机电总包)的反向属性IsActingUpon的值Rv={IfcRelAssignsToActor(机电总包)},加入Rv;
步骤3.3:遍历Eo中各元素ei,提取ei的反向属性Controls的值{rij}加入Rv;遍历完后进入步骤3.6;
步骤3.4:遍历Eo中各元素ei,提取ei的反向属性IsGroupedBy的值{rij}加入Rv;遍历完后进入步骤3.6;
步骤3.5:遍历Eo中各元素ei,提取ei的反向属性ResourceOf的值{rij}加入Rv;遍历完后进入步骤3.6;
步骤3.6:遍历Rv中各关系实例rij,提取rij的次要实体属性RelatedObjects值{ei}加入Eo;遍历完成后进入步骤3.7;
如表1所示,提取IfcRelAssignsToActor(机电总包)的次要实体属性RelatedObjects值Eoo={IfcTask(机电安装),IfcTask(风管安装),IfcTask(配电柜安装),IfcTask(电缆桥架安装),IfcTask(线槽安装),IfcTask(消火栓安装)};
步骤3.7:根据实体类型将Eo中实体分为产品实例集合Eoe、过程实例集合Eop和其他实体实例Eo;Eo=Eoe+Eop;
如表1所示,Eop={IfcTask(机电安装),IfcTask(风管安装),IfcTask(配电柜安装),IfcTask(电缆桥架安装),IfcTask(线槽安装),IfcTask(消火栓安装)};
步骤3.8:如步骤2所示,递归计算并提取Eop中过程实例pi的所有子过程P2,Eop=Eop∪P2;
如表1所示,由于Eop下属子过程都有“机电总包”施工,都与IfcRelAssignsToActor(机电总包)关联,因此Eop不变;
步骤3.9:最终计算满足条件的核心实体实例集合E1=Eop∪Eoe∪Eo;将E1和上述步骤提取的所有关系实例Rv加入到M1;
如表1所示,E1={IfcActor(机电总包),IfcTask(机电安装),IfcTask(风管安装),IfcTask(配电柜安装),IfcTask(电缆桥架安装),IfcTask(线槽安装),IfcTask(消火栓安装)};Rv包括(IfcRelAssignsToActor(机电总包),IfcRelNests(机电安装))等。
若te是类型实体,则进入步骤4.1至步骤4.7:
步骤4.1:设置类型实体实例集合T1=E1,T1={ti},E1设为空集;如表1所示,T1={e1=IfcBuildingElementType(钢梁),e2=IfcBuildingElementType(钢柱),e3=IfcBuildingElementType(罗盘箱钢柱)};
步骤4.2:遍历T1中各实例ti,提取ti的反向属性Types的值Rv={rnj},rnj是IfcRelDefinesByType实体的实例,进入步骤4.3;遍历完T1后,进入步骤4.4;如表1所示,IfcBuildingElementType(钢梁)的反向属性Types的值Rv={IfcRelDefinesByType(钢梁)};IfcBuildingElementType(钢柱)的反向属性Types的值Rv={IfcRelDefinesByType(钢柱)};
IfcBuildingElementType(罗盘箱钢柱)的反向属性Types的值Rv={IfcRelDefinesByType(罗盘箱钢柱)};
步骤4.3:遍历Rv的各个元素rnj,提取rnj的RelatedObjects属性的值T2,全部加入实例集合E1,即E1=E1∪E2;Rv遍历完成后,返回步骤4.2;如表1所示,IfcRelDefinesByType(钢梁)的RelatedObjects属性的值T2包括{IfcBeam(钢梁1),IfcBeam(钢梁2),IfcBeam(钢梁3),IfcBeam(钢梁4)}等;IfcRelDefinesByType(钢柱)的RelatedObjects属性的值T2包括{IfcColumn(钢柱1),IfcColumn(钢柱2),IfcColumn(钢柱3),IfcColumn(钢柱4)}等;IfcRelDefinesByType(罗盘箱钢柱)的RelatedObjects属性的值T2包括{IfcColumn(钢柱5),IfcColumn(钢柱6),IfcColumn(钢柱7),IfcColumn(钢柱8)}等;
E1={IfcBeam(钢梁1),IfcBeam(钢梁2),IfcBeam(钢梁3),IfcBeam(钢梁4),IfcColumn(钢柱1),IfcColumn(钢柱2),IfcColumn(钢柱3),IfcColumn(钢柱4),IfcBuildingElementType(钢梁),IfcColumn(钢柱5),IfcColumn(钢柱6),IfcColumn(钢柱7),IfcColumn(钢柱8),IfcBuildingElementType(钢柱)};Rv={IfcRelDefinesByType(钢梁),IfcRelDefinesByType(钢柱),IfcRelDefinesByType(罗盘箱钢柱)};
步骤4.4:根据实体类型提取E1中过程实例集合E1p和生产资料实体实例集合Erp;如表1所示,E1p为空;Erp为空;
步骤4.5:根据步骤2,递归计算并提取E1p中过程实例pi的所有子过程P2,设置E1=E1∪P2;进入步骤4.7;
步骤4.6:根据步骤3,计算生产资料实体实例集合Erp中实例相关的核心实例结合P2,设置E1=E1∪P2;进入步骤4.7;
步骤4.7:计算得到的核心实体集合E1=E1∪T1∪Erp∪Eip;进入步骤3;如表1的t2所示,E1为空。
若te是属性实体,则进入步骤5.1至步骤5.6:
步骤5.1:设置属性实体实例集合S1=E1,S1={si},E1设为空集;如表1所示,根据t4条件提取的S1={IfcPropertySet(非承重钢柱)};
步骤5.2:遍历S1中各实例si,提取si的反向属性DefinesOccurrence的值{rnj}加入Rv,rnj是IfcRelDefinesByProperties实体的实例;遍历完进入步骤5.3;如表1的t4所示,IfcPropertySet(非承重钢柱)的反向属性DefinesOccurrence的值Rv={IfcRelDefinesByProperties(罗盘箱钢柱)};
步骤5.3:遍历Rv的各个元素rnj,提取rnj的RelatedObjects属性的值P1,加入核心实体集合E1,即E1=E1∪P1;遍历完成后,进入步骤5.4;如表1的t4所示,IfcRelDefinesByProperties(罗盘箱钢柱)的RelatedObjects属性的值P1={IfcColumn(钢柱5),IfcColumn(钢柱6),IfcColumn(钢柱7),IfcColumn(钢柱8)};
步骤5.4:遍历S1中各实例si,提取si的反向属性的DefinesType的值T1={ti},ti是类型实体的实例;遍历完成后,进入步骤5.5;如表1的t4所示,IfcPropertySet(非承重钢柱)的反向属性DefinesType的值T1为空;
步骤5.5:如步骤3所示,提取T1中各个类型实例ti相关的核心实体T2,E1=E1∪T1∪T2;
步骤5.6:计算得到核心实体集合E1=E1∪S1∪P1;将过程中提取的关系实例Rv添加到子模型M1;
如表1的t4所示,E1=E1∪S1∪P1={IfcColumn(钢柱5),IfcColumn(钢柱6),IfcColumn(钢柱7),IfcColumn(钢柱8),IfcPropertySet(非承重钢柱)}。
步骤3、结合5种关系实体语义特征,计算并提取核心实体E1的相关的且实体类型在MVD中的IFC实例,作为核心实例的相关实例,加入到子模型M1中,结束提取,具体包括以下步骤:
步骤6.1:遍历E1中各个ei,提取ei的所有反向属性的值Rv={rij};剔除M1中已提取的实例,即Rv=Rv-M1;E1遍历完后,进入步骤6.7;
以步骤2的结果E1=(IfcTask(主钢结构安装),IfcTask(钢柱安装),IfcTask(钢梁安装),Ifc(罗盘箱钢结构安装));Rv=(IfcRelNests(主钢结构安装))为例,假如ei=IfcTask(主钢结构安装),Rv={IfcRelNests(主钢结构安装),IfcRelNests(结构安装),IfcRelAssignsToProcess(主钢结构安装),IfcRelSequence(主钢结构安装),IfcRelAssociatesDocument(主钢结构安装)};Rv=Rv-M1={IfcRelNests(结构安装),IfcRelAssignsToProcess(主钢结构安装),IfcRelSequence(主钢结构安装),IfcRelAssociatesDocument(主钢结构安装)}
步骤6.2:遍历Rv中各个元素rij;若rij实体是关联关系实体或rij的实体类型不在MVD中或M1中已包括rij,则继续遍历;否则,把rij添加到子模型M1;若ei是rij的主要实体,进入步骤6.3;若ei是rij的次要实体,且不是聚合关系,则进入步骤6.4;若ei是rij的次要实体,且rij是聚合关系实体,则继续遍历;Rv遍历完后进入步骤6.6;
以ei=IfcTask(主钢结构安装)为例,rij=IfcRelNests(结构安装),ei是rij的次要实体,且是聚合关系,不处理,继续循环;rij=IfcRelAssignsToProcess(主钢结构安装),ei是rij的主要实体,进入步骤6.3;rij=IfcRelSequence(主钢结构安装),是关联关系实体,继续遍历;rij=IfcRelAssociatesDocument(主钢结构安装),IfcRelAssociatesDocument不在MVD中,继续遍历;
步骤6.3:获得rij的次要实体RelatedObjects属性值P2={pj};进入步骤6.5;
以ei=IfcTask(主钢结构安装)为例,rij=IfcRelAssignsToProcess(主钢结构安装),把rij添加到M1;获得rij的次要实体RelatedObjects属性值P2={IfcBeam(钢梁1),IfcBeam(钢梁2),IfcBeam(钢梁3),IfcBeam(钢梁4),IfcColumn(钢柱1),IfcColumn(钢柱2),IfcColumn(钢柱3),IfcColumn(钢柱4),IfcBuildingElementType(钢梁),IfcColumn(钢柱5),IfcColumn(钢柱6),IfcColumn(钢柱7),IfcColumn(钢柱8)};
步骤6.4:获得rij的主要实体RelatingObject属性值P2={p1};进入步骤6.5;
以ei=IfcTask(主钢结构安装)为例,不存在该情况;
步骤6.5:遍历P2中各个元素pj,若pj的实体类型不属于MVD,则从P2删除;P2遍历完后返回步骤6.2;
以ei=IfcTask(主钢结构安装)为例,各个元素的类型均属于MVD,不处理;
步骤6.6:设置E1=E1∪P2;设置M1=M1∪E1;返回步骤6.1;以ei=IfcTask(主钢结构安装)为例,E1=E1∪P2=(IfcTask(主钢结构安装),IfcTask(钢柱安装),IfcTask(钢梁安装),Ifc(罗盘箱钢结构安装),IfcBeam(钢梁1),IfcBeam(钢梁2),IfcBeam(钢梁3),IfcBeam(钢梁4),IfcColumn(钢柱1),IfcColumn(钢柱2),IfcColumn(钢柱3),IfcColumn(钢柱4),IfcBuildingElementType(钢梁),IfcColumn(钢柱5),IfcColumn(钢柱6),IfcColumn(钢柱7),IfcColumn(钢柱8));继续遍历E1,完成后进入步骤6.7;
步骤6.7:提取M1中所有元素的资源实体类型的属性;由于可独立交换实体的各个资源实体类型的属性的值完整序列化存储在一个数据块中,因此直接根据属性值的Id提取即可;提取结束。
以ei=IfcTask(主钢结构安装)为例,对于IfcTask(主钢结构安装)实例,需要提取其GlobalId、OwnerHistory、Name和Description等属性信息,这些属性的值是资源实体,直接序列化存储,可以根据存储地址一次性提取。
本实施例只是对本发明的进一步解释,并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性的修改,但是只要在本发明的权利要求范围内都受到专利法的保护。
Claims (7)
1.一种IFC子模型提取方法,其特征在于,该方法包括以下步骤:
步骤1、读入过滤条件t,t=(te,tp,tv),根据过滤条件t从IFC完整模型Lc中提取核心实体E1,Lc={ci,{eij}},ci是实体名称,0={eij}是实体类型为ci的IFC实例的集合;
步骤2、分析核心实体E1,若核心实体E1为空则结束提取;若te是产品实体,直接进入步骤3;若te是过程实体,则计算并提取核心实体E1中的过程实体的IFC实例集合;若te是组织、控制、生产资料和分组实体,则计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例集合;若te是类型实体,则计算并提取核心实体E1中的类型实体的IFC实例集合;若te是项目实体,则根据MVD从IFC完整模型Lc中提取实体级子模型,MVD={cj};若te是属性实体,则计算并提取核心实体E1中的属性实体的IFC实例集合;
步骤3、计算并提取核心实体E1的相关IFC实例,结束提取。
2.根据权利要求1所述的一种IFC子模型提取方法,其特征在于,提取核心实体E1时,包括以下步骤:
1.1、读入过滤条件t,t=(te,tp,tv);
1.2、条件从Lc中提取ci=te的元素(te,{eij});
1.3遍历{eij}中各个实例eij,如果eij的tp属性的值等于tv或包含tv,则将eij加入核心实体E1,E1={eij};否则继续遍历{eij}。
3.根据权利要求1所述的一种IFC子模型提取方法,其特征在于,提取过程实体的IFC实例时包括以下步骤:
2.1、根据过滤条件t提取过程实体的IFC实例的集合P1,P1=E1,P1={pi};
2.2、递归遍历P1中各个实例pi,提取pi反向属性IsNestedBy的值Rv={rnj},进入步骤2.3;遍历结束进入步骤2.4;
2.3、遍历Rv中所有关系实例rnj,提取rnj的RelatedObjects属性的值{pj}加入P2;P2中实例为P1实例的子过程;设置P1=P1∪P2;遍历结束返回步骤2.2;
2.4、计算E1=E1∪P1,并将E1和步骤2.2提取的所有关系实例Rv加入到子模型M1。
4.根据权利要求3所述的一种IFC子模型提取方法,其特征在于,计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例时,包括以下步骤:
3.1、设置集合Eo=E1,Eo={ei};分析te实体类型,若为组织实体,进入步骤3.2;若为控制实体,进入步骤3.3;若为分组实体,进入步骤3.4;若为生产资料实体,进入步骤3.5;
3.2、遍历Eo中各元素ei,提取ei的反向属性IsActingUpon的值{rij}加入Rv;遍历完后进入步骤3.6;
3.3、遍历Eo中各元素ei,提取ei的反向属性Controls的值{rij}加入Rv;遍历完后进入步骤3.6;
3.4、遍历Eo中各元素ei,提取ei的反向属性IsGroupedBy的值{rij}加入Rv;遍历完后进入步骤3.6;
3.5、遍历Eo中各元素ei,提取ei的反向属性ResourceOf的值{rij}加入Rv;遍历完后进入步骤3.6;
3.6、遍历Rv中各关系实例rij,提取rij的次要实体属性RelatedObjects值{ei}加入Eo;遍历完成后进入步骤3.7;
3.7、根据实体类型将Eo中实体分为产品实例集合Eoe、过程实例集合Eop和其他实体实例Eo;Eo=Eoe+Eop;
3.8、递归计算并提取Eop中过程实例pi的所有子过程P2,Eop=Eop∪P2;
3.9、计算并提取核心实体E1中的组织、控制、生产资料和分组实体的IFC实例集合E1=Eop∪Eoe∪Eo,将E1和上述步骤3.2-3.5中提取的所有关系实例Rv加入到M1中。
5.根据权利要求4所述的一种IFC子模型提取方法,其特征在于,计算并提取核心实体E1中的类型实体的IFC实例时,包括以下步骤:
4.1、设置类型实体实例集合T1=E1,T1={ti},E1设为空集;
4.2、遍历T1中各实例ti,提取ti的反向属性Types的值Rv={rnj},rnj是IfcRelDefinesByType实体的实例,进入步骤4.3;遍历完T1后,进入步骤4.4;
4.3、遍历Rv的各个元素rnj,提取rnj的RelatedObjects属性的值T2,全部加入实例集合E1,即E1=E1∪E2;Rv遍历完成后,返回步骤4.2;
4.4、根据实体类型提取E1中过程实例集合E1p和生产资料实体实例集合Erp;
4.5、递归计算并提取E1p中过程实例pi的所有子过程P2,设置E1p=E1p∪P2;进入步骤4.7;
4.6、计算生产资料实体实例集合Erp中实例相关的核心实例结合P2,设置Erp=Erp∪P2;进入步骤4.7;
4.7、计算得到的核心实体集合E1=E1∪T1∪Erp∪Eip;将E1和过程中提取的关系实例Rv添加到子模型M1。
6.根据权利要求5所述的一种IFC子模型提取方法,其特征在于,计算并提取核心实体E1中的属性实体的IFC实例时,包括以下步骤:
5.1、设置属性实体实例集合S1=E1,S1={si},E1设为空集;
5.2、遍历S1中各实例si,提取si的反向属性DefinesOccurrence的值{rnj}加入Rv,rnj是IfcRelDefinesByProperties实体的实例;遍历完进入步骤5.3;
5.3、遍历Rv的各个元素rnj,提取rnj的RelatedObjects属性的值P1,加入核心实体集合E1,即E1=E1∪P1;遍历完成后,进入步骤5.4;
5.4、遍历S1中各实例si,提取si的反向属性的DefinesType的值T1={ti},ti是类型实体的实例;遍历完成后,进入步骤5.5;
5.5、提取T1中各个类型实例ti相关的核心实体T2,E1=E1∪T1∪T2;
5.6、计算得到核心实体集合E1=E1∪S1∪P1;将E1和过程中提取的关系实例Rv添加到子模型M1。
7.根据权利要求6所述的一种IFC子模型提取方法,其特征在于,所述步骤3包括以下步骤:
6.1、遍历E1中各个ei,提取ei的所有反向属性的值{rij}加入Rv,把Rv添加到子模型M1,进入步骤6.2;E1遍历完后,进入步骤6.7;
6.2、遍历Rv中各个元素rij;若rij实体是关联关系实体或rij的实体类型不在MVD中或M1中已包括rij,则继续遍历;否则,把rij添加到子模型M1;若ei是rij的主要实体,进入步骤6.3;若ei是rij的次要实体,且不是聚合关系,则进入步骤6.4;若ei是rij的次要实体,且rij是聚合关系实体,则继续遍历;Rv遍历完后进入步骤6.6;
6.3、获得rij的次要实体RelatedObjects属性值P2={pj};进入步骤6.5;
6.4、获得rij的主要实体RelatingObject属性值P2={p1};进入步骤6.5;
6.5、遍历P2中各个元素pj,若pj的实体类型不属于MVD,则从P2删除;P2遍历完后返回步骤6.2;
6.6、设置E1=E1∪P2;设置M1=M1∪E1;返回步骤6.1;
6.7、提取M1中所有元素的资源实体类型的属性,提取结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110882729.6A CN113568989B (zh) | 2021-08-02 | 2021-08-02 | 一种ifc子模型提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110882729.6A CN113568989B (zh) | 2021-08-02 | 2021-08-02 | 一种ifc子模型提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113568989A true CN113568989A (zh) | 2021-10-29 |
CN113568989B CN113568989B (zh) | 2024-04-19 |
Family
ID=78170019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110882729.6A Active CN113568989B (zh) | 2021-08-02 | 2021-08-02 | 一种ifc子模型提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113568989B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130218924A1 (en) * | 2012-02-20 | 2013-08-22 | Solideo Systems Co., Ltd. | Method of providing data included in building information modeling data file, recording medium therefor, system using the method, and method of providing data using building information modeling server |
US20140164036A1 (en) * | 2012-12-10 | 2014-06-12 | Fluor Technologies Corporation | Program Sentiment Analysis, Systems and Methods |
CN105787156A (zh) * | 2016-02-04 | 2016-07-20 | 嘉兴国电通新能源科技有限公司 | 一种基于ifc实体数据抽取的子模型生成方法 |
KR20170095743A (ko) * | 2016-02-12 | 2017-08-23 | 경일대학교산학협력단 | 전통 목조 건축물을 위한 ifc 기반 정보 모델링 장치 및 방법 |
CN109190094A (zh) * | 2018-09-05 | 2019-01-11 | 盈嘉互联(北京)科技有限公司 | 基于ifc标准的建筑信息模型文件切分方法 |
CN110008622A (zh) * | 2019-04-15 | 2019-07-12 | 华夏天信(北京)智能低碳技术研究院有限公司 | 一种从IFC模型自动提取CityGML LOD 1-LOD4模型的方法 |
CN110502587A (zh) * | 2019-07-08 | 2019-11-26 | 史健勇 | 基于语义融合的bim和gis集成方法 |
CN111178083A (zh) * | 2019-12-12 | 2020-05-19 | 广州地理研究所 | 一种bim和gis的语义匹配方法及装置 |
CN111553001A (zh) * | 2020-03-23 | 2020-08-18 | 广州地铁设计研究院股份有限公司 | 一种从ifc文件中提取或删除构件的方法 |
CN111667576A (zh) * | 2020-04-30 | 2020-09-15 | 中铁第一勘察设计院集团有限公司 | 检测四电工程构件模型非几何特征信息的方法 |
CN112100195A (zh) * | 2020-11-10 | 2020-12-18 | 上海建工四建集团有限公司 | 一种基于语义分类的ifc模型变更检测方法 |
WO2021031336A1 (zh) * | 2019-08-16 | 2021-02-25 | 清华大学 | 一种基于建筑信息模型的施工进度资源自动优化方法 |
US20210192100A1 (en) * | 2019-12-19 | 2021-06-24 | Katerra, Inc. | Method and Apparatus for Providing a Cost-Optimized Route for an Electrical Cable in a Three-Dimensional Model of a Building |
-
2021
- 2021-08-02 CN CN202110882729.6A patent/CN113568989B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130218924A1 (en) * | 2012-02-20 | 2013-08-22 | Solideo Systems Co., Ltd. | Method of providing data included in building information modeling data file, recording medium therefor, system using the method, and method of providing data using building information modeling server |
US20140164036A1 (en) * | 2012-12-10 | 2014-06-12 | Fluor Technologies Corporation | Program Sentiment Analysis, Systems and Methods |
CN105787156A (zh) * | 2016-02-04 | 2016-07-20 | 嘉兴国电通新能源科技有限公司 | 一种基于ifc实体数据抽取的子模型生成方法 |
KR20170095743A (ko) * | 2016-02-12 | 2017-08-23 | 경일대학교산학협력단 | 전통 목조 건축물을 위한 ifc 기반 정보 모델링 장치 및 방법 |
CN109190094A (zh) * | 2018-09-05 | 2019-01-11 | 盈嘉互联(北京)科技有限公司 | 基于ifc标准的建筑信息模型文件切分方法 |
CN110008622A (zh) * | 2019-04-15 | 2019-07-12 | 华夏天信(北京)智能低碳技术研究院有限公司 | 一种从IFC模型自动提取CityGML LOD 1-LOD4模型的方法 |
CN110502587A (zh) * | 2019-07-08 | 2019-11-26 | 史健勇 | 基于语义融合的bim和gis集成方法 |
WO2021031336A1 (zh) * | 2019-08-16 | 2021-02-25 | 清华大学 | 一种基于建筑信息模型的施工进度资源自动优化方法 |
CN111178083A (zh) * | 2019-12-12 | 2020-05-19 | 广州地理研究所 | 一种bim和gis的语义匹配方法及装置 |
US20210192100A1 (en) * | 2019-12-19 | 2021-06-24 | Katerra, Inc. | Method and Apparatus for Providing a Cost-Optimized Route for an Electrical Cable in a Three-Dimensional Model of a Building |
CN111553001A (zh) * | 2020-03-23 | 2020-08-18 | 广州地铁设计研究院股份有限公司 | 一种从ifc文件中提取或删除构件的方法 |
CN111667576A (zh) * | 2020-04-30 | 2020-09-15 | 中铁第一勘察设计院集团有限公司 | 检测四电工程构件模型非几何特征信息的方法 |
CN112100195A (zh) * | 2020-11-10 | 2020-12-18 | 上海建工四建集团有限公司 | 一种基于语义分类的ifc模型变更检测方法 |
Non-Patent Citations (3)
Title |
---|
JIANPING ZHANG: "Development and Implementation of an Industry Foundation Classes‐Based Graphic Information Model for Virtual Construction", COMPUTER‐AIDED CIVIL & INFRASTRUCTURE ENGINEERING, 30 November 2012 (2012-11-30), pages 60 - 74 * |
余芳强: "基于IFC的BIM子模型视图半自动生成", 清华大学学报(自然科学版), 31 August 2014 (2014-08-31), pages 987 - 992 * |
卢勇东: "基于IFC与CityGML标准的BIM-GIS集成技术研究", 工程建设, 31 July 2021 (2021-07-31), pages 6 - 11 * |
Also Published As
Publication number | Publication date |
---|---|
CN113568989B (zh) | 2024-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Construction automation: Research areas, industry concerns and suggestions for advancement | |
CN109214068B (zh) | 基于bim的底层装配式建筑信息提取方法 | |
Vanlande et al. | IFC and building lifecycle management | |
CN101981575B (zh) | 利用多事务技术复制面向对象环境中的对象的方法和装置 | |
Liu et al. | Automatically updating maintenance information from a BIM database | |
KR101741015B1 (ko) | 공동주택의 환경성능·에너지 해석을 위한 통합 분석 시스템 및 분석 방법 | |
US20080255810A1 (en) | Cad system, control method and control program for same | |
US20100114355A1 (en) | Method and system for management of manufacturing information | |
JP2015510638A (ja) | マルチトランザクション技術を使用して、オブジェクト指向環境においてオブジェクトの幾何学的変換を実施するための方法及び装置 | |
CN112149211B (zh) | 一种基于bim模型的幕墙的建模方法及系统 | |
EP3425571A1 (de) | Digitales gebäudeinformationssystem | |
Cao et al. | A graph-based approach for module library development in industrialized construction | |
CN107408139A (zh) | 空间信息生成装置、空间信息生成方法、程序 | |
CN104951864A (zh) | 一种住宅开发中可体系化复制的标准体系数据构建系统 | |
Golabchi et al. | Evaluation of industry foundation classes for practical building information modeling interoperability | |
CN113568989B (zh) | 一种ifc子模型提取方法 | |
KR20040091838A (ko) | 건축 철골 구조물의 시공을 위한 제작도면의 자동 생성방법 및 시스템 | |
Hochscheid et al. | BIM implementation in SMEs: an experience of cooperation between an architect agency and a carpentry firm | |
Van Treeck et al. | Simulation based on the product model standard IFC | |
CN113742815B (zh) | 一种ifc子模型融合方法 | |
Lilis et al. | Simulation model generation combining IFC and CityGML data | |
Sattler et al. | Multi-domain BIM interoperability: queries as data-exchange vectors | |
Châteauvieux-Hellwig et al. | Analysis of the early-design timber models for sound insulation analysis | |
Bermek et al. | Schema for Automated Generation of CLT Framing and Panelization | |
Mukkavaara et al. | Approach for automated planning using 5D-BIM |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |