IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

5.4.3.23 IfcExternalSpatialElement(外部空间构件)

5.4.3.23.1 语义定义(Semantic definition)

外部空间元素定义了建筑物场地周围的外部区域。这些区域可以定义为:

  • 逻辑上 - 例如,IfcExternalSpatialElement 的一个实例可以代表建筑物周围的空气空间,而没有自己的形状表示,或者
  • 物理上 - 例如,IfcExternalSpatialElement 的一个实例可以代表建筑物周围的倾斜地面,以识别地面以下的外部建筑围护结构的部分。

5.4.3.23.2 实体继承(Entity inheritance)

5.4.3.23.3 特性(Attributes)

# 特性(Attributes) 类型 描述
IfcRoot (4)
1 GlobalId IfcGloballyUniqueId

在整个软件世界中分配全局唯一标识符。

2 OwnerHistory OPTIONAL IfcOwnerHistory

分配有关该对象当前所有权的信息,包括所有者参与者、应用程序、本地标识以及捕获到的关于对象近期更改的信息。

3 Name OPTIONAL IfcLabel

供参与的软件系统或用户使用的可选名称。对于某些 IfcRoot 的子类型,可能需要插入 Name 特性。这将通过 where 规则强制执行。

4 Description OPTIONAL IfcText

可选的描述,用于提供信息性注释。

IfcObjectDefinition (7)
HasAssignments SET [0:?] OF IfcRelAssigns FOR RelatedObjects

引用分配(通过关联关系)其他 IfcObject 子类型到此对象实例的关系对象。例如,与产品、过程、控制、资源或组的关联。

Nests SET [0:1] OF IfcRelNests FOR RelatedObjects

引用作为嵌套的分解关系。它确定此对象定义是顺序整体/部分分解关系中的一部分。对象实例或类型只能是单个分解的一部分(仅允许分层结构)。

IsNestedBy SET [0:?] OF IfcRelNests FOR RelatingObject

引用作为嵌套的分解关系。它确定此对象定义是顺序整体/部分分解关系中的整体。对象或对象类型可以被多个其他对象(实例或类型)嵌套。

HasContext SET [0:1] OF IfcRelDeclares FOR RelatedDefinitions

引用提供上下文信息的上下文,例如项目单位或表示上下文。它只应断言在最上层的非空间对象上。

IsDecomposedBy SET [0:?] OF IfcRelAggregates FOR RelatingObject

引用作为聚合的分解关系。它确定此对象定义是无序整体/部分分解关系中的整体。对象定义可以被多个其他对象(实例或部分)聚合。

Decomposes SET [0:1] OF IfcRelAggregates FOR RelatedObjects

引用作为聚合的分解关系。它确定此对象定义是无序整体/部分分解关系中的一部分。对象定义只能是单个分解的一部分(仅允许分层结构)。

HasAssociations SET [0:?] OF IfcRelAssociates FOR RelatedObjects

引用将外部资源或资源定义与对象关联的关系对象。例如,与库、文档或分类的关联。

IfcObject (5)
5 ObjectType OPTIONAL IfcLabel

该类型表示指示对象的特定类型。必须在可实例化的子类型的级别上建立用法。特别是,如果特性 PredefinedType 的枚举设置为 USERDEFINED,或者当实例化的具体实体没有 PredefinedType 特性时,它保存用户定义的类型。后者发生在一些特殊的叶子类中,以及直接实例化 IfcBuiltElement 时。

IsDeclaredBy SET [0:1] OF IfcRelDefinesByObject FOR RelatedObjects

链接到指向声明对象的关系对象,该声明对象为此对象实例提供对象定义。声明对象必须是对象类型分解的一部分。关联的 IfcObject 或其子类型包含特定信息(作为类型或样式定义的一部分),该信息对于声明 IfcObject 或其子类型的所有反映实例是通用的。

Declares SET [0:?] OF IfcRelDefinesByObject FOR RelatingObject

链接到指向接收对象定义的反向对象的关系对象。反向对象必须是对象实例分解的一部分。关联的 IfcObject 或其子类型提供特定信息(作为类型或样式定义的一部分),该信息对于声明 IfcObject 或其子类型的所有反向实例是通用的。

IsTypedBy SET [0:1] OF IfcRelDefinesByType FOR RelatedObjects

与对象类型的关系集合,该对象类型为此对象实例提供类型定义。然后,关联的 IfcTypeObject 或其子类型包含特定信息(或类型或样式),该信息对于引用同一类型的所有 IfcObject 或其子类型的实例是通用的。

IsDefinedBy SET [0:?] OF IfcRelDefinesByProperties FOR RelatedObjects

与附加到此对象的属性集定义的集合的关系。这些静态或动态定义的特性包含字母数字信息内容,这些内容进一步定义了对象。

IfcProduct (5)
6 ObjectPlacement OPTIONAL IfcObjectPlacement

这建立了产品在空间中的对象坐标系和位置。位置可以是绝对的(相对于世界坐标系)、相对的(相对于另一个产品的对象位置)或约束的(例如,相对于网格轴或线性定位元素)。位置的类型由 IfcObjectPlacement 的各种子类型确定。如果存在表示,则必须提供对象位置。

7 Representation OPTIONAL IfcProductRepresentation

引用产品的表示,可以是表示 (IfcProductRepresentation) 或作为形状表示 (IfcProductDefinitionShape) 的特例。产品定义形状为同一对象坐标系中的形状属性提供了多个几何表示,该坐标系由对象位置确定。

ReferencedBy SET [0:?] OF IfcRelAssignsToProduct FOR RelatingProduct

引用 IfcRelAssignsToProduct 关系,通过该关系,其他产品、过程、控制、资源或参与者(作为 IfcObjectDefinition 的子类型)可以与此产品相关联。

PositionedRelativeTo SET [0:?] OF IfcRelPositions FOR RelatedProducts

引用 IfcRelPositions 关系,该关系定义了其与定位元素的关系。

ReferencedInStructures SET [0:?] OF IfcRelReferencedInSpatialStructure FOR RelatedElements

引用对象化关系 IfcRelReferencedInSpatialStructure,可用于将产品与一个或多个空间结构元素相关联,除了它主要包含的那个。

IfcSpatialElement (6)
8 LongName OPTIONAL IfcLabel

空间结构构件的长名称,用于非正式目的。如果可用,应与继承的 Name 特性结合使用。

ContainsElements SET [0:?] OF IfcRelContainedInSpatialStructure FOR RelatingStructure

空间包含关系集合,包含项目空间结构中此构件中包含的那些构件。

ServicedBySystems SET [0:?] OF IfcRelServicesBuildings FOR RelatedBuildings

与系统之间的一组关系,这些系统为定义的空间构件提供某种服务。该关系由对象化的关系 IfcRelServicesBuildings 处理。

ReferencesElements SET [0:?] OF IfcRelReferencedInSpatialStructure FOR RelatingStructure

空间参考关系集合,包含项目中在此构件中引用但未包含的那些构件。

Ø\X

IsInterferedByElements SET [0:?] OF IfcRelInterferesElements FOR RelatedElement

引用干涉关系以指示受到干涉的空间构件。如果提供了该关系,则表明此空间构件与一个或多个其他空间构件存在干涉。

InterferesElements SET [0:?] OF IfcRelInterferesElements FOR RelatingElement

引用干涉关系以指示进行干涉的空间构件。如果提供了该关系,则表明此空间构件与一个或多个其他空间构件存在干涉。

点击显示 27 个隐藏的继承特性 点击隐藏 27 个继承特性
IfcExternalSpatialElement (2)
9 PredefinedType OPTIONAL IfcExternalSpatialElementTypeEnum

外部空间元素的预定义通用类型,在枚举中指定。可能存在针对每种预定义类型的属性集。

BoundedBy SET [0:?] OF IfcRelSpaceBoundary FOR RelatingSpace

指向一组 IfcRelSpaceBoundary 实体的引用,这些实体定义了该外部空间元素与物理或虚拟边界之间的物理或虚拟界限。

表 5.4.3.23.A

5.4.3.23.4 属性集

  • Pset_AirSideSystemInformation
    • Description
    • AirSideSystemType
    • AirSideSystemDistributionType
    • TotalAirFlow
    • EnergyGainTotal
    • AirFlowSensible
    • EnergyGainSensible
    • EnergyLoss
    • InfiltrationDiversitySummer
    • InfiltrationDiversityWinter
    • ApplianceDiversity
    • HeatingTemperatureDelta
    • CoolingTemperatureDelta
    • Ventilation
    • FanPower
  • Pset_Risk
    • RiskName
    • RiskType
    • NatureOfRisk
    • RiskAssessmentMethodology
    • UnmitigatedRiskLikelihood
    • UnmitigatedRiskConsequence
    • UnmitigatedRiskSignificance
    • MitigationPlanned
    • MitigatedRiskLikelihood
    • MitigatedRiskConsequence
    • MitigatedRiskSignificance
    • MitigationProposed
    • AssociatedProduct
    • AssociatedActivity
    • AssociatedLocation
  • Pset_SpaceAirHandlingDimensioning
    • CoolingDesignAirFlow
    • HeatingDesignAirFlow
    • SensibleHeatGain
    • TotalHeatGain
    • TotalHeatLoss
    • CoolingDryBulb
    • CoolingRelativeHumidity
    • HeatingDryBulb
    • HeatingRelativeHumidity
    • VentilationDesignAirFlow
    • DesignAirFlow
    • CeilingRAPlenum
    • BoundaryAreaHeatLoss
  • Pset_SpaceCommon
    • Reference
    • IsExternal
    • GrossPlannedArea
    • NetPlannedArea
    • PubliclyAccessible
    • HandicapAccessible
  • Pset_SpaceCoveringRequirements
    • FloorCovering
    • FloorCoveringThickness
    • WallCovering
    • WallCoveringThickness
    • CeilingCovering
    • CeilingCoveringThickness
    • SkirtingBoard
    • SkirtingBoardHeight
    • Molding
    • MoldingHeight
    • ConcealedFlooring
    • ConcealedFlooringOffset
    • ConcealedCeiling
    • ConcealedCeilingOffset
  • Pset_SpaceFireSafetyRequirements
    • FireRiskFactor
    • FlammableStorage
    • FireExit
    • SprinklerProtection
    • SprinklerProtectionAutomatic
    • AirPressurization
  • Pset_SpaceHVACDesign
    • TemperatureSetPoint
    • TemperatureMax
    • TemperatureMin
    • TemperatureSummerMax
    • TemperatureSummerMin
    • TemperatureWinterMax
    • TemperatureWinterMin
    • HumiditySetPoint
    • HumidityMax
    • HumidityMin
    • HumiditySummer
    • HumidityWinter
    • DiscontinuedHeating
    • NaturalVentilation
    • NaturalVentilationRate
    • MechanicalVentilation
    • MechanicalVentilationRate
    • AirConditioning
    • AirConditioningCentral
    • AirHandlingName
  • Pset_SpaceLightingDesign
    • ArtificialLighting
    • Illuminance
  • Pset_SpaceOccupancyRequirements
    • OccupancyType
    • OccupancyNumber
    • OccupancyNumberPeak
    • OccupancyTimePerDay
    • AreaPerOccupant
    • MinimumHeadroom
    • IsOutlookDesirable
  • Pset_SpaceThermalLoad
    • People
    • Lighting
    • EquipmentSensible
    • VentilationIndoorAir
    • VentilationOutdoorAir
    • RecirculatedAir
    • ExhaustAir
    • AirExchangeRate
    • DryBulbTemperature
    • RelativeHumidity
    • InfiltrationSensible
    • TotalSensibleLoad
    • TotalLatentLoad
    • TotalRadiantLoad
  • Pset_SpaceThermalLoadPHistory
    • PeopleHistory
    • LightingHistory
    • EquipmentSensibleHistory
    • VentilationIndoorAirHistory
    • VentilationOutdoorAirHistory
    • RecirculatedAirHistory
    • ExhaustAirHistory
    • AirExchangeRateTimeHistory
    • DryBulbTemperatureHistory
    • RelativeHumidityHistory
    • InfiltrationSensibleHistory
    • TotalSensibleLoadHistory
    • TotalLatentLoadHistory
    • TotalRadiantLoadHistory
  • Pset_SpaceThermalPHistory
    • CoolingAirFlowRate
    • HeatingAirFlowRate
    • VentilationAirFlowRateHistory
    • ExhaustAirFlowRate
    • SpaceTemperatureHistory
    • SpaceRelativeHumidity
  • Pset_ThermalLoad
    • OccupancyDiversity
    • LightingDiversity
    • ApplianceDiversity
    • OutsideAirPerPerson
    • ReceptacleLoadIntensity
    • AppliancePercentLoadToRadiant
    • LightingLoadIntensity
    • LightingPercentLoadToReturnAir
    • TotalCoolingLoad
    • TotalHeatingLoad
    • InfiltrationDiversitySummer
    • InfiltrationDiversityWinter
    • LoadSafetyFactor
  • Pset_Tolerance
    • ToleranceDescription
    • ToleranceBasis
    • OverallTolerance
    • HorizontalTolerance
    • OrthogonalTolerance
    • VerticalTolerance
    • PlanarFlatness
    • HorizontalFlatness
    • ElevationalFlatness
    • SideFlatness
    • OverallOrthogonality
    • HorizontalOrthogonality
    • OrthogonalOrthogonality
    • VerticalOrthogonality
    • OverallStraightness
    • HorizontalStraightness
    • OrthogonalStraightness
    • VerticalStraightness
  • Pset_Uncertainty
    • UncertaintyBasis
    • UncertaintyDescription
    • HorizontalUncertainty
    • LinearUncertainty
    • OrthogonalUncertainty
    • VerticalUncertainty
  • Qto_BodyGeometryValidation
    • GrossSurfaceArea
    • NetSurfaceArea
    • GrossVolume
    • NetVolume
    • SurfaceGenusBeforeFeatures
    • SurfaceGenusAfterFeatures

7.5.3.5.3 概念用法(Concept usage)

概念 用法 描述
IfcRoot (2)
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

IfcObjectDefinition (11)
Classification Association General

任何对象实例或对象类型都可以具有对特定分类引用的引用,即对分类系统中特定方面的引用。

Aggregation General

聚合表示整体结构(称为“复合体”)与从属组件(称为“部分”)之间的内部无序部分组成关系。聚合的概念有多种用法。例如:

  • 聚合用于建筑构件,以指示墙体内的龙骨等部分;
  • 聚合用于空间元素,以指示空间结构,例如建筑物内的楼层;
  • 聚合用于系统,以指示子系统,例如分支电路。

聚合是一种双向关系,从复合体到其部分的这种关系称为分解(Decomposition),从部分到其复合体的这种关系称为组合(Composition)。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
}
Approval Association General

概念 批准关联 描述了对象或对象类型如何关联批准,指示谁需要批准数据、是否已批准的状态以及批准的日期/时间。批准可能需要多个方扮演各种角色。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesApproval:RelatedObjects
    IfcRelAssociatesApproval:RelatingApproval -> IfcApproval
    IfcApproval:Name -> IfcLabel_0
    IfcApproval:TimeOfApproval -> IfcDateTime
    IfcApproval:Status -> IfcLabel_1
}
Constraint Association General

概念 约束关联 描述了对象或对象类型如何关联约束,指示需要满足的定性目标或定量指标。

基于指标的约束是可衡量的,使得指标有效的状态是计算机可解释的。指标约束基于简单的条件逻辑,例如大于特定值或包含在指定列表或表中。约束可以使用布尔逻辑(如 AND、OR、XOR 或 NOT)组合多个指标。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesConstraint:RelatedObjects
    IfcRelAssociatesConstraint:RelatingConstraint -> IfcObjective
    IfcObjective:BenchmarkValues -> IfcMetric
    IfcObjective:ObjectiveQualifier -> IfcObjectiveEnum
    IfcObjective:LogicalAggregator -> IfcLogicalOperatorEnum
    IfcMetric:DataValue -> IfcMetricValueSelect
    IfcMetric:DataValue -> IfcAppliedValue_0
    IfcMetric:DataValue -> IfcTable
    IfcMetric:Benchmark -> IfcBenchmarkEnum
    IfcMetric:ReferencePath -> IfcReference_1
    IfcMetric:Name -> IfcLabel_1
    IfcMetric:Description -> IfcText_1
    IfcAppliedValue_0:ArithmeticOperator -> IfcArithmeticOperatorEnum
    IfcAppliedValue_0:Components -> IfcAppliedValue_1
    IfcAppliedValue_0:AppliedValue -> IfcLengthMeasure
    IfcAppliedValue_0:AppliedValue -> IfcReal
    IfcTable:Rows -> IfcTableRow
    IfcTable:Columns -> IfcTableColumn
    IfcTableColumn:Identifier -> IfcIdentifier
    IfcTableColumn:Name -> IfcLabel_0
    IfcTableColumn:Description -> IfcText_0
    IfcTableColumn:ReferencePath -> IfcReference_0
    IfcMetric:DataValue[binding="DataValue"]
    IfcReference_1:AttributeIdentifier[binding="Attribute1"]
}
Document Association General

概念 文档关联 描述了对象或对象类型如何关联文档,指示外部文件。文档可以整体引用,例如用于捕获产品手册、数据表、多媒体内容或缩略图。文档中的内容可以从任何对象引用,并可用于同步其他文件中的信息,例如项目管理应用程序的项目计划。

文档的典型元数据,如发布日期、编辑者等,可以与关联一起捕获,但文档内容仍保留在外部文件中。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcRelAssociatesDocument:Name -> IfcLabel_0
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentReference:Location -> IfcURIReference
    IfcDocumentReference:Identification -> IfcIdentifier
    IfcDocumentReference:Name -> IfcLabel_1
    IfcDocumentReference:Description -> IfcText
    IfcRelAssociatesDocument:Name[binding="Name"]
}
Library Association General

概念 库关联 描述了对象和对象类型如何关联库实体,指示另一个数据源,例如来自模型服务器、产品库或外部数据库或系统,这些数据源用更多详细信息丰富数据。库可以整体从项目或项目库中引用,指示数据的源和版本。库中的内容可以从项目或项目库中的任何对象、类型对象、属性和某些资源模式实体中引用。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryReference
    IfcLibraryReference:Location -> IfcURIReference
    IfcLibraryReference:Identification -> IfcIdentifier
    IfcLibraryReference:Name -> IfcLabel
    IfcLibraryReference:Description -> IfcText
    IfcLibraryReference:Language -> IfcLanguageId
    IfcLibraryReference:ReferencedLibrary -> IfcLibraryInformation
    IfcRelAssociatesLibrary:RelatingLibrary[binding="RelatingLibrary"]
}
Material Association General

任何产品或产品类型都可以关联材料,以指示对象的物理组成。

材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
}
Material Single General

材料直接与产品和产品类型关联,以表示整个对象的均匀材料。

材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObjectIfcObject 上进行关联,则直接分配给 IfcObject 的材料具有优先权。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
    IfcRelAssociatesMaterial:RelatingMaterial -> IfcMaterial
    IfcMaterial -> Material
}
Nesting General

嵌套表示主体结构(称为“主机”)与附加组件(称为“被托管元素”)之间的外部有序部分组成关系。嵌套的概念有多种用法。例如:

  • 嵌套用于产品构件,以指示外部可连接部件,例如安装在水槽上的水龙头或安装在接线盒内的开关。
  • 嵌套用于控制对象,以指示规范层次结构。
  • 嵌套用于过程对象,以指示可能并行或串行发生的从属过程。
  • 嵌套用于资源对象,以指示可能并行或串行发生的从属资源分配。

嵌套是一种双向关系,从主机结构到其附加组件的关系称为嵌套(Nesting),从组件到其包含结构的关系称为托管(Hosting)。

concept {
    IfcObjectDefinition:IsNestedBy -> IfcRelNests:RelatingObject
}
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

IfcObject (16)
Aggregation General

聚合表示整体结构(称为“复合体”)与从属组件(称为“部分”)之间的内部无序部分组成关系。聚合的概念有多种用法。例如:

  • 聚合用于建筑构件,以指示墙体内的龙骨等部分;
  • 聚合用于空间元素,以指示空间结构,例如建筑物内的楼层;
  • 聚合用于系统,以指示子系统,例如分支电路。

聚合是一种双向关系,从复合体到其部分的这种关系称为分解(Decomposition),从部分到其复合体的这种关系称为组合(Composition)。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
}
Approval Association General

概念 批准关联 描述了对象或对象类型如何关联批准,指示谁需要批准数据、是否已批准的状态以及批准的日期/时间。批准可能需要多个方扮演各种角色。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesApproval:RelatedObjects
    IfcRelAssociatesApproval:RelatingApproval -> IfcApproval
    IfcApproval:Name -> IfcLabel_0
    IfcApproval:TimeOfApproval -> IfcDateTime
    IfcApproval:Status -> IfcLabel_1
}
Assignment to Group General

_分配到组_建立对象到组的分配,组是对象的任意集合。它是_组分配_的补充概念模板,定义了对象如何被组分配。

分组关系除了将对象分组外,不具有任何其他含义。它是非层次化的,意味着对象可以被分配到多个组,并且不干扰其他关系概念,例如_元素分解_。分组关系允许子组被分组到组中。

concept {
    IfcObject:HasAssignments -> IfcRelAssignsToGroup:RelatedObjects
    IfcObject:HasAssignments[binding="IsAssigned"]
}
Classification Association General

任何对象实例或对象类型都可以具有对特定分类引用的引用,即对分类系统中特定方面的引用。

Constraint Association General

概念 约束关联 描述了对象或对象类型如何关联约束,指示需要满足的定性目标或定量指标。

基于指标的约束是可衡量的,使得指标有效的状态是计算机可解释的。指标约束基于简单的条件逻辑,例如大于特定值或包含在指定列表或表中。约束可以使用布尔逻辑(如 AND、OR、XOR 或 NOT)组合多个指标。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesConstraint:RelatedObjects
    IfcRelAssociatesConstraint:RelatingConstraint -> IfcObjective
    IfcObjective:BenchmarkValues -> IfcMetric
    IfcObjective:ObjectiveQualifier -> IfcObjectiveEnum
    IfcObjective:LogicalAggregator -> IfcLogicalOperatorEnum
    IfcMetric:DataValue -> IfcMetricValueSelect
    IfcMetric:DataValue -> IfcAppliedValue_0
    IfcMetric:DataValue -> IfcTable
    IfcMetric:Benchmark -> IfcBenchmarkEnum
    IfcMetric:ReferencePath -> IfcReference_1
    IfcMetric:Name -> IfcLabel_1
    IfcMetric:Description -> IfcText_1
    IfcAppliedValue_0:ArithmeticOperator -> IfcArithmeticOperatorEnum
    IfcAppliedValue_0:Components -> IfcAppliedValue_1
    IfcAppliedValue_0:AppliedValue -> IfcLengthMeasure
    IfcAppliedValue_0:AppliedValue -> IfcReal
    IfcTable:Rows -> IfcTableRow
    IfcTable:Columns -> IfcTableColumn
    IfcTableColumn:Identifier -> IfcIdentifier
    IfcTableColumn:Name -> IfcLabel_0
    IfcTableColumn:Description -> IfcText_0
    IfcTableColumn:ReferencePath -> IfcReference_0
    IfcMetric:DataValue[binding="DataValue"]
    IfcReference_1:AttributeIdentifier[binding="Attribute1"]
}
Document Association General

概念 文档关联 描述了对象或对象类型如何关联文档,指示外部文件。文档可以整体引用,例如用于捕获产品手册、数据表、多媒体内容或缩略图。文档中的内容可以从任何对象引用,并可用于同步其他文件中的信息,例如项目管理应用程序的项目计划。

文档的典型元数据,如发布日期、编辑者等,可以与关联一起捕获,但文档内容仍保留在外部文件中。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcRelAssociatesDocument:Name -> IfcLabel_0
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentReference:Location -> IfcURIReference
    IfcDocumentReference:Identification -> IfcIdentifier
    IfcDocumentReference:Name -> IfcLabel_1
    IfcDocumentReference:Description -> IfcText
    IfcRelAssociatesDocument:Name[binding="Name"]
}
Library Association General

概念 库关联 描述了对象和对象类型如何关联库实体,指示另一个数据源,例如来自模型服务器、产品库或外部数据库或系统,这些数据源用更多详细信息丰富数据。库可以整体从项目或项目库中引用,指示数据的源和版本。库中的内容可以从项目或项目库中的任何对象、类型对象、属性和某些资源模式实体中引用。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryReference
    IfcLibraryReference:Location -> IfcURIReference
    IfcLibraryReference:Identification -> IfcIdentifier
    IfcLibraryReference:Name -> IfcLabel
    IfcLibraryReference:Description -> IfcText
    IfcLibraryReference:Language -> IfcLanguageId
    IfcLibraryReference:ReferencedLibrary -> IfcLibraryInformation
    IfcRelAssociatesLibrary:RelatingLibrary[binding="RelatingLibrary"]
}
Material Association General

任何产品或产品类型都可以关联材料,以指示对象的物理组成。

材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
}
Material Single General

材料直接与产品和产品类型关联,以表示整个对象的均匀材料。

材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObjectIfcObject 上进行关联,则直接分配给 IfcObject 的材料具有优先权。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
    IfcRelAssociatesMaterial:RelatingMaterial -> IfcMaterial
    IfcMaterial -> Material
}
Nesting General

嵌套表示主体结构(称为“主机”)与附加组件(称为“被托管元素”)之间的外部有序部分组成关系。嵌套的概念有多种用法。例如:

  • 嵌套用于产品构件,以指示外部可连接部件,例如安装在水槽上的水龙头或安装在接线盒内的开关。
  • 嵌套用于控制对象,以指示规范层次结构。
  • 嵌套用于过程对象,以指示可能并行或串行发生的从属过程。
  • 嵌套用于资源对象,以指示可能并行或串行发生的从属资源分配。

嵌套是一种双向关系,从主机结构到其附加组件的关系称为嵌套(Nesting),从组件到其包含结构的关系称为托管(Hosting)。

concept {
    IfcObjectDefinition:IsNestedBy -> IfcRelNests:RelatingObject
}
Object Predefined Type General

======================

许多对象实例具有一个名为 PredefinedType 的特性,该特性是一个特定的枚举。这种预定义类型本质上提供了另一种级别的“通过继承进行分类”,以在无需额外子类型的情况下进一步区分对象。预定义类型不仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。此类预定义类型通过为 PredefinedType 特性选择正确的枚举值来添加。如果需要自定义值,则必须使用 ObjectType 特性来定义此类自定义类型,而 PredefinedType 则设置为 USERDEFINED

Object Occurrence Predefined Type 提供的主要特性是:

  • PredefinedType:包含实体特定的预定义类型枚举,以进一步分类实体
  • ObjectType:允许自定义值,如果没有适用的枚举值

如果对象通过 IfcTypeObject 进行类型化,则仅当 IfcTypeObject 处的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例处的 PredefinedType

请注意,PredefinedType 特性本身是在继承层次结构的叶类中定义的,并为该给定叶类提供了一个特定的枚举特性。

concept {
    IfcObject:ObjectType -> IfcLabel
    IfcObject:IsTypedBy -> IfcRelDefinesByType:RelatedObjects
    IfcRelDefinesByType:RelatingType -> IfcTypeObject
    IfcObject:ObjectType[binding="UserDefinedType"]
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcTypeObject:ElementType[binding="TypeUserdefinedType"]
    IfcTypeObject:PredefinedType[binding="TypePredefinedType"]
}
Object Typing General

任何对象实例都可以通过被分配给一个使用此概念的通用对象类型来类型化。通过在 IfcObject 的子类型级别覆盖此概念,引入了一个限制可分配的 IfcTypeObject 子类型的特定规则。

此概念可应用于以下资源

Object User Identity General

特性 Name 和可选的 Description 可用于 IfcObject 的所有子类型。对于那些具有对象类型定义的子类型,例如 IfcBeam - IfcBeamType,通用的 Name 和可选的 Description 与对象类型相关联。

Property Sets with Override General

任何对象实例都可以拥有属性集,可以直接在对象实例上作为元素特定的属性集,也可以在对象类型上作为类型属性集。在这种情况下,提供给对象实例的特性是元素特定特性和类型特性的组合。如果在实例和类型特性中都定义了相同的特性(在同一属性集中),则实例特性的特性值将覆盖类型特性的特性值。

Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

IfcProduct (33)
Body Geometry General

IfcProduct 的主体或实体模型几何表示通常使用镶嵌(Tessellation)或边界表示(Brep)定义。子类型可以提供关于其他可用表示类型的建议。持有此几何表示的 IfcShapeRepresentation 的以下属性值应被使用:

Product Geometric Representation General

任何 IfcProduct 的几何表示由 IfcProductDefinitionShape 提供,允许进行多个几何表示。它使用 Product Placement 概念,利用 IfcLocalPlacement 建立对象坐标系,所有几何表示都基于该坐标系。

Product Geometry Colour General
concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:Items -> IfcSolidModel
    IfcShapeRepresentation:Items -> IfcTessellatedFaceSet
    IfcSolidModel:StyledByItem -> IfcStyledItem:Item
    IfcStyledItem:Styles -> IfcSurfaceStyle
    IfcSurfaceStyle -> Surface_Color_Style
    IfcTessellatedFaceSet:HasColours -> IfcIndexedColourMap:MappedTo
    IfcIndexedColourMap:Opacity -> IfcNormalisedRatioMeasure
    IfcIndexedColourMap:Colours -> IfcColourRgbList
    IfcIndexedColourMap:ColourIndex -> IfcPositiveInteger
}
Product Geometry Layer General
concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:LayerAssignments -> IfcPresentationLayerAssignment:AssignedItems
    IfcPresentationLayerAssignment -> Layer
}
Product Relative Positioning General

如果 IfcProductProduct Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProductIfcPositioningElement 的信息。

Product Span Positioning General

_IfcProduct_可以相对于两个_IfcReferent_实体进行放置,这两个实体指示产品在直线段上的起始和结束位置。

concept {
    IfcProduct:PositionedRelativeTo -> IfcRelPositions_0:RelatedProducts
    IfcProduct:PositionedRelativeTo -> IfcRelPositions_1:RelatedProducts
    IfcRelPositions_0:RelatingPositioningElement -> IfcReferent_0
    IfcRelPositions_0:Name -> IfcLabel_0
    IfcReferent_0:PredefinedType -> IfcReferentTypeEnum_0
    IfcRelPositions_1:RelatingPositioningElement -> IfcReferent_1
    IfcRelPositions_1:Name -> IfcLabel_1
    IfcReferent_1:PredefinedType -> IfcReferentTypeEnum_1
    IfcProduct:PositionedRelativeTo[binding="EndPositionedRelativeTo"]
    IfcReferent_0:PredefinedType[binding="StartPositionType"]
    IfcRelPositions_0:Name[binding="StartPositionName"]
    IfcReferent_1:PredefinedType[binding="EndPositionType"]
    IfcRelPositions_1:Name[binding="EndPositionName"]
}
Aggregation General

聚合表示整体结构(称为“复合体”)与从属组件(称为“部分”)之间的内部无序部分组成关系。聚合的概念有多种用法。例如:

  • 聚合用于建筑构件,以指示墙体内的龙骨等部分;
  • 聚合用于空间元素,以指示空间结构,例如建筑物内的楼层;
  • 聚合用于系统,以指示子系统,例如分支电路。

聚合是一种双向关系,从复合体到其部分的这种关系称为分解(Decomposition),从部分到其复合体的这种关系称为组合(Composition)。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
}
Approval Association General

概念 批准关联 描述了对象或对象类型如何关联批准,指示谁需要批准数据、是否已批准的状态以及批准的日期/时间。批准可能需要多个方扮演各种角色。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesApproval:RelatedObjects
    IfcRelAssociatesApproval:RelatingApproval -> IfcApproval
    IfcApproval:Name -> IfcLabel_0
    IfcApproval:TimeOfApproval -> IfcDateTime
    IfcApproval:Status -> IfcLabel_1
}
Assignment to Group General

_分配到组_建立对象到组的分配,组是对象的任意集合。它是_组分配_的补充概念模板,定义了对象如何被组分配。

分组关系除了将对象分组外,不具有任何其他含义。它是非层次化的,意味着对象可以被分配到多个组,并且不干扰其他关系概念,例如_元素分解_。分组关系允许子组被分组到组中。

concept {
    IfcObject:HasAssignments -> IfcRelAssignsToGroup:RelatedObjects
    IfcObject:HasAssignments[binding="IsAssigned"]
}
Box Geometry General

元素可以具有描述对象最小边界框尺寸的简化“盒子”表示。此类表示可用于更高效的空间索引或命中测试。

“盒子”表示的表示标识符、类型以及唯一允许的单个表示项是:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcBoundingBox
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Box"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=BoundingBox"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Classification Association General

任何对象实例或对象类型都可以具有对特定分类引用的引用,即对分类系统中特定方面的引用。

CoG Geometry General

元素可能具有描述重心(Center of Gravity)的“CoG”表示形式,该表示形式为一个点。此表示形式可用于允许验证检查,以在考虑可接受的数值容差的情况下,验证导入的“Body”形状表示后的重心是否与导出时创建的显式值匹配。

“CoG”表示形式的表示标识符、类型以及唯一允许的单个表示项为:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcCartesianPoint
    IfcLabel_0 -> constraint_0
    constraint_0[label="=CoG"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Constraint Association General

概念 约束关联 描述了对象或对象类型如何关联约束,指示需要满足的定性目标或定量指标。

基于指标的约束是可衡量的,使得指标有效的状态是计算机可解释的。指标约束基于简单的条件逻辑,例如大于特定值或包含在指定列表或表中。约束可以使用布尔逻辑(如 AND、OR、XOR 或 NOT)组合多个指标。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesConstraint:RelatedObjects
    IfcRelAssociatesConstraint:RelatingConstraint -> IfcObjective
    IfcObjective:BenchmarkValues -> IfcMetric
    IfcObjective:ObjectiveQualifier -> IfcObjectiveEnum
    IfcObjective:LogicalAggregator -> IfcLogicalOperatorEnum
    IfcMetric:DataValue -> IfcMetricValueSelect
    IfcMetric:DataValue -> IfcAppliedValue_0
    IfcMetric:DataValue -> IfcTable
    IfcMetric:Benchmark -> IfcBenchmarkEnum
    IfcMetric:ReferencePath -> IfcReference_1
    IfcMetric:Name -> IfcLabel_1
    IfcMetric:Description -> IfcText_1
    IfcAppliedValue_0:ArithmeticOperator -> IfcArithmeticOperatorEnum
    IfcAppliedValue_0:Components -> IfcAppliedValue_1
    IfcAppliedValue_0:AppliedValue -> IfcLengthMeasure
    IfcAppliedValue_0:AppliedValue -> IfcReal
    IfcTable:Rows -> IfcTableRow
    IfcTable:Columns -> IfcTableColumn
    IfcTableColumn:Identifier -> IfcIdentifier
    IfcTableColumn:Name -> IfcLabel_0
    IfcTableColumn:Description -> IfcText_0
    IfcTableColumn:ReferencePath -> IfcReference_0
    IfcMetric:DataValue[binding="DataValue"]
    IfcReference_1:AttributeIdentifier[binding="Attribute1"]
}
Document Association General

概念 文档关联 描述了对象或对象类型如何关联文档,指示外部文件。文档可以整体引用,例如用于捕获产品手册、数据表、多媒体内容或缩略图。文档中的内容可以从任何对象引用,并可用于同步其他文件中的信息,例如项目管理应用程序的项目计划。

文档的典型元数据,如发布日期、编辑者等,可以与关联一起捕获,但文档内容仍保留在外部文件中。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcRelAssociatesDocument:Name -> IfcLabel_0
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentReference:Location -> IfcURIReference
    IfcDocumentReference:Identification -> IfcIdentifier
    IfcDocumentReference:Name -> IfcLabel_1
    IfcDocumentReference:Description -> IfcText
    IfcRelAssociatesDocument:Name[binding="Name"]
}
Library Association General

概念 库关联 描述了对象和对象类型如何关联库实体,指示另一个数据源,例如来自模型服务器、产品库或外部数据库或系统,这些数据源用更多详细信息丰富数据。库可以整体从项目或项目库中引用,指示数据的源和版本。库中的内容可以从项目或项目库中的任何对象、类型对象、属性和某些资源模式实体中引用。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryReference
    IfcLibraryReference:Location -> IfcURIReference
    IfcLibraryReference:Identification -> IfcIdentifier
    IfcLibraryReference:Name -> IfcLabel
    IfcLibraryReference:Description -> IfcText
    IfcLibraryReference:Language -> IfcLanguageId
    IfcLibraryReference:ReferencedLibrary -> IfcLibraryInformation
    IfcRelAssociatesLibrary:RelatingLibrary[binding="RelatingLibrary"]
}
Mapped Geometry General

元素可以具有“映射几何体”表示形式,该表示形式在相应的对象类型处重用了“对象类型定义”概念中的“对象类型形状”概念。

映射几何体表示形式的表示标识符是任何其他有效的几何表示形式标识符,例如“Body”、“FootPrint”或“Axis”。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation_0
    IfcShapeRepresentation_0:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation_0:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation_0:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation_0:Items -> IfcMappedItem
    IfcMappedItem:MappingSource -> IfcRepresentationMap
    IfcMappedItem:MappingTarget -> IfcCartesianTransformationOperator3D
    IfcMappedItem:MappingTarget -> IfcCartesianTransformationOperator3DnonUniform
    IfcRepresentationMap:MappingOrigin -> IfcAxis2Placement3D
    IfcRepresentationMap:MappedRepresentation -> IfcShapeRepresentation_1
    IfcAxis2Placement3D:Location -> IfcCartesianPoint_0
    IfcAxis2Placement3D:Axis -> IfcDirection_0
    IfcAxis2Placement3D:RefDirection -> IfcDirection_1
    IfcCartesianTransformationOperator3D:Axis1 -> IfcDirection_2
    IfcCartesianTransformationOperator3D:Axis2 -> IfcDirection_3
    IfcCartesianTransformationOperator3D:LocalOrigin -> IfcCartesianPoint_1
    IfcCartesianTransformationOperator3D:Axis3 -> IfcDirection_4
    IfcShapeRepresentation_0:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation_0:RepresentationType[binding="Type"]
}
Material Association General

任何产品或产品类型都可以关联材料,以指示对象的物理组成。

材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
}
Material Single General

材料直接与产品和产品类型关联,以表示整个对象的均匀材料。

材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObjectIfcObject 上进行关联,则直接分配给 IfcObject 的材料具有优先权。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
    IfcRelAssociatesMaterial:RelatingMaterial -> IfcMaterial
    IfcMaterial -> Material
}
Nesting General

嵌套表示主体结构(称为“主机”)与附加组件(称为“被托管元素”)之间的外部有序部分组成关系。嵌套的概念有多种用法。例如:

  • 嵌套用于产品构件,以指示外部可连接部件,例如安装在水槽上的水龙头或安装在接线盒内的开关。
  • 嵌套用于控制对象,以指示规范层次结构。
  • 嵌套用于过程对象,以指示可能并行或串行发生的从属过程。
  • 嵌套用于资源对象,以指示可能并行或串行发生的从属资源分配。

嵌套是一种双向关系,从主机结构到其附加组件的关系称为嵌套(Nesting),从组件到其包含结构的关系称为托管(Hosting)。

concept {
    IfcObjectDefinition:IsNestedBy -> IfcRelNests:RelatingObject
}
Object Predefined Type General

======================

许多对象实例具有一个名为 PredefinedType 的特性,该特性是一个特定的枚举。这种预定义类型本质上提供了另一种级别的“通过继承进行分类”,以在无需额外子类型的情况下进一步区分对象。预定义类型不仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。此类预定义类型通过为 PredefinedType 特性选择正确的枚举值来添加。如果需要自定义值,则必须使用 ObjectType 特性来定义此类自定义类型,而 PredefinedType 则设置为 USERDEFINED

Object Occurrence Predefined Type 提供的主要特性是:

  • PredefinedType:包含实体特定的预定义类型枚举,以进一步分类实体
  • ObjectType:允许自定义值,如果没有适用的枚举值

如果对象通过 IfcTypeObject 进行类型化,则仅当 IfcTypeObject 处的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例处的 PredefinedType

请注意,PredefinedType 特性本身是在继承层次结构的叶类中定义的,并为该给定叶类提供了一个特定的枚举特性。

concept {
    IfcObject:ObjectType -> IfcLabel
    IfcObject:IsTypedBy -> IfcRelDefinesByType:RelatedObjects
    IfcRelDefinesByType:RelatingType -> IfcTypeObject
    IfcObject:ObjectType[binding="UserDefinedType"]
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcTypeObject:ElementType[binding="TypeUserdefinedType"]
    IfcTypeObject:PredefinedType[binding="TypePredefinedType"]
}
Object Typing General

任何对象实例都可以通过被分配给一个使用此概念的通用对象类型来类型化。通过在 IfcObject 的子类型级别覆盖此概念,引入了一个限制可分配的 IfcTypeObject 子类型的特定规则。

此概念可应用于以下资源

Object User Identity General

特性 Name 和可选的 Description 可用于 IfcObject 的所有子类型。对于那些具有对象类型定义的子类型,例如 IfcBeam - IfcBeamType,通用的 Name 和可选的 Description 与对象类型相关联。

Product Local Placement General

产品实例可以相对于其所包含的位置进行三维空间定位。放置由相对位置(X、Y、Z 坐标)、水平参考方向和垂直轴方向定义。在最外层,相对方向根据表示上下文定义;例如,+X 可能指向东方,+Y 可能指向北方,+Z 可能指向上方。

放置遵循聚合和包含关系,如下所示:

  • 在最外层,场地根据纬度、经度和海拔进行全局定位;
  • 对于空间结构,定位相对于聚合。例如,一个场地可以聚合多个建筑,每个建筑可以聚合多个楼层,每个楼层可以聚合多个空间;
  • 对于建筑构件,定位相对于包含的空间结构。例如,一个楼层可以包含楼板、墙体、柱子和梁;
  • 对于聚合部件,定位相对于聚合。例如,一个楼梯可以聚合一个或多个楼梯段;
  • 对于特征构件,定位相对于受影响的建筑构件。例如,一个洞口构件相对于其所在的墙体进行定位,而该墙体又相对于楼层进行定位;
  • 对于填充物,定位相对于被填充的洞口。例如,一扇门相对于一个洞口进行定位,而该洞口又相对于墙体进行定位;
  • 对于分配端口,定位相对于包含的分配构件。例如,一个空气终端可能有一个用于管道段或配件的端口连接;
  • 对于分配构件,定位相对于包含的空间结构,但可能受端口连接的约束。例如,一个电气接线盒可能填充墙体内的某个洞口,并且该接线盒可能包含用于包含的插座或开关的端口;这些连接构件的放置相对于接线盒的连接端口受到约束。再举一个例子,一个空气终端可能填充一个相对于空间进行放置的天花板覆盖层;连接管道配件的放置可能相对于空气终端受到约束。

如果包含的空间结构包含一个网格,则放置也可以基于相对于网格坐标。在某些用例中,可以通过省略 IfcObjectPlacement 来使用绝对放置。在这种情况下,形状表示在世界坐标系中定义。

concept {
    IfcProduct:ObjectPlacement -> IfcLocalPlacement_0
    IfcLocalPlacement_0:RelativePlacement -> IfcAxis2Placement3D
    IfcLocalPlacement_0:PlacementRelTo -> IfcLocalPlacement_1
    IfcLocalPlacement_1:PlacesObject -> IfcElement:ObjectPlacement
    IfcLocalPlacement_1:PlacesObject -> IfcSpatialElement:ObjectPlacement
    IfcElement:Name -> IfcLabel_0
    IfcSpatialElement:Name -> IfcLabel_1
    IfcProduct:ObjectPlacement[binding="HasPlacement"]
    IfcLocalPlacement_1:PlacesObject[binding="RelativeToElement"]
    IfcElement:Name[binding="ElementName"]
    IfcSpatialElement:Name[binding="SpatialElementName"]
}
Product Topology Representation General

产品的拓扑可以以多种方式表示,以满足不同的目的。每种表示都有一个众所周知的字符串标识符和一个特定的表示上下文。可能存在多个表示上下文来描述用于各种用途的拓扑。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcTopologyRepresentation
    IfcTopologyRepresentation:ContextOfItems -> IfcRepresentationContext
    IfcTopologyRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcTopologyRepresentation:RepresentationType -> IfcLabel_1
}
Property Sets for Objects General

用于对象的属性集 概念模板描述了对象实例如何与一个或多个属性集相关联。一个属性集包含一个或多个属性。单个属性的数据类型是单值、枚举值、有界值、表值、引用值、列表值以及属性实例的组合。

属性集也可以与对象类型相关联,请参阅 用于类型的属性集 概念。然后,它们定义了所有相同类型实例的通用属性。如果同一属性(按名称)由同一属性集(按名称)提供,则直接分配给对象实例的属性将覆盖分配给对象类型的属性。

concept {
    IfcObject:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcPropertySet
    IfcPropertySet:HasProperties -> IfcPropertySingleValue
    IfcPropertySet:HasProperties -> IfcPropertyBoundedValue
    IfcPropertySet:HasProperties -> IfcPropertyEnumeratedValue
    IfcPropertySet:HasProperties -> IfcPropertyListValue
    IfcPropertySet:HasProperties -> IfcPropertyTableValue
    IfcPropertySingleValue -> Single_Value
    IfcPropertyBoundedValue -> Bounded_Value
    IfcPropertyEnumeratedValue -> Enumerated_Value
    IfcPropertyListValue -> List_Value
    IfcPropertyTableValue -> Table_Value
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcPropertySet:Name[binding="PsetName"]
    IfcPropertySet:HasProperties[binding="Properties"]
}

此概念可应用于以下资源

Property Sets with Override General

任何对象实例都可以拥有属性集,可以直接在对象实例上作为元素特定的属性集,也可以在对象类型上作为类型属性集。在这种情况下,提供给对象实例的特性是元素特定特性和类型特性的组合。如果在实例和类型特性中都定义了相同的特性(在同一属性集中),则实例特性的特性值将覆盖类型特性的特性值。

Quantity Sets General

任何对象的专门化都可以与多个数量集实例相关联。一个数量集包含多个数量实例。数量实例值的类型是计数、长度、面积、体积、重量、时间,或数量的组合。每个数量由其名称、值以及可选的描述和公式定义。

数量集通过 IfcElementQuantity 的实例来表示,其中 Name 属性确定了数量集的通用标识符。本规范包含一些预定义数量集,每个数量集都提供了模板定义。模板的名称必须用作 Name 属性的值。MethodOfMeasurement 属性指定了计算各个数量值的方法。对于本规范中包含的数量集模板,MethodOfMeasurement 的值应为“BaseQuantities”。

concept {
    IfcObject:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcElementQuantity
    IfcElementQuantity:Name -> IfcLabel_0
    IfcElementQuantity:Description -> IfcText
    IfcElementQuantity:MethodOfMeasurement -> IfcLabel_1
    IfcElementQuantity:Quantities -> IfcQuantityLength
    IfcElementQuantity:Quantities -> IfcQuantityArea
    IfcElementQuantity:Quantities -> IfcQuantityVolume
    IfcElementQuantity:Quantities -> IfcQuantityWeight
    IfcElementQuantity:Quantities -> IfcQuantityCount
    IfcElementQuantity:Quantities -> IfcQuantityTime
    IfcQuantityLength -> Length_Quantity
    IfcQuantityArea -> Area_Quantity
    IfcQuantityVolume -> Volume_Quantity
    IfcQuantityWeight -> Weight_Quantity
    IfcQuantityCount -> Count_Quantity
    IfcQuantityTime -> Time_Quantity
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcElementQuantity:Name[binding="QsetName"]
    IfcElementQuantity:Quantities[binding="Quantities"]
}

此概念可应用于以下资源

Reference Geometry General

几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference SweptSolid Geometry General

“参考扫掠实体几何体”是通过扫掠实体模型表示产品三维形状的参考表示形式,仅允许基本的拉伸面积实体和旋转面积实体。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcSweptAreaSolid
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=SweptSolid"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference SweptSolid PolyCurve Geometry General

“参考扫掠实体多段线几何体”是通过扫掠实体模型表示产品三维形状的参考表示形式,仅允许基本的拉伸面积实体和旋转面积实体。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcSweptAreaSolid
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=SweptSolid"]
    IfcSweptAreaSolid -> Extruded_Area_PolyCurve_Profile
    IfcSweptAreaSolid -> Revolved_Area_PolyCurve_Profile
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference Tessellation Geometry General

“参考镶嵌几何体”是通过使用镶嵌模型表示产品三维形状的参考表示形式。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcTriangulatedFaceSet
    IfcShapeRepresentation:Items -> IfcPolygonalFaceSet
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=Tessellation"]
    IfcTriangulatedFaceSet -> Triangulated_Geometry
    IfcPolygonalFaceSet -> Polygonal_Geometry
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

IfcSpatialElement (41)
FootPrint GeomSet Geometry General

“楼板平面几何集几何体”是元素几何表示形式的楼板平面投影的标准表示形式,主要包含二维曲线。

用于包含此几何表示形式的 IfcShapeRepresentation 的以下特性值被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcGeometricCurveSet
    IfcLabel_0 -> constraint_0
    constraint_0[label="=FootPrint"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=GeometricCurveSet"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
    IfcShapeRepresentation:Items[binding="Items"]
}
Group Spatial Connectivity General

“群组空间连接”概念允许将代表对象分组的_IfcGroup_(及其相关子类型)与特定的空间结构相关联,该空间结构可以是整个设施(及其特定子类型,例如建筑物、桥梁、道路或海洋设施)、设施的一部分、楼层或这些结构的任何部分。

相关群组(IfcGroup)应通过其_Name_特性可供人类识别。

相关关系(IfcRelReferencedInSpatialStructure)可以通过_Name_和_Description_特性提供连接的上下文。

此模板中使用_IfcRelReferencedInSpatialStructure_提供了跨越空间和功能层级的关系,实现了功能群组的空间覆盖。

允许_IfcGroup_不与任何空间结构元素相关联。当_IfcGroup_ 连接到空间结构时,必须通过IfcRelDeclares关系使用“项目声明模板”将其声明给_IfcProject_,或者通过组合使用父_IfcGroup_(或其相关子类型),并且该父_IfcGroup_要么使用“群组空间连接”连接到空间结构,要么使用“项目声明模板”声明给_IfcProject_。

concept {
    IfcSpatialElement:ReferencesElements -> IfcRelReferencedInSpatialStructure:RelatingStructure
    IfcRelReferencedInSpatialStructure:RelatedElements -> IfcGroup:ReferencedInStructures
    IfcRelReferencedInSpatialStructure:Name -> IfcLabel_1
    IfcGroup:Name -> IfcLabel_0
    IfcSpatialElement:ReferencesElements[binding="ReferencedElements"]
    IfcRelReferencedInSpatialStructure:RelatedElements[binding="RelatedGroups"]
    IfcGroup:Name[binding="GroupName"]
    IfcRelReferencedInSpatialStructure:Name[binding="ReferenceContext"]
}
Property Sets for Objects General

用于对象的属性集 概念模板描述了对象实例如何与一个或多个属性集相关联。一个属性集包含一个或多个属性。单个属性的数据类型是单值、枚举值、有界值、表值、引用值、列表值以及属性实例的组合。

属性集也可以与对象类型相关联,请参阅 用于类型的属性集 概念。然后,它们定义了所有相同类型实例的通用属性。如果同一属性(按名称)由同一属性集(按名称)提供,则直接分配给对象实例的属性将覆盖分配给对象类型的属性。

concept {
    IfcObject:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcPropertySet
    IfcPropertySet:HasProperties -> IfcPropertySingleValue
    IfcPropertySet:HasProperties -> IfcPropertyBoundedValue
    IfcPropertySet:HasProperties -> IfcPropertyEnumeratedValue
    IfcPropertySet:HasProperties -> IfcPropertyListValue
    IfcPropertySet:HasProperties -> IfcPropertyTableValue
    IfcPropertySingleValue -> Single_Value
    IfcPropertyBoundedValue -> Bounded_Value
    IfcPropertyEnumeratedValue -> Enumerated_Value
    IfcPropertyListValue -> List_Value
    IfcPropertyTableValue -> Table_Value
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcPropertySet:Name[binding="PsetName"]
    IfcPropertySet:HasProperties[binding="Properties"]
}

此概念可应用于以下资源

Spatial Interference General

空间干扰关系 概念定义了空间元素(如设施 (IfcFacility & 特殊子类型) 或设施部件 (IfcFacilityPart 具有领域特定预定义类型))跨越专业空间层级分支与其他空间元素发生干扰或接口的关系。IfcSpatialElement 实体应通过其 IfcSpatialElement.Name 属性进行标识,并且应包含一个可选的 IfcRelInterferesElements.InterferenceType 来描述接口或干扰的性质。

一个简单的例子是包含道路或铁路开发项目的桥梁部分。IfcRelInterferesElements 用于语义链接穿过桥梁的道路或铁路的空间段与相关的桥梁段,并指定相关的干扰类型。这种语义关系提供了一个易于查询的连接,用于识别需要跨越道路设计团队和桥梁设计团队等专业的空间元素。空间层级结构的组织方式取决于用户和项目。

concept {
    IfcSpatialElement_0:InterferesElements -> IfcRelInterferesElements:RelatingElement
    IfcSpatialElement_0:Name -> IfcLabel_1
    IfcRelInterferesElements:RelatedElement -> IfcSpatialElement_1
    IfcRelInterferesElements:InterferenceType -> IfcIdentifier
    IfcSpatialElement_1:Name -> IfcLabel_0
    IfcSpatialElement_0:InterferesElements[binding="InterferesSpatialElements"]
    IfcRelInterferesElements:RelatedElement[binding="RelatedSpatialElement"]
    IfcSpatialElement_1:Name[binding="RelatedSpatialElementName"]
    IfcRelInterferesElements:InterferenceType[binding="InterferenceType"]
    IfcSpatialElement_0:Name[binding="SpatialElementName"]
}
Spatial Interference With Zones General

带区域的空间干扰关系 概念是 空间干扰关系 概念的扩展,它定义了空间元素(如设施 (IfcFacility & 特殊子类型) 或设施部件 (IfcFacilityPart 具有领域特定预定义类型))跨越专业空间层级分支与其他空间元素发生干扰或接口的关系,并通过 IfcRelInterferesElements.InterferenceSpace 属性将相关干扰 IfcSpatialZone 扩展到数据集。实现 IfcSpatialZone 的实体应始终将 PredefinedType 值设置为 INTERFERENCE

实现 IfcSpatialZone 的添加通过以下方式扩展了此关系的功能:

  • 能够将属性集附加到协同工程(或干扰)区域。
  • 允许明确定义代表 IfcSpatialElement 实体发生干扰的区域的共享占地面积或主体几何形状,而不会影响干扰 IfcSpatialElement 实体的占地面积或主体几何形状。
  • 产品仍然位于领域空间结构内,并可以使用相对定位。

带区域的空间干扰关系 概念旨在涵盖复杂的用例,其中干扰会产生协同工程区域,多个团队必须在同一空间区域内协作,同时保持对其领域元素的拥有权和权利。一个常见的例子是铁路和道路之间的平交道口。道路和铁路层级结构都有一个与平交道口相关的段,并且定义了 IfcRelInterferesElements 关系来编码这种连接。然后,该关系通过 IfcSpatialZone 进行扩展,该 IfcSpatialZone 定义了协同工程区域以及特定的重叠占地面积或主体几何形状。然后可以将属性集附加到 IfcSpatialZone,并且可以使用明确的占地面积或主体几何形状来进行自动碰撞检测以及跨领域模型更新的批准/通知。

concept {
    IfcSpatialElement_0:InterferesElements -> IfcRelInterferesElements:RelatingElement
    IfcSpatialElement_0:Name -> IfcLabel_1
    IfcRelInterferesElements:RelatedElement -> IfcSpatialElement_1
    IfcRelInterferesElements:InterferenceType -> IfcIdentifier
    IfcRelInterferesElements:InterferenceSpace -> IfcSpatialZone
    IfcSpatialElement_1:Name -> IfcLabel_0
    IfcSpatialZone:PredefinedType -> IfcSpatialZoneTypeEnum
    IfcSpatialZoneTypeEnum -> constraint_0
    constraint_0[label="=INTERFERENCE"]
    IfcSpatialElement_0:InterferesElements[binding="InterferesSpatialElements"]
    IfcRelInterferesElements:RelatedElement[binding="RelatedSpatialElement"]
    IfcSpatialElement_1:Name[binding="RelatedSpatialElementName"]
    IfcRelInterferesElements:InterferenceType[binding="InterferenceType"]
    IfcRelInterferesElements:InterferenceSpace[binding="InteferenceZone"]
    IfcSpatialZone:PredefinedType[binding="SpatialZoneType"]
    IfcSpatialElement_0:Name[binding="SpatialElementName"]
}
Aggregation General

聚合表示整体结构(称为“复合体”)与从属组件(称为“部分”)之间的内部无序部分组成关系。聚合的概念有多种用法。例如:

  • 聚合用于建筑构件,以指示墙体内的龙骨等部分;
  • 聚合用于空间元素,以指示空间结构,例如建筑物内的楼层;
  • 聚合用于系统,以指示子系统,例如分支电路。

聚合是一种双向关系,从复合体到其部分的这种关系称为分解(Decomposition),从部分到其复合体的这种关系称为组合(Composition)。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
}
Approval Association General

概念 批准关联 描述了对象或对象类型如何关联批准,指示谁需要批准数据、是否已批准的状态以及批准的日期/时间。批准可能需要多个方扮演各种角色。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesApproval:RelatedObjects
    IfcRelAssociatesApproval:RelatingApproval -> IfcApproval
    IfcApproval:Name -> IfcLabel_0
    IfcApproval:TimeOfApproval -> IfcDateTime
    IfcApproval:Status -> IfcLabel_1
}
Assignment to Group General

_分配到组_建立对象到组的分配,组是对象的任意集合。它是_组分配_的补充概念模板,定义了对象如何被组分配。

分组关系除了将对象分组外,不具有任何其他含义。它是非层次化的,意味着对象可以被分配到多个组,并且不干扰其他关系概念,例如_元素分解_。分组关系允许子组被分组到组中。

concept {
    IfcObject:HasAssignments -> IfcRelAssignsToGroup:RelatedObjects
    IfcObject:HasAssignments[binding="IsAssigned"]
}
Body Geometry General

IfcProduct 的主体或实体模型几何表示通常使用镶嵌(Tessellation)或边界表示(Brep)定义。子类型可以提供关于其他可用表示类型的建议。持有此几何表示的 IfcShapeRepresentation 的以下属性值应被使用:

Box Geometry General

元素可以具有描述对象最小边界框尺寸的简化“盒子”表示。此类表示可用于更高效的空间索引或命中测试。

“盒子”表示的表示标识符、类型以及唯一允许的单个表示项是:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcBoundingBox
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Box"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=BoundingBox"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Classification Association General

任何对象实例或对象类型都可以具有对特定分类引用的引用,即对分类系统中特定方面的引用。

CoG Geometry General

元素可能具有描述重心(Center of Gravity)的“CoG”表示形式,该表示形式为一个点。此表示形式可用于允许验证检查,以在考虑可接受的数值容差的情况下,验证导入的“Body”形状表示后的重心是否与导出时创建的显式值匹配。

“CoG”表示形式的表示标识符、类型以及唯一允许的单个表示项为:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcCartesianPoint
    IfcLabel_0 -> constraint_0
    constraint_0[label="=CoG"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Constraint Association General

概念 约束关联 描述了对象或对象类型如何关联约束,指示需要满足的定性目标或定量指标。

基于指标的约束是可衡量的,使得指标有效的状态是计算机可解释的。指标约束基于简单的条件逻辑,例如大于特定值或包含在指定列表或表中。约束可以使用布尔逻辑(如 AND、OR、XOR 或 NOT)组合多个指标。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesConstraint:RelatedObjects
    IfcRelAssociatesConstraint:RelatingConstraint -> IfcObjective
    IfcObjective:BenchmarkValues -> IfcMetric
    IfcObjective:ObjectiveQualifier -> IfcObjectiveEnum
    IfcObjective:LogicalAggregator -> IfcLogicalOperatorEnum
    IfcMetric:DataValue -> IfcMetricValueSelect
    IfcMetric:DataValue -> IfcAppliedValue_0
    IfcMetric:DataValue -> IfcTable
    IfcMetric:Benchmark -> IfcBenchmarkEnum
    IfcMetric:ReferencePath -> IfcReference_1
    IfcMetric:Name -> IfcLabel_1
    IfcMetric:Description -> IfcText_1
    IfcAppliedValue_0:ArithmeticOperator -> IfcArithmeticOperatorEnum
    IfcAppliedValue_0:Components -> IfcAppliedValue_1
    IfcAppliedValue_0:AppliedValue -> IfcLengthMeasure
    IfcAppliedValue_0:AppliedValue -> IfcReal
    IfcTable:Rows -> IfcTableRow
    IfcTable:Columns -> IfcTableColumn
    IfcTableColumn:Identifier -> IfcIdentifier
    IfcTableColumn:Name -> IfcLabel_0
    IfcTableColumn:Description -> IfcText_0
    IfcTableColumn:ReferencePath -> IfcReference_0
    IfcMetric:DataValue[binding="DataValue"]
    IfcReference_1:AttributeIdentifier[binding="Attribute1"]
}
Document Association General

概念 文档关联 描述了对象或对象类型如何关联文档,指示外部文件。文档可以整体引用,例如用于捕获产品手册、数据表、多媒体内容或缩略图。文档中的内容可以从任何对象引用,并可用于同步其他文件中的信息,例如项目管理应用程序的项目计划。

文档的典型元数据,如发布日期、编辑者等,可以与关联一起捕获,但文档内容仍保留在外部文件中。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcRelAssociatesDocument:Name -> IfcLabel_0
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentReference:Location -> IfcURIReference
    IfcDocumentReference:Identification -> IfcIdentifier
    IfcDocumentReference:Name -> IfcLabel_1
    IfcDocumentReference:Description -> IfcText
    IfcRelAssociatesDocument:Name[binding="Name"]
}
Library Association General

概念 库关联 描述了对象和对象类型如何关联库实体,指示另一个数据源,例如来自模型服务器、产品库或外部数据库或系统,这些数据源用更多详细信息丰富数据。库可以整体从项目或项目库中引用,指示数据的源和版本。库中的内容可以从项目或项目库中的任何对象、类型对象、属性和某些资源模式实体中引用。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryReference
    IfcLibraryReference:Location -> IfcURIReference
    IfcLibraryReference:Identification -> IfcIdentifier
    IfcLibraryReference:Name -> IfcLabel
    IfcLibraryReference:Description -> IfcText
    IfcLibraryReference:Language -> IfcLanguageId
    IfcLibraryReference:ReferencedLibrary -> IfcLibraryInformation
    IfcRelAssociatesLibrary:RelatingLibrary[binding="RelatingLibrary"]
}
Mapped Geometry General

元素可以具有“映射几何体”表示形式,该表示形式在相应的对象类型处重用了“对象类型定义”概念中的“对象类型形状”概念。

映射几何体表示形式的表示标识符是任何其他有效的几何表示形式标识符,例如“Body”、“FootPrint”或“Axis”。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation_0
    IfcShapeRepresentation_0:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation_0:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation_0:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation_0:Items -> IfcMappedItem
    IfcMappedItem:MappingSource -> IfcRepresentationMap
    IfcMappedItem:MappingTarget -> IfcCartesianTransformationOperator3D
    IfcMappedItem:MappingTarget -> IfcCartesianTransformationOperator3DnonUniform
    IfcRepresentationMap:MappingOrigin -> IfcAxis2Placement3D
    IfcRepresentationMap:MappedRepresentation -> IfcShapeRepresentation_1
    IfcAxis2Placement3D:Location -> IfcCartesianPoint_0
    IfcAxis2Placement3D:Axis -> IfcDirection_0
    IfcAxis2Placement3D:RefDirection -> IfcDirection_1
    IfcCartesianTransformationOperator3D:Axis1 -> IfcDirection_2
    IfcCartesianTransformationOperator3D:Axis2 -> IfcDirection_3
    IfcCartesianTransformationOperator3D:LocalOrigin -> IfcCartesianPoint_1
    IfcCartesianTransformationOperator3D:Axis3 -> IfcDirection_4
    IfcShapeRepresentation_0:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation_0:RepresentationType[binding="Type"]
}
Material Association General

任何产品或产品类型都可以关联材料,以指示对象的物理组成。

材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
}
Material Single General

材料直接与产品和产品类型关联,以表示整个对象的均匀材料。

材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObjectIfcObject 上进行关联,则直接分配给 IfcObject 的材料具有优先权。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
    IfcRelAssociatesMaterial:RelatingMaterial -> IfcMaterial
    IfcMaterial -> Material
}
Nesting General

嵌套表示主体结构(称为“主机”)与附加组件(称为“被托管元素”)之间的外部有序部分组成关系。嵌套的概念有多种用法。例如:

  • 嵌套用于产品构件,以指示外部可连接部件,例如安装在水槽上的水龙头或安装在接线盒内的开关。
  • 嵌套用于控制对象,以指示规范层次结构。
  • 嵌套用于过程对象,以指示可能并行或串行发生的从属过程。
  • 嵌套用于资源对象,以指示可能并行或串行发生的从属资源分配。

嵌套是一种双向关系,从主机结构到其附加组件的关系称为嵌套(Nesting),从组件到其包含结构的关系称为托管(Hosting)。

concept {
    IfcObjectDefinition:IsNestedBy -> IfcRelNests:RelatingObject
}
Object Predefined Type General

======================

许多对象实例具有一个名为 PredefinedType 的特性,该特性是一个特定的枚举。这种预定义类型本质上提供了另一种级别的“通过继承进行分类”,以在无需额外子类型的情况下进一步区分对象。预定义类型不仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。此类预定义类型通过为 PredefinedType 特性选择正确的枚举值来添加。如果需要自定义值,则必须使用 ObjectType 特性来定义此类自定义类型,而 PredefinedType 则设置为 USERDEFINED

Object Occurrence Predefined Type 提供的主要特性是:

  • PredefinedType:包含实体特定的预定义类型枚举,以进一步分类实体
  • ObjectType:允许自定义值,如果没有适用的枚举值

如果对象通过 IfcTypeObject 进行类型化,则仅当 IfcTypeObject 处的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例处的 PredefinedType

请注意,PredefinedType 特性本身是在继承层次结构的叶类中定义的,并为该给定叶类提供了一个特定的枚举特性。

concept {
    IfcObject:ObjectType -> IfcLabel
    IfcObject:IsTypedBy -> IfcRelDefinesByType:RelatedObjects
    IfcRelDefinesByType:RelatingType -> IfcTypeObject
    IfcObject:ObjectType[binding="UserDefinedType"]
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcTypeObject:ElementType[binding="TypeUserdefinedType"]
    IfcTypeObject:PredefinedType[binding="TypePredefinedType"]
}
Object Typing General

任何对象实例都可以通过被分配给一个使用此概念的通用对象类型来类型化。通过在 IfcObject 的子类型级别覆盖此概念,引入了一个限制可分配的 IfcTypeObject 子类型的特定规则。

此概念可应用于以下资源

Object User Identity General

特性 Name 和可选的 Description 可用于 IfcObject 的所有子类型。对于那些具有对象类型定义的子类型,例如 IfcBeam - IfcBeamType,通用的 Name 和可选的 Description 与对象类型相关联。

Product Geometric Representation General

任何 IfcProduct 的几何表示由 IfcProductDefinitionShape 提供,允许进行多个几何表示。它使用 Product Placement 概念,利用 IfcLocalPlacement 建立对象坐标系,所有几何表示都基于该坐标系。

Product Geometry Colour General
concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:Items -> IfcSolidModel
    IfcShapeRepresentation:Items -> IfcTessellatedFaceSet
    IfcSolidModel:StyledByItem -> IfcStyledItem:Item
    IfcStyledItem:Styles -> IfcSurfaceStyle
    IfcSurfaceStyle -> Surface_Color_Style
    IfcTessellatedFaceSet:HasColours -> IfcIndexedColourMap:MappedTo
    IfcIndexedColourMap:Opacity -> IfcNormalisedRatioMeasure
    IfcIndexedColourMap:Colours -> IfcColourRgbList
    IfcIndexedColourMap:ColourIndex -> IfcPositiveInteger
}
Product Geometry Layer General
concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:LayerAssignments -> IfcPresentationLayerAssignment:AssignedItems
    IfcPresentationLayerAssignment -> Layer
}
Product Local Placement General

产品实例可以相对于其所包含的位置进行三维空间定位。放置由相对位置(X、Y、Z 坐标)、水平参考方向和垂直轴方向定义。在最外层,相对方向根据表示上下文定义;例如,+X 可能指向东方,+Y 可能指向北方,+Z 可能指向上方。

放置遵循聚合和包含关系,如下所示:

  • 在最外层,场地根据纬度、经度和海拔进行全局定位;
  • 对于空间结构,定位相对于聚合。例如,一个场地可以聚合多个建筑,每个建筑可以聚合多个楼层,每个楼层可以聚合多个空间;
  • 对于建筑构件,定位相对于包含的空间结构。例如,一个楼层可以包含楼板、墙体、柱子和梁;
  • 对于聚合部件,定位相对于聚合。例如,一个楼梯可以聚合一个或多个楼梯段;
  • 对于特征构件,定位相对于受影响的建筑构件。例如,一个洞口构件相对于其所在的墙体进行定位,而该墙体又相对于楼层进行定位;
  • 对于填充物,定位相对于被填充的洞口。例如,一扇门相对于一个洞口进行定位,而该洞口又相对于墙体进行定位;
  • 对于分配端口,定位相对于包含的分配构件。例如,一个空气终端可能有一个用于管道段或配件的端口连接;
  • 对于分配构件,定位相对于包含的空间结构,但可能受端口连接的约束。例如,一个电气接线盒可能填充墙体内的某个洞口,并且该接线盒可能包含用于包含的插座或开关的端口;这些连接构件的放置相对于接线盒的连接端口受到约束。再举一个例子,一个空气终端可能填充一个相对于空间进行放置的天花板覆盖层;连接管道配件的放置可能相对于空气终端受到约束。

如果包含的空间结构包含一个网格,则放置也可以基于相对于网格坐标。在某些用例中,可以通过省略 IfcObjectPlacement 来使用绝对放置。在这种情况下,形状表示在世界坐标系中定义。

concept {
    IfcProduct:ObjectPlacement -> IfcLocalPlacement_0
    IfcLocalPlacement_0:RelativePlacement -> IfcAxis2Placement3D
    IfcLocalPlacement_0:PlacementRelTo -> IfcLocalPlacement_1
    IfcLocalPlacement_1:PlacesObject -> IfcElement:ObjectPlacement
    IfcLocalPlacement_1:PlacesObject -> IfcSpatialElement:ObjectPlacement
    IfcElement:Name -> IfcLabel_0
    IfcSpatialElement:Name -> IfcLabel_1
    IfcProduct:ObjectPlacement[binding="HasPlacement"]
    IfcLocalPlacement_1:PlacesObject[binding="RelativeToElement"]
    IfcElement:Name[binding="ElementName"]
    IfcSpatialElement:Name[binding="SpatialElementName"]
}
Product Relative Positioning General

如果 IfcProductProduct Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProductIfcPositioningElement 的信息。

Product Span Positioning General

_IfcProduct_可以相对于两个_IfcReferent_实体进行放置,这两个实体指示产品在直线段上的起始和结束位置。

concept {
    IfcProduct:PositionedRelativeTo -> IfcRelPositions_0:RelatedProducts
    IfcProduct:PositionedRelativeTo -> IfcRelPositions_1:RelatedProducts
    IfcRelPositions_0:RelatingPositioningElement -> IfcReferent_0
    IfcRelPositions_0:Name -> IfcLabel_0
    IfcReferent_0:PredefinedType -> IfcReferentTypeEnum_0
    IfcRelPositions_1:RelatingPositioningElement -> IfcReferent_1
    IfcRelPositions_1:Name -> IfcLabel_1
    IfcReferent_1:PredefinedType -> IfcReferentTypeEnum_1
    IfcProduct:PositionedRelativeTo[binding="EndPositionedRelativeTo"]
    IfcReferent_0:PredefinedType[binding="StartPositionType"]
    IfcRelPositions_0:Name[binding="StartPositionName"]
    IfcReferent_1:PredefinedType[binding="EndPositionType"]
    IfcRelPositions_1:Name[binding="EndPositionName"]
}
Product Topology Representation General

产品的拓扑可以以多种方式表示,以满足不同的目的。每种表示都有一个众所周知的字符串标识符和一个特定的表示上下文。可能存在多个表示上下文来描述用于各种用途的拓扑。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcTopologyRepresentation
    IfcTopologyRepresentation:ContextOfItems -> IfcRepresentationContext
    IfcTopologyRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcTopologyRepresentation:RepresentationType -> IfcLabel_1
}
Property Sets for Performance General

对于性能历史记录,属性以时间序列的形式存在,用于跟踪特定时间点的数据。

concept {
    IfcObject:HasAssignments -> IfcRelAssignsToControl:RelatedObjects
    IfcRelAssignsToControl:RelatingControl -> IfcPerformanceHistory:Controls
    IfcPerformanceHistory:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcPropertySet
    IfcPropertySet:HasProperties -> IfcPropertyReferenceValue
    IfcPropertyReferenceValue:PropertyReference -> IfcRegularTimeSeries
    IfcRegularTimeSeries:Values -> IfcTimeSeriesValue
    IfcPropertyReferenceValue:PropertyReference -> IfcIrregularTimeSeries
    IfcIrregularTimeSeries:Values -> IfcIrregularTimeSeriesValue
    IfcIrregularTimeSeriesValue:TimeStamp -> IfcDateTime
    IfcIrregularTimeSeriesValue:ListValues -> IfcValue

    IfcPropertySet:Name[binding="PsetName"]
    IfcObject:PredefinedType[binding="PredefinedType"]
}

此概念可应用于以下资源

Property Sets with Override General

任何对象实例都可以拥有属性集,可以直接在对象实例上作为元素特定的属性集,也可以在对象类型上作为类型属性集。在这种情况下,提供给对象实例的特性是元素特定特性和类型特性的组合。如果在实例和类型特性中都定义了相同的特性(在同一属性集中),则实例特性的特性值将覆盖类型特性的特性值。

Quantity Sets General

任何对象的专门化都可以与多个数量集实例相关联。一个数量集包含多个数量实例。数量实例值的类型是计数、长度、面积、体积、重量、时间,或数量的组合。每个数量由其名称、值以及可选的描述和公式定义。

数量集通过 IfcElementQuantity 的实例来表示,其中 Name 属性确定了数量集的通用标识符。本规范包含一些预定义数量集,每个数量集都提供了模板定义。模板的名称必须用作 Name 属性的值。MethodOfMeasurement 属性指定了计算各个数量值的方法。对于本规范中包含的数量集模板,MethodOfMeasurement 的值应为“BaseQuantities”。

concept {
    IfcObject:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcElementQuantity
    IfcElementQuantity:Name -> IfcLabel_0
    IfcElementQuantity:Description -> IfcText
    IfcElementQuantity:MethodOfMeasurement -> IfcLabel_1
    IfcElementQuantity:Quantities -> IfcQuantityLength
    IfcElementQuantity:Quantities -> IfcQuantityArea
    IfcElementQuantity:Quantities -> IfcQuantityVolume
    IfcElementQuantity:Quantities -> IfcQuantityWeight
    IfcElementQuantity:Quantities -> IfcQuantityCount
    IfcElementQuantity:Quantities -> IfcQuantityTime
    IfcQuantityLength -> Length_Quantity
    IfcQuantityArea -> Area_Quantity
    IfcQuantityVolume -> Volume_Quantity
    IfcQuantityWeight -> Weight_Quantity
    IfcQuantityCount -> Count_Quantity
    IfcQuantityTime -> Time_Quantity
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcElementQuantity:Name[binding="QsetName"]
    IfcElementQuantity:Quantities[binding="Quantities"]
}
Reference Geometry General

几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference SweptSolid Geometry General

“参考扫掠实体几何体”是通过扫掠实体模型表示产品三维形状的参考表示形式,仅允许基本的拉伸面积实体和旋转面积实体。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcSweptAreaSolid
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=SweptSolid"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference SweptSolid PolyCurve Geometry General

“参考扫掠实体多段线几何体”是通过扫掠实体模型表示产品三维形状的参考表示形式,仅允许基本的拉伸面积实体和旋转面积实体。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcSweptAreaSolid
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=SweptSolid"]
    IfcSweptAreaSolid -> Extruded_Area_PolyCurve_Profile
    IfcSweptAreaSolid -> Revolved_Area_PolyCurve_Profile
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference Tessellation Geometry General

“参考镶嵌几何体”是通过使用镶嵌模型表示产品三维形状的参考表示形式。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcTriangulatedFaceSet
    IfcShapeRepresentation:Items -> IfcPolygonalFaceSet
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=Tessellation"]
    IfcTriangulatedFaceSet -> Triangulated_Geometry
    IfcPolygonalFaceSet -> Polygonal_Geometry
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

Spatial Container General

“空间容器”概念将空间元素定义为物理元素或直接与空间容器相关的其他元素(如注释或网格)的空间容器。

“空间容器”概念通过_IfcSpatialElement_子类型与所包含元素之间的_IfcRelContainedInSpatialStructure_对象化关系来实现。_IfcSpatialElement_子类型上的逆向关系_ContainsElements_引用所包含的物理元素。

concept {
    IfcSpatialElement:ContainsElements -> IfcRelContainedInSpatialStructure:RelatingStructure
    IfcRelContainedInSpatialStructure:RelatedElements -> IfcProduct
    IfcRelContainedInSpatialStructure:RelatedElements[binding="Type"]
}

此概念可应用于以下资源

Spatial Element Attributes General

注意:此属性模板与其他类似模板一样,源自与 mvdXML 相关联的旧有要求,以及 MVD 定义交换信息要求的早期时代。此类模板不再为规范增加价值,也不会传达超出模式中已定义信息的内容。此外,一些模板引用了已弃用的实体,可能导致不必要的混淆。 作为清理文档的更广泛工作的一部分,此模板和其他非必需模板将在下一个版本中删除。

空间对象可以通过 LongName 属性进一步标识。此值通常对应于描述楼层或房间的建筑标识。虽然 Name 属性通常提供编码或缩写的标识符,但 LongName 提供该位置的功能名称,例如“接待区”。

concept {
    IfcSpatialElement:Name -> IfcLabel_0
    IfcSpatialElement:LongName -> IfcLabel_1
    IfcSpatialElement:Name[binding="Name"]
    IfcSpatialElement:LongName[binding="LongName"]
}
Spatial Service Connectivity General

一个系统(例如,配电系统)服务于特定的空间结构,该结构可以是整个设施(及其特定子类型,例如建筑物、桥梁、道路或海洋设施)、设施的一部分、楼层或这些结构的任何部分。 相关系统(IfcSystem)应通过其_Name_特性可供人类识别。 此模板中使用_IfcRelReferencedInSpatialStructure_提供了跨越空间和功能层级的关系,实现了功能系统的空间覆盖。

concept {
    IfcSpatialElement:ReferencesElements -> IfcRelReferencedInSpatialStructure:RelatingStructure
    IfcRelReferencedInSpatialStructure:RelatedElements -> IfcSystem:ReferencedInStructures
    IfcSystem:Name -> IfcLabel
    IfcSpatialElement:ReferencesElements[binding="ReferencedElements"]
    IfcRelReferencedInSpatialStructure:RelatedElements[binding="RelatedSystems"]
    IfcSystem:Name[binding="SystemName"]
}
IfcExternalSpatialStructureElement (41)
Aggregation General

聚合表示整体结构(称为“复合体”)与从属组件(称为“部分”)之间的内部无序部分组成关系。聚合的概念有多种用法。例如:

  • 聚合用于建筑构件,以指示墙体内的龙骨等部分;
  • 聚合用于空间元素,以指示空间结构,例如建筑物内的楼层;
  • 聚合用于系统,以指示子系统,例如分支电路。

聚合是一种双向关系,从复合体到其部分的这种关系称为分解(Decomposition),从部分到其复合体的这种关系称为组合(Composition)。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
}
Approval Association General

概念 批准关联 描述了对象或对象类型如何关联批准,指示谁需要批准数据、是否已批准的状态以及批准的日期/时间。批准可能需要多个方扮演各种角色。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesApproval:RelatedObjects
    IfcRelAssociatesApproval:RelatingApproval -> IfcApproval
    IfcApproval:Name -> IfcLabel_0
    IfcApproval:TimeOfApproval -> IfcDateTime
    IfcApproval:Status -> IfcLabel_1
}
Assignment to Group General

_分配到组_建立对象到组的分配,组是对象的任意集合。它是_组分配_的补充概念模板,定义了对象如何被组分配。

分组关系除了将对象分组外,不具有任何其他含义。它是非层次化的,意味着对象可以被分配到多个组,并且不干扰其他关系概念,例如_元素分解_。分组关系允许子组被分组到组中。

concept {
    IfcObject:HasAssignments -> IfcRelAssignsToGroup:RelatedObjects
    IfcObject:HasAssignments[binding="IsAssigned"]
}
Body Geometry General

IfcProduct 的主体或实体模型几何表示通常使用镶嵌(Tessellation)或边界表示(Brep)定义。子类型可以提供关于其他可用表示类型的建议。持有此几何表示的 IfcShapeRepresentation 的以下属性值应被使用:

Box Geometry General

元素可以具有描述对象最小边界框尺寸的简化“盒子”表示。此类表示可用于更高效的空间索引或命中测试。

“盒子”表示的表示标识符、类型以及唯一允许的单个表示项是:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcBoundingBox
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Box"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=BoundingBox"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Classification Association General

任何对象实例或对象类型都可以具有对特定分类引用的引用,即对分类系统中特定方面的引用。

CoG Geometry General

元素可能具有描述重心(Center of Gravity)的“CoG”表示形式,该表示形式为一个点。此表示形式可用于允许验证检查,以在考虑可接受的数值容差的情况下,验证导入的“Body”形状表示后的重心是否与导出时创建的显式值匹配。

“CoG”表示形式的表示标识符、类型以及唯一允许的单个表示项为:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcCartesianPoint
    IfcLabel_0 -> constraint_0
    constraint_0[label="=CoG"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Constraint Association General

概念 约束关联 描述了对象或对象类型如何关联约束,指示需要满足的定性目标或定量指标。

基于指标的约束是可衡量的,使得指标有效的状态是计算机可解释的。指标约束基于简单的条件逻辑,例如大于特定值或包含在指定列表或表中。约束可以使用布尔逻辑(如 AND、OR、XOR 或 NOT)组合多个指标。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesConstraint:RelatedObjects
    IfcRelAssociatesConstraint:RelatingConstraint -> IfcObjective
    IfcObjective:BenchmarkValues -> IfcMetric
    IfcObjective:ObjectiveQualifier -> IfcObjectiveEnum
    IfcObjective:LogicalAggregator -> IfcLogicalOperatorEnum
    IfcMetric:DataValue -> IfcMetricValueSelect
    IfcMetric:DataValue -> IfcAppliedValue_0
    IfcMetric:DataValue -> IfcTable
    IfcMetric:Benchmark -> IfcBenchmarkEnum
    IfcMetric:ReferencePath -> IfcReference_1
    IfcMetric:Name -> IfcLabel_1
    IfcMetric:Description -> IfcText_1
    IfcAppliedValue_0:ArithmeticOperator -> IfcArithmeticOperatorEnum
    IfcAppliedValue_0:Components -> IfcAppliedValue_1
    IfcAppliedValue_0:AppliedValue -> IfcLengthMeasure
    IfcAppliedValue_0:AppliedValue -> IfcReal
    IfcTable:Rows -> IfcTableRow
    IfcTable:Columns -> IfcTableColumn
    IfcTableColumn:Identifier -> IfcIdentifier
    IfcTableColumn:Name -> IfcLabel_0
    IfcTableColumn:Description -> IfcText_0
    IfcTableColumn:ReferencePath -> IfcReference_0
    IfcMetric:DataValue[binding="DataValue"]
    IfcReference_1:AttributeIdentifier[binding="Attribute1"]
}
Document Association General

概念 文档关联 描述了对象或对象类型如何关联文档,指示外部文件。文档可以整体引用,例如用于捕获产品手册、数据表、多媒体内容或缩略图。文档中的内容可以从任何对象引用,并可用于同步其他文件中的信息,例如项目管理应用程序的项目计划。

文档的典型元数据,如发布日期、编辑者等,可以与关联一起捕获,但文档内容仍保留在外部文件中。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcRelAssociatesDocument:Name -> IfcLabel_0
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentReference:Location -> IfcURIReference
    IfcDocumentReference:Identification -> IfcIdentifier
    IfcDocumentReference:Name -> IfcLabel_1
    IfcDocumentReference:Description -> IfcText
    IfcRelAssociatesDocument:Name[binding="Name"]
}
FootPrint GeomSet Geometry General

“楼板平面几何集几何体”是元素几何表示形式的楼板平面投影的标准表示形式,主要包含二维曲线。

用于包含此几何表示形式的 IfcShapeRepresentation 的以下特性值被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcGeometricCurveSet
    IfcLabel_0 -> constraint_0
    constraint_0[label="=FootPrint"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=GeometricCurveSet"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
    IfcShapeRepresentation:Items[binding="Items"]
}
Group Spatial Connectivity General

“群组空间连接”概念允许将代表对象分组的_IfcGroup_(及其相关子类型)与特定的空间结构相关联,该空间结构可以是整个设施(及其特定子类型,例如建筑物、桥梁、道路或海洋设施)、设施的一部分、楼层或这些结构的任何部分。

相关群组(IfcGroup)应通过其_Name_特性可供人类识别。

相关关系(IfcRelReferencedInSpatialStructure)可以通过_Name_和_Description_特性提供连接的上下文。

此模板中使用_IfcRelReferencedInSpatialStructure_提供了跨越空间和功能层级的关系,实现了功能群组的空间覆盖。

允许_IfcGroup_不与任何空间结构元素相关联。当_IfcGroup_ 连接到空间结构时,必须通过IfcRelDeclares关系使用“项目声明模板”将其声明给_IfcProject_,或者通过组合使用父_IfcGroup_(或其相关子类型),并且该父_IfcGroup_要么使用“群组空间连接”连接到空间结构,要么使用“项目声明模板”声明给_IfcProject_。

concept {
    IfcSpatialElement:ReferencesElements -> IfcRelReferencedInSpatialStructure:RelatingStructure
    IfcRelReferencedInSpatialStructure:RelatedElements -> IfcGroup:ReferencedInStructures
    IfcRelReferencedInSpatialStructure:Name -> IfcLabel_1
    IfcGroup:Name -> IfcLabel_0
    IfcSpatialElement:ReferencesElements[binding="ReferencedElements"]
    IfcRelReferencedInSpatialStructure:RelatedElements[binding="RelatedGroups"]
    IfcGroup:Name[binding="GroupName"]
    IfcRelReferencedInSpatialStructure:Name[binding="ReferenceContext"]
}
Library Association General

概念 库关联 描述了对象和对象类型如何关联库实体,指示另一个数据源,例如来自模型服务器、产品库或外部数据库或系统,这些数据源用更多详细信息丰富数据。库可以整体从项目或项目库中引用,指示数据的源和版本。库中的内容可以从项目或项目库中的任何对象、类型对象、属性和某些资源模式实体中引用。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryReference
    IfcLibraryReference:Location -> IfcURIReference
    IfcLibraryReference:Identification -> IfcIdentifier
    IfcLibraryReference:Name -> IfcLabel
    IfcLibraryReference:Description -> IfcText
    IfcLibraryReference:Language -> IfcLanguageId
    IfcLibraryReference:ReferencedLibrary -> IfcLibraryInformation
    IfcRelAssociatesLibrary:RelatingLibrary[binding="RelatingLibrary"]
}
Mapped Geometry General

元素可以具有“映射几何体”表示形式,该表示形式在相应的对象类型处重用了“对象类型定义”概念中的“对象类型形状”概念。

映射几何体表示形式的表示标识符是任何其他有效的几何表示形式标识符,例如“Body”、“FootPrint”或“Axis”。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation_0
    IfcShapeRepresentation_0:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation_0:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation_0:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation_0:Items -> IfcMappedItem
    IfcMappedItem:MappingSource -> IfcRepresentationMap
    IfcMappedItem:MappingTarget -> IfcCartesianTransformationOperator3D
    IfcMappedItem:MappingTarget -> IfcCartesianTransformationOperator3DnonUniform
    IfcRepresentationMap:MappingOrigin -> IfcAxis2Placement3D
    IfcRepresentationMap:MappedRepresentation -> IfcShapeRepresentation_1
    IfcAxis2Placement3D:Location -> IfcCartesianPoint_0
    IfcAxis2Placement3D:Axis -> IfcDirection_0
    IfcAxis2Placement3D:RefDirection -> IfcDirection_1
    IfcCartesianTransformationOperator3D:Axis1 -> IfcDirection_2
    IfcCartesianTransformationOperator3D:Axis2 -> IfcDirection_3
    IfcCartesianTransformationOperator3D:LocalOrigin -> IfcCartesianPoint_1
    IfcCartesianTransformationOperator3D:Axis3 -> IfcDirection_4
    IfcShapeRepresentation_0:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation_0:RepresentationType[binding="Type"]
}
Material Association General

任何产品或产品类型都可以关联材料,以指示对象的物理组成。

材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
}
Material Single General

材料直接与产品和产品类型关联,以表示整个对象的均匀材料。

材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObjectIfcObject 上进行关联,则直接分配给 IfcObject 的材料具有优先权。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
    IfcRelAssociatesMaterial:RelatingMaterial -> IfcMaterial
    IfcMaterial -> Material
}
Nesting General

嵌套表示主体结构(称为“主机”)与附加组件(称为“被托管元素”)之间的外部有序部分组成关系。嵌套的概念有多种用法。例如:

  • 嵌套用于产品构件,以指示外部可连接部件,例如安装在水槽上的水龙头或安装在接线盒内的开关。
  • 嵌套用于控制对象,以指示规范层次结构。
  • 嵌套用于过程对象,以指示可能并行或串行发生的从属过程。
  • 嵌套用于资源对象,以指示可能并行或串行发生的从属资源分配。

嵌套是一种双向关系,从主机结构到其附加组件的关系称为嵌套(Nesting),从组件到其包含结构的关系称为托管(Hosting)。

concept {
    IfcObjectDefinition:IsNestedBy -> IfcRelNests:RelatingObject
}
Object Predefined Type General

======================

许多对象实例具有一个名为 PredefinedType 的特性,该特性是一个特定的枚举。这种预定义类型本质上提供了另一种级别的“通过继承进行分类”,以在无需额外子类型的情况下进一步区分对象。预定义类型不仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。此类预定义类型通过为 PredefinedType 特性选择正确的枚举值来添加。如果需要自定义值,则必须使用 ObjectType 特性来定义此类自定义类型,而 PredefinedType 则设置为 USERDEFINED

Object Occurrence Predefined Type 提供的主要特性是:

  • PredefinedType:包含实体特定的预定义类型枚举,以进一步分类实体
  • ObjectType:允许自定义值,如果没有适用的枚举值

如果对象通过 IfcTypeObject 进行类型化,则仅当 IfcTypeObject 处的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例处的 PredefinedType

请注意,PredefinedType 特性本身是在继承层次结构的叶类中定义的,并为该给定叶类提供了一个特定的枚举特性。

concept {
    IfcObject:ObjectType -> IfcLabel
    IfcObject:IsTypedBy -> IfcRelDefinesByType:RelatedObjects
    IfcRelDefinesByType:RelatingType -> IfcTypeObject
    IfcObject:ObjectType[binding="UserDefinedType"]
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcTypeObject:ElementType[binding="TypeUserdefinedType"]
    IfcTypeObject:PredefinedType[binding="TypePredefinedType"]
}
Object Typing General

任何对象实例都可以通过被分配给一个使用此概念的通用对象类型来类型化。通过在 IfcObject 的子类型级别覆盖此概念,引入了一个限制可分配的 IfcTypeObject 子类型的特定规则。

Object User Identity General

特性 Name 和可选的 Description 可用于 IfcObject 的所有子类型。对于那些具有对象类型定义的子类型,例如 IfcBeam - IfcBeamType,通用的 Name 和可选的 Description 与对象类型相关联。

Product Geometric Representation General

任何 IfcProduct 的几何表示由 IfcProductDefinitionShape 提供,允许进行多个几何表示。它使用 Product Placement 概念,利用 IfcLocalPlacement 建立对象坐标系,所有几何表示都基于该坐标系。

Product Geometry Colour General
concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:Items -> IfcSolidModel
    IfcShapeRepresentation:Items -> IfcTessellatedFaceSet
    IfcSolidModel:StyledByItem -> IfcStyledItem:Item
    IfcStyledItem:Styles -> IfcSurfaceStyle
    IfcSurfaceStyle -> Surface_Color_Style
    IfcTessellatedFaceSet:HasColours -> IfcIndexedColourMap:MappedTo
    IfcIndexedColourMap:Opacity -> IfcNormalisedRatioMeasure
    IfcIndexedColourMap:Colours -> IfcColourRgbList
    IfcIndexedColourMap:ColourIndex -> IfcPositiveInteger
}
Product Geometry Layer General
concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:LayerAssignments -> IfcPresentationLayerAssignment:AssignedItems
    IfcPresentationLayerAssignment -> Layer
}
Product Local Placement General

产品实例可以相对于其所包含的位置进行三维空间定位。放置由相对位置(X、Y、Z 坐标)、水平参考方向和垂直轴方向定义。在最外层,相对方向根据表示上下文定义;例如,+X 可能指向东方,+Y 可能指向北方,+Z 可能指向上方。

放置遵循聚合和包含关系,如下所示:

  • 在最外层,场地根据纬度、经度和海拔进行全局定位;
  • 对于空间结构,定位相对于聚合。例如,一个场地可以聚合多个建筑,每个建筑可以聚合多个楼层,每个楼层可以聚合多个空间;
  • 对于建筑构件,定位相对于包含的空间结构。例如,一个楼层可以包含楼板、墙体、柱子和梁;
  • 对于聚合部件,定位相对于聚合。例如,一个楼梯可以聚合一个或多个楼梯段;
  • 对于特征构件,定位相对于受影响的建筑构件。例如,一个洞口构件相对于其所在的墙体进行定位,而该墙体又相对于楼层进行定位;
  • 对于填充物,定位相对于被填充的洞口。例如,一扇门相对于一个洞口进行定位,而该洞口又相对于墙体进行定位;
  • 对于分配端口,定位相对于包含的分配构件。例如,一个空气终端可能有一个用于管道段或配件的端口连接;
  • 对于分配构件,定位相对于包含的空间结构,但可能受端口连接的约束。例如,一个电气接线盒可能填充墙体内的某个洞口,并且该接线盒可能包含用于包含的插座或开关的端口;这些连接构件的放置相对于接线盒的连接端口受到约束。再举一个例子,一个空气终端可能填充一个相对于空间进行放置的天花板覆盖层;连接管道配件的放置可能相对于空气终端受到约束。

如果包含的空间结构包含一个网格,则放置也可以基于相对于网格坐标。在某些用例中,可以通过省略 IfcObjectPlacement 来使用绝对放置。在这种情况下,形状表示在世界坐标系中定义。

concept {
    IfcProduct:ObjectPlacement -> IfcLocalPlacement_0
    IfcLocalPlacement_0:RelativePlacement -> IfcAxis2Placement3D
    IfcLocalPlacement_0:PlacementRelTo -> IfcLocalPlacement_1
    IfcLocalPlacement_1:PlacesObject -> IfcElement:ObjectPlacement
    IfcLocalPlacement_1:PlacesObject -> IfcSpatialElement:ObjectPlacement
    IfcElement:Name -> IfcLabel_0
    IfcSpatialElement:Name -> IfcLabel_1
    IfcProduct:ObjectPlacement[binding="HasPlacement"]
    IfcLocalPlacement_1:PlacesObject[binding="RelativeToElement"]
    IfcElement:Name[binding="ElementName"]
    IfcSpatialElement:Name[binding="SpatialElementName"]
}
Product Relative Positioning General

如果 IfcProductProduct Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProductIfcPositioningElement 的信息。

Product Span Positioning General

_IfcProduct_可以相对于两个_IfcReferent_实体进行放置,这两个实体指示产品在直线段上的起始和结束位置。

concept {
    IfcProduct:PositionedRelativeTo -> IfcRelPositions_0:RelatedProducts
    IfcProduct:PositionedRelativeTo -> IfcRelPositions_1:RelatedProducts
    IfcRelPositions_0:RelatingPositioningElement -> IfcReferent_0
    IfcRelPositions_0:Name -> IfcLabel_0
    IfcReferent_0:PredefinedType -> IfcReferentTypeEnum_0
    IfcRelPositions_1:RelatingPositioningElement -> IfcReferent_1
    IfcRelPositions_1:Name -> IfcLabel_1
    IfcReferent_1:PredefinedType -> IfcReferentTypeEnum_1
    IfcProduct:PositionedRelativeTo[binding="EndPositionedRelativeTo"]
    IfcReferent_0:PredefinedType[binding="StartPositionType"]
    IfcRelPositions_0:Name[binding="StartPositionName"]
    IfcReferent_1:PredefinedType[binding="EndPositionType"]
    IfcRelPositions_1:Name[binding="EndPositionName"]
}
Product Topology Representation General

产品的拓扑可以以多种方式表示,以满足不同的目的。每种表示都有一个众所周知的字符串标识符和一个特定的表示上下文。可能存在多个表示上下文来描述用于各种用途的拓扑。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcTopologyRepresentation
    IfcTopologyRepresentation:ContextOfItems -> IfcRepresentationContext
    IfcTopologyRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcTopologyRepresentation:RepresentationType -> IfcLabel_1
}
Property Sets for Objects General

用于对象的属性集 概念模板描述了对象实例如何与一个或多个属性集相关联。一个属性集包含一个或多个属性。单个属性的数据类型是单值、枚举值、有界值、表值、引用值、列表值以及属性实例的组合。

属性集也可以与对象类型相关联,请参阅 用于类型的属性集 概念。然后,它们定义了所有相同类型实例的通用属性。如果同一属性(按名称)由同一属性集(按名称)提供,则直接分配给对象实例的属性将覆盖分配给对象类型的属性。

concept {
    IfcObject:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcPropertySet
    IfcPropertySet:HasProperties -> IfcPropertySingleValue
    IfcPropertySet:HasProperties -> IfcPropertyBoundedValue
    IfcPropertySet:HasProperties -> IfcPropertyEnumeratedValue
    IfcPropertySet:HasProperties -> IfcPropertyListValue
    IfcPropertySet:HasProperties -> IfcPropertyTableValue
    IfcPropertySingleValue -> Single_Value
    IfcPropertyBoundedValue -> Bounded_Value
    IfcPropertyEnumeratedValue -> Enumerated_Value
    IfcPropertyListValue -> List_Value
    IfcPropertyTableValue -> Table_Value
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcPropertySet:Name[binding="PsetName"]
    IfcPropertySet:HasProperties[binding="Properties"]
}
Property Sets for Performance General

对于性能历史记录,属性以时间序列的形式存在,用于跟踪特定时间点的数据。

concept {
    IfcObject:HasAssignments -> IfcRelAssignsToControl:RelatedObjects
    IfcRelAssignsToControl:RelatingControl -> IfcPerformanceHistory:Controls
    IfcPerformanceHistory:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcPropertySet
    IfcPropertySet:HasProperties -> IfcPropertyReferenceValue
    IfcPropertyReferenceValue:PropertyReference -> IfcRegularTimeSeries
    IfcRegularTimeSeries:Values -> IfcTimeSeriesValue
    IfcPropertyReferenceValue:PropertyReference -> IfcIrregularTimeSeries
    IfcIrregularTimeSeries:Values -> IfcIrregularTimeSeriesValue
    IfcIrregularTimeSeriesValue:TimeStamp -> IfcDateTime
    IfcIrregularTimeSeriesValue:ListValues -> IfcValue

    IfcPropertySet:Name[binding="PsetName"]
    IfcObject:PredefinedType[binding="PredefinedType"]
}
Property Sets with Override General

任何对象实例都可以拥有属性集,可以直接在对象实例上作为元素特定的属性集,也可以在对象类型上作为类型属性集。在这种情况下,提供给对象实例的特性是元素特定特性和类型特性的组合。如果在实例和类型特性中都定义了相同的特性(在同一属性集中),则实例特性的特性值将覆盖类型特性的特性值。

Quantity Sets General

任何对象的专门化都可以与多个数量集实例相关联。一个数量集包含多个数量实例。数量实例值的类型是计数、长度、面积、体积、重量、时间,或数量的组合。每个数量由其名称、值以及可选的描述和公式定义。

数量集通过 IfcElementQuantity 的实例来表示,其中 Name 属性确定了数量集的通用标识符。本规范包含一些预定义数量集,每个数量集都提供了模板定义。模板的名称必须用作 Name 属性的值。MethodOfMeasurement 属性指定了计算各个数量值的方法。对于本规范中包含的数量集模板,MethodOfMeasurement 的值应为“BaseQuantities”。

concept {
    IfcObject:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcElementQuantity
    IfcElementQuantity:Name -> IfcLabel_0
    IfcElementQuantity:Description -> IfcText
    IfcElementQuantity:MethodOfMeasurement -> IfcLabel_1
    IfcElementQuantity:Quantities -> IfcQuantityLength
    IfcElementQuantity:Quantities -> IfcQuantityArea
    IfcElementQuantity:Quantities -> IfcQuantityVolume
    IfcElementQuantity:Quantities -> IfcQuantityWeight
    IfcElementQuantity:Quantities -> IfcQuantityCount
    IfcElementQuantity:Quantities -> IfcQuantityTime
    IfcQuantityLength -> Length_Quantity
    IfcQuantityArea -> Area_Quantity
    IfcQuantityVolume -> Volume_Quantity
    IfcQuantityWeight -> Weight_Quantity
    IfcQuantityCount -> Count_Quantity
    IfcQuantityTime -> Time_Quantity
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcElementQuantity:Name[binding="QsetName"]
    IfcElementQuantity:Quantities[binding="Quantities"]
}
Reference Geometry General

几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference SweptSolid Geometry General

“参考扫掠实体几何体”是通过扫掠实体模型表示产品三维形状的参考表示形式,仅允许基本的拉伸面积实体和旋转面积实体。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcSweptAreaSolid
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=SweptSolid"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference SweptSolid PolyCurve Geometry General

“参考扫掠实体多段线几何体”是通过扫掠实体模型表示产品三维形状的参考表示形式,仅允许基本的拉伸面积实体和旋转面积实体。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcSweptAreaSolid
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=SweptSolid"]
    IfcSweptAreaSolid -> Extruded_Area_PolyCurve_Profile
    IfcSweptAreaSolid -> Revolved_Area_PolyCurve_Profile
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference Tessellation Geometry General

“参考镶嵌几何体”是通过使用镶嵌模型表示产品三维形状的参考表示形式。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcTriangulatedFaceSet
    IfcShapeRepresentation:Items -> IfcPolygonalFaceSet
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=Tessellation"]
    IfcTriangulatedFaceSet -> Triangulated_Geometry
    IfcPolygonalFaceSet -> Polygonal_Geometry
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

Spatial Container General

“空间容器”概念将空间元素定义为物理元素或直接与空间容器相关的其他元素(如注释或网格)的空间容器。

“空间容器”概念通过_IfcSpatialElement_子类型与所包含元素之间的_IfcRelContainedInSpatialStructure_对象化关系来实现。_IfcSpatialElement_子类型上的逆向关系_ContainsElements_引用所包含的物理元素。

concept {
    IfcSpatialElement:ContainsElements -> IfcRelContainedInSpatialStructure:RelatingStructure
    IfcRelContainedInSpatialStructure:RelatedElements -> IfcProduct
    IfcRelContainedInSpatialStructure:RelatedElements[binding="Type"]
}
Spatial Element Attributes General

注意:此属性模板与其他类似模板一样,源自与 mvdXML 相关联的旧有要求,以及 MVD 定义交换信息要求的早期时代。此类模板不再为规范增加价值,也不会传达超出模式中已定义信息的内容。此外,一些模板引用了已弃用的实体,可能导致不必要的混淆。 作为清理文档的更广泛工作的一部分,此模板和其他非必需模板将在下一个版本中删除。

空间对象可以通过 LongName 属性进一步标识。此值通常对应于描述楼层或房间的建筑标识。虽然 Name 属性通常提供编码或缩写的标识符,但 LongName 提供该位置的功能名称,例如“接待区”。

concept {
    IfcSpatialElement:Name -> IfcLabel_0
    IfcSpatialElement:LongName -> IfcLabel_1
    IfcSpatialElement:Name[binding="Name"]
    IfcSpatialElement:LongName[binding="LongName"]
}
Spatial Interference General

空间干扰关系 概念定义了空间元素(如设施 (IfcFacility & 特殊子类型) 或设施部件 (IfcFacilityPart 具有领域特定预定义类型))跨越专业空间层级分支与其他空间元素发生干扰或接口的关系。IfcSpatialElement 实体应通过其 IfcSpatialElement.Name 属性进行标识,并且应包含一个可选的 IfcRelInterferesElements.InterferenceType 来描述接口或干扰的性质。

一个简单的例子是包含道路或铁路开发项目的桥梁部分。IfcRelInterferesElements 用于语义链接穿过桥梁的道路或铁路的空间段与相关的桥梁段,并指定相关的干扰类型。这种语义关系提供了一个易于查询的连接,用于识别需要跨越道路设计团队和桥梁设计团队等专业的空间元素。空间层级结构的组织方式取决于用户和项目。

concept {
    IfcSpatialElement_0:InterferesElements -> IfcRelInterferesElements:RelatingElement
    IfcSpatialElement_0:Name -> IfcLabel_1
    IfcRelInterferesElements:RelatedElement -> IfcSpatialElement_1
    IfcRelInterferesElements:InterferenceType -> IfcIdentifier
    IfcSpatialElement_1:Name -> IfcLabel_0
    IfcSpatialElement_0:InterferesElements[binding="InterferesSpatialElements"]
    IfcRelInterferesElements:RelatedElement[binding="RelatedSpatialElement"]
    IfcSpatialElement_1:Name[binding="RelatedSpatialElementName"]
    IfcRelInterferesElements:InterferenceType[binding="InterferenceType"]
    IfcSpatialElement_0:Name[binding="SpatialElementName"]
}
Spatial Interference With Zones General

带区域的空间干扰关系 概念是 空间干扰关系 概念的扩展,它定义了空间元素(如设施 (IfcFacility & 特殊子类型) 或设施部件 (IfcFacilityPart 具有领域特定预定义类型))跨越专业空间层级分支与其他空间元素发生干扰或接口的关系,并通过 IfcRelInterferesElements.InterferenceSpace 属性将相关干扰 IfcSpatialZone 扩展到数据集。实现 IfcSpatialZone 的实体应始终将 PredefinedType 值设置为 INTERFERENCE

实现 IfcSpatialZone 的添加通过以下方式扩展了此关系的功能:

  • 能够将属性集附加到协同工程(或干扰)区域。
  • 允许明确定义代表 IfcSpatialElement 实体发生干扰的区域的共享占地面积或主体几何形状,而不会影响干扰 IfcSpatialElement 实体的占地面积或主体几何形状。
  • 产品仍然位于领域空间结构内,并可以使用相对定位。

带区域的空间干扰关系 概念旨在涵盖复杂的用例,其中干扰会产生协同工程区域,多个团队必须在同一空间区域内协作,同时保持对其领域元素的拥有权和权利。一个常见的例子是铁路和道路之间的平交道口。道路和铁路层级结构都有一个与平交道口相关的段,并且定义了 IfcRelInterferesElements 关系来编码这种连接。然后,该关系通过 IfcSpatialZone 进行扩展,该 IfcSpatialZone 定义了协同工程区域以及特定的重叠占地面积或主体几何形状。然后可以将属性集附加到 IfcSpatialZone,并且可以使用明确的占地面积或主体几何形状来进行自动碰撞检测以及跨领域模型更新的批准/通知。

concept {
    IfcSpatialElement_0:InterferesElements -> IfcRelInterferesElements:RelatingElement
    IfcSpatialElement_0:Name -> IfcLabel_1
    IfcRelInterferesElements:RelatedElement -> IfcSpatialElement_1
    IfcRelInterferesElements:InterferenceType -> IfcIdentifier
    IfcRelInterferesElements:InterferenceSpace -> IfcSpatialZone
    IfcSpatialElement_1:Name -> IfcLabel_0
    IfcSpatialZone:PredefinedType -> IfcSpatialZoneTypeEnum
    IfcSpatialZoneTypeEnum -> constraint_0
    constraint_0[label="=INTERFERENCE"]
    IfcSpatialElement_0:InterferesElements[binding="InterferesSpatialElements"]
    IfcRelInterferesElements:RelatedElement[binding="RelatedSpatialElement"]
    IfcSpatialElement_1:Name[binding="RelatedSpatialElementName"]
    IfcRelInterferesElements:InterferenceType[binding="InterferenceType"]
    IfcRelInterferesElements:InterferenceSpace[binding="InteferenceZone"]
    IfcSpatialZone:PredefinedType[binding="SpatialZoneType"]
    IfcSpatialElement_0:Name[binding="SpatialElementName"]
}
Spatial Service Connectivity General

一个系统(例如,配电系统)服务于特定的空间结构,该结构可以是整个设施(及其特定子类型,例如建筑物、桥梁、道路或海洋设施)、设施的一部分、楼层或这些结构的任何部分。 相关系统(IfcSystem)应通过其_Name_特性可供人类识别。 此模板中使用_IfcRelReferencedInSpatialStructure_提供了跨越空间和功能层级的关系,实现了功能系统的空间覆盖。

concept {
    IfcSpatialElement:ReferencesElements -> IfcRelReferencedInSpatialStructure:RelatingStructure
    IfcRelReferencedInSpatialStructure:RelatedElements -> IfcSystem:ReferencedInStructures
    IfcSystem:Name -> IfcLabel
    IfcSpatialElement:ReferencesElements[binding="ReferencedElements"]
    IfcRelReferencedInSpatialStructure:RelatedElements[binding="RelatedSystems"]
    IfcSystem:Name[binding="SystemName"]
}
点击显示 144 个隐藏的继承概念 点击隐藏 144 个继承概念
IfcExternalSpatialElement (43)
Aggregation General

聚合表示整体结构(称为“复合体”)与从属组件(称为“部分”)之间的内部无序部分组成关系。聚合的概念有多种用法。例如:

  • 聚合用于建筑构件,以指示墙体内的龙骨等部分;
  • 聚合用于空间元素,以指示空间结构,例如建筑物内的楼层;
  • 聚合用于系统,以指示子系统,例如分支电路。

聚合是一种双向关系,从复合体到其部分的这种关系称为分解(Decomposition),从部分到其复合体的这种关系称为组合(Composition)。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
}
Approval Association General

概念 批准关联 描述了对象或对象类型如何关联批准,指示谁需要批准数据、是否已批准的状态以及批准的日期/时间。批准可能需要多个方扮演各种角色。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesApproval:RelatedObjects
    IfcRelAssociatesApproval:RelatingApproval -> IfcApproval
    IfcApproval:Name -> IfcLabel_0
    IfcApproval:TimeOfApproval -> IfcDateTime
    IfcApproval:Status -> IfcLabel_1
}
Assignment to Group General

_分配到组_建立对象到组的分配,组是对象的任意集合。它是_组分配_的补充概念模板,定义了对象如何被组分配。

分组关系除了将对象分组外,不具有任何其他含义。它是非层次化的,意味着对象可以被分配到多个组,并且不干扰其他关系概念,例如_元素分解_。分组关系允许子组被分组到组中。

concept {
    IfcObject:HasAssignments -> IfcRelAssignsToGroup:RelatedObjects
    IfcObject:HasAssignments[binding="IsAssigned"]
}
Body Geometry General

IfcProduct 的主体或实体模型几何表示通常使用镶嵌(Tessellation)或边界表示(Brep)定义。子类型可以提供关于其他可用表示类型的建议。持有此几何表示的 IfcShapeRepresentation 的以下属性值应被使用:

Box Geometry General

元素可以具有描述对象最小边界框尺寸的简化“盒子”表示。此类表示可用于更高效的空间索引或命中测试。

“盒子”表示的表示标识符、类型以及唯一允许的单个表示项是:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcBoundingBox
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Box"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=BoundingBox"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Classification Association General

任何对象实例或对象类型都可以具有对特定分类引用的引用,即对分类系统中特定方面的引用。

CoG Geometry General

元素可能具有描述重心(Center of Gravity)的“CoG”表示形式,该表示形式为一个点。此表示形式可用于允许验证检查,以在考虑可接受的数值容差的情况下,验证导入的“Body”形状表示后的重心是否与导出时创建的显式值匹配。

“CoG”表示形式的表示标识符、类型以及唯一允许的单个表示项为:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcCartesianPoint
    IfcLabel_0 -> constraint_0
    constraint_0[label="=CoG"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Constraint Association General

概念 约束关联 描述了对象或对象类型如何关联约束,指示需要满足的定性目标或定量指标。

基于指标的约束是可衡量的,使得指标有效的状态是计算机可解释的。指标约束基于简单的条件逻辑,例如大于特定值或包含在指定列表或表中。约束可以使用布尔逻辑(如 AND、OR、XOR 或 NOT)组合多个指标。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesConstraint:RelatedObjects
    IfcRelAssociatesConstraint:RelatingConstraint -> IfcObjective
    IfcObjective:BenchmarkValues -> IfcMetric
    IfcObjective:ObjectiveQualifier -> IfcObjectiveEnum
    IfcObjective:LogicalAggregator -> IfcLogicalOperatorEnum
    IfcMetric:DataValue -> IfcMetricValueSelect
    IfcMetric:DataValue -> IfcAppliedValue_0
    IfcMetric:DataValue -> IfcTable
    IfcMetric:Benchmark -> IfcBenchmarkEnum
    IfcMetric:ReferencePath -> IfcReference_1
    IfcMetric:Name -> IfcLabel_1
    IfcMetric:Description -> IfcText_1
    IfcAppliedValue_0:ArithmeticOperator -> IfcArithmeticOperatorEnum
    IfcAppliedValue_0:Components -> IfcAppliedValue_1
    IfcAppliedValue_0:AppliedValue -> IfcLengthMeasure
    IfcAppliedValue_0:AppliedValue -> IfcReal
    IfcTable:Rows -> IfcTableRow
    IfcTable:Columns -> IfcTableColumn
    IfcTableColumn:Identifier -> IfcIdentifier
    IfcTableColumn:Name -> IfcLabel_0
    IfcTableColumn:Description -> IfcText_0
    IfcTableColumn:ReferencePath -> IfcReference_0
    IfcMetric:DataValue[binding="DataValue"]
    IfcReference_1:AttributeIdentifier[binding="Attribute1"]
}
Document Association General

概念 文档关联 描述了对象或对象类型如何关联文档,指示外部文件。文档可以整体引用,例如用于捕获产品手册、数据表、多媒体内容或缩略图。文档中的内容可以从任何对象引用,并可用于同步其他文件中的信息,例如项目管理应用程序的项目计划。

文档的典型元数据,如发布日期、编辑者等,可以与关联一起捕获,但文档内容仍保留在外部文件中。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcRelAssociatesDocument:Name -> IfcLabel_0
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentReference:Location -> IfcURIReference
    IfcDocumentReference:Identification -> IfcIdentifier
    IfcDocumentReference:Name -> IfcLabel_1
    IfcDocumentReference:Description -> IfcText
    IfcRelAssociatesDocument:Name[binding="Name"]
}
FootPrint GeomSet Geometry General

“楼板平面几何集几何体”是元素几何表示形式的楼板平面投影的标准表示形式,主要包含二维曲线。

用于包含此几何表示形式的 IfcShapeRepresentation 的以下特性值被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcGeometricCurveSet
    IfcLabel_0 -> constraint_0
    constraint_0[label="=FootPrint"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=GeometricCurveSet"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
    IfcShapeRepresentation:Items[binding="Items"]
}
Group Spatial Connectivity General

“群组空间连接”概念允许将代表对象分组的_IfcGroup_(及其相关子类型)与特定的空间结构相关联,该空间结构可以是整个设施(及其特定子类型,例如建筑物、桥梁、道路或海洋设施)、设施的一部分、楼层或这些结构的任何部分。

相关群组(IfcGroup)应通过其_Name_特性可供人类识别。

相关关系(IfcRelReferencedInSpatialStructure)可以通过_Name_和_Description_特性提供连接的上下文。

此模板中使用_IfcRelReferencedInSpatialStructure_提供了跨越空间和功能层级的关系,实现了功能群组的空间覆盖。

允许_IfcGroup_不与任何空间结构元素相关联。当_IfcGroup_ 连接到空间结构时,必须通过IfcRelDeclares关系使用“项目声明模板”将其声明给_IfcProject_,或者通过组合使用父_IfcGroup_(或其相关子类型),并且该父_IfcGroup_要么使用“群组空间连接”连接到空间结构,要么使用“项目声明模板”声明给_IfcProject_。

concept {
    IfcSpatialElement:ReferencesElements -> IfcRelReferencedInSpatialStructure:RelatingStructure
    IfcRelReferencedInSpatialStructure:RelatedElements -> IfcGroup:ReferencedInStructures
    IfcRelReferencedInSpatialStructure:Name -> IfcLabel_1
    IfcGroup:Name -> IfcLabel_0
    IfcSpatialElement:ReferencesElements[binding="ReferencedElements"]
    IfcRelReferencedInSpatialStructure:RelatedElements[binding="RelatedGroups"]
    IfcGroup:Name[binding="GroupName"]
    IfcRelReferencedInSpatialStructure:Name[binding="ReferenceContext"]
}
Library Association General

概念 库关联 描述了对象和对象类型如何关联库实体,指示另一个数据源,例如来自模型服务器、产品库或外部数据库或系统,这些数据源用更多详细信息丰富数据。库可以整体从项目或项目库中引用,指示数据的源和版本。库中的内容可以从项目或项目库中的任何对象、类型对象、属性和某些资源模式实体中引用。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryReference
    IfcLibraryReference:Location -> IfcURIReference
    IfcLibraryReference:Identification -> IfcIdentifier
    IfcLibraryReference:Name -> IfcLabel
    IfcLibraryReference:Description -> IfcText
    IfcLibraryReference:Language -> IfcLanguageId
    IfcLibraryReference:ReferencedLibrary -> IfcLibraryInformation
    IfcRelAssociatesLibrary:RelatingLibrary[binding="RelatingLibrary"]
}
Mapped Geometry General

元素可以具有“映射几何体”表示形式,该表示形式在相应的对象类型处重用了“对象类型定义”概念中的“对象类型形状”概念。

映射几何体表示形式的表示标识符是任何其他有效的几何表示形式标识符,例如“Body”、“FootPrint”或“Axis”。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation_0
    IfcShapeRepresentation_0:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation_0:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation_0:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation_0:Items -> IfcMappedItem
    IfcMappedItem:MappingSource -> IfcRepresentationMap
    IfcMappedItem:MappingTarget -> IfcCartesianTransformationOperator3D
    IfcMappedItem:MappingTarget -> IfcCartesianTransformationOperator3DnonUniform
    IfcRepresentationMap:MappingOrigin -> IfcAxis2Placement3D
    IfcRepresentationMap:MappedRepresentation -> IfcShapeRepresentation_1
    IfcAxis2Placement3D:Location -> IfcCartesianPoint_0
    IfcAxis2Placement3D:Axis -> IfcDirection_0
    IfcAxis2Placement3D:RefDirection -> IfcDirection_1
    IfcCartesianTransformationOperator3D:Axis1 -> IfcDirection_2
    IfcCartesianTransformationOperator3D:Axis2 -> IfcDirection_3
    IfcCartesianTransformationOperator3D:LocalOrigin -> IfcCartesianPoint_1
    IfcCartesianTransformationOperator3D:Axis3 -> IfcDirection_4
    IfcShapeRepresentation_0:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation_0:RepresentationType[binding="Type"]
}
Material Association General

任何产品或产品类型都可以关联材料,以指示对象的物理组成。

材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
}
Material Single General

材料直接与产品和产品类型关联,以表示整个对象的均匀材料。

材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObjectIfcObject 上进行关联,则直接分配给 IfcObject 的材料具有优先权。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
    IfcRelAssociatesMaterial:RelatingMaterial -> IfcMaterial
    IfcMaterial -> Material
}
Nesting General

嵌套表示主体结构(称为“主机”)与附加组件(称为“被托管元素”)之间的外部有序部分组成关系。嵌套的概念有多种用法。例如:

  • 嵌套用于产品构件,以指示外部可连接部件,例如安装在水槽上的水龙头或安装在接线盒内的开关。
  • 嵌套用于控制对象,以指示规范层次结构。
  • 嵌套用于过程对象,以指示可能并行或串行发生的从属过程。
  • 嵌套用于资源对象,以指示可能并行或串行发生的从属资源分配。

嵌套是一种双向关系,从主机结构到其附加组件的关系称为嵌套(Nesting),从组件到其包含结构的关系称为托管(Hosting)。

concept {
    IfcObjectDefinition:IsNestedBy -> IfcRelNests:RelatingObject
}
Object Predefined Type General

======================

许多对象实例具有一个名为 PredefinedType 的特性,该特性是一个特定的枚举。这种预定义类型本质上提供了另一种级别的“通过继承进行分类”,以在无需额外子类型的情况下进一步区分对象。预定义类型不仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。此类预定义类型通过为 PredefinedType 特性选择正确的枚举值来添加。如果需要自定义值,则必须使用 ObjectType 特性来定义此类自定义类型,而 PredefinedType 则设置为 USERDEFINED

Object Occurrence Predefined Type 提供的主要特性是:

  • PredefinedType:包含实体特定的预定义类型枚举,以进一步分类实体
  • ObjectType:允许自定义值,如果没有适用的枚举值

如果对象通过 IfcTypeObject 进行类型化,则仅当 IfcTypeObject 处的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例处的 PredefinedType

请注意,PredefinedType 特性本身是在继承层次结构的叶类中定义的,并为该给定叶类提供了一个特定的枚举特性。

concept {
    IfcObject:ObjectType -> IfcLabel
    IfcObject:IsTypedBy -> IfcRelDefinesByType:RelatedObjects
    IfcRelDefinesByType:RelatingType -> IfcTypeObject
    IfcObject:ObjectType[binding="UserDefinedType"]
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcTypeObject:ElementType[binding="TypeUserdefinedType"]
    IfcTypeObject:PredefinedType[binding="TypePredefinedType"]
}
Object Typing General

任何对象实例都可以通过被分配给一个使用此概念的通用对象类型来类型化。通过在 IfcObject 的子类型级别覆盖此概念,引入了一个限制可分配的 IfcTypeObject 子类型的特定规则。

Object User Identity General

特性 Name 和可选的 Description 可用于 IfcObject 的所有子类型。对于那些具有对象类型定义的子类型,例如 IfcBeam - IfcBeamType,通用的 Name 和可选的 Description 与对象类型相关联。

Product Geometric Representation General

任何 IfcProduct 的几何表示由 IfcProductDefinitionShape 提供,允许进行多个几何表示。它使用 Product Placement 概念,利用 IfcLocalPlacement 建立对象坐标系,所有几何表示都基于该坐标系。

Product Geometry Colour General
concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:Items -> IfcSolidModel
    IfcShapeRepresentation:Items -> IfcTessellatedFaceSet
    IfcSolidModel:StyledByItem -> IfcStyledItem:Item
    IfcStyledItem:Styles -> IfcSurfaceStyle
    IfcSurfaceStyle -> Surface_Color_Style
    IfcTessellatedFaceSet:HasColours -> IfcIndexedColourMap:MappedTo
    IfcIndexedColourMap:Opacity -> IfcNormalisedRatioMeasure
    IfcIndexedColourMap:Colours -> IfcColourRgbList
    IfcIndexedColourMap:ColourIndex -> IfcPositiveInteger
}
Product Geometry Layer General
concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:LayerAssignments -> IfcPresentationLayerAssignment:AssignedItems
    IfcPresentationLayerAssignment -> Layer
}
Product Local Placement General

产品实例可以相对于其所包含的位置进行三维空间定位。放置由相对位置(X、Y、Z 坐标)、水平参考方向和垂直轴方向定义。在最外层,相对方向根据表示上下文定义;例如,+X 可能指向东方,+Y 可能指向北方,+Z 可能指向上方。

放置遵循聚合和包含关系,如下所示:

  • 在最外层,场地根据纬度、经度和海拔进行全局定位;
  • 对于空间结构,定位相对于聚合。例如,一个场地可以聚合多个建筑,每个建筑可以聚合多个楼层,每个楼层可以聚合多个空间;
  • 对于建筑构件,定位相对于包含的空间结构。例如,一个楼层可以包含楼板、墙体、柱子和梁;
  • 对于聚合部件,定位相对于聚合。例如,一个楼梯可以聚合一个或多个楼梯段;
  • 对于特征构件,定位相对于受影响的建筑构件。例如,一个洞口构件相对于其所在的墙体进行定位,而该墙体又相对于楼层进行定位;
  • 对于填充物,定位相对于被填充的洞口。例如,一扇门相对于一个洞口进行定位,而该洞口又相对于墙体进行定位;
  • 对于分配端口,定位相对于包含的分配构件。例如,一个空气终端可能有一个用于管道段或配件的端口连接;
  • 对于分配构件,定位相对于包含的空间结构,但可能受端口连接的约束。例如,一个电气接线盒可能填充墙体内的某个洞口,并且该接线盒可能包含用于包含的插座或开关的端口;这些连接构件的放置相对于接线盒的连接端口受到约束。再举一个例子,一个空气终端可能填充一个相对于空间进行放置的天花板覆盖层;连接管道配件的放置可能相对于空气终端受到约束。

如果包含的空间结构包含一个网格,则放置也可以基于相对于网格坐标。在某些用例中,可以通过省略 IfcObjectPlacement 来使用绝对放置。在这种情况下,形状表示在世界坐标系中定义。

concept {
    IfcProduct:ObjectPlacement -> IfcLocalPlacement_0
    IfcLocalPlacement_0:RelativePlacement -> IfcAxis2Placement3D
    IfcLocalPlacement_0:PlacementRelTo -> IfcLocalPlacement_1
    IfcLocalPlacement_1:PlacesObject -> IfcElement:ObjectPlacement
    IfcLocalPlacement_1:PlacesObject -> IfcSpatialElement:ObjectPlacement
    IfcElement:Name -> IfcLabel_0
    IfcSpatialElement:Name -> IfcLabel_1
    IfcProduct:ObjectPlacement[binding="HasPlacement"]
    IfcLocalPlacement_1:PlacesObject[binding="RelativeToElement"]
    IfcElement:Name[binding="ElementName"]
    IfcSpatialElement:Name[binding="SpatialElementName"]
}
Product Relative Positioning General

如果 IfcProductProduct Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProductIfcPositioningElement 的信息。

Product Span Positioning General

_IfcProduct_可以相对于两个_IfcReferent_实体进行放置,这两个实体指示产品在直线段上的起始和结束位置。

concept {
    IfcProduct:PositionedRelativeTo -> IfcRelPositions_0:RelatedProducts
    IfcProduct:PositionedRelativeTo -> IfcRelPositions_1:RelatedProducts
    IfcRelPositions_0:RelatingPositioningElement -> IfcReferent_0
    IfcRelPositions_0:Name -> IfcLabel_0
    IfcReferent_0:PredefinedType -> IfcReferentTypeEnum_0
    IfcRelPositions_1:RelatingPositioningElement -> IfcReferent_1
    IfcRelPositions_1:Name -> IfcLabel_1
    IfcReferent_1:PredefinedType -> IfcReferentTypeEnum_1
    IfcProduct:PositionedRelativeTo[binding="EndPositionedRelativeTo"]
    IfcReferent_0:PredefinedType[binding="StartPositionType"]
    IfcRelPositions_0:Name[binding="StartPositionName"]
    IfcReferent_1:PredefinedType[binding="EndPositionType"]
    IfcRelPositions_1:Name[binding="EndPositionName"]
}
Product Topology Representation General

产品的拓扑可以以多种方式表示,以满足不同的目的。每种表示都有一个众所周知的字符串标识符和一个特定的表示上下文。可能存在多个表示上下文来描述用于各种用途的拓扑。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcTopologyRepresentation
    IfcTopologyRepresentation:ContextOfItems -> IfcRepresentationContext
    IfcTopologyRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcTopologyRepresentation:RepresentationType -> IfcLabel_1
}
Property Sets for Objects General

用于对象的属性集 概念模板描述了对象实例如何与一个或多个属性集相关联。一个属性集包含一个或多个属性。单个属性的数据类型是单值、枚举值、有界值、表值、引用值、列表值以及属性实例的组合。

属性集也可以与对象类型相关联,请参阅 用于类型的属性集 概念。然后,它们定义了所有相同类型实例的通用属性。如果同一属性(按名称)由同一属性集(按名称)提供,则直接分配给对象实例的属性将覆盖分配给对象类型的属性。

concept {
    IfcObject:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcPropertySet
    IfcPropertySet:HasProperties -> IfcPropertySingleValue
    IfcPropertySet:HasProperties -> IfcPropertyBoundedValue
    IfcPropertySet:HasProperties -> IfcPropertyEnumeratedValue
    IfcPropertySet:HasProperties -> IfcPropertyListValue
    IfcPropertySet:HasProperties -> IfcPropertyTableValue
    IfcPropertySingleValue -> Single_Value
    IfcPropertyBoundedValue -> Bounded_Value
    IfcPropertyEnumeratedValue -> Enumerated_Value
    IfcPropertyListValue -> List_Value
    IfcPropertyTableValue -> Table_Value
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcPropertySet:Name[binding="PsetName"]
    IfcPropertySet:HasProperties[binding="Properties"]
}
Property Sets for Performance General

对于性能历史记录,属性以时间序列的形式存在,用于跟踪特定时间点的数据。

concept {
    IfcObject:HasAssignments -> IfcRelAssignsToControl:RelatedObjects
    IfcRelAssignsToControl:RelatingControl -> IfcPerformanceHistory:Controls
    IfcPerformanceHistory:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcPropertySet
    IfcPropertySet:HasProperties -> IfcPropertyReferenceValue
    IfcPropertyReferenceValue:PropertyReference -> IfcRegularTimeSeries
    IfcRegularTimeSeries:Values -> IfcTimeSeriesValue
    IfcPropertyReferenceValue:PropertyReference -> IfcIrregularTimeSeries
    IfcIrregularTimeSeries:Values -> IfcIrregularTimeSeriesValue
    IfcIrregularTimeSeriesValue:TimeStamp -> IfcDateTime
    IfcIrregularTimeSeriesValue:ListValues -> IfcValue

    IfcPropertySet:Name[binding="PsetName"]
    IfcObject:PredefinedType[binding="PredefinedType"]
}
Property Sets with Override General

任何对象实例都可以拥有属性集,可以直接在对象实例上作为元素特定的属性集,也可以在对象类型上作为类型属性集。在这种情况下,提供给对象实例的特性是元素特定特性和类型特性的组合。如果在实例和类型特性中都定义了相同的特性(在同一属性集中),则实例特性的特性值将覆盖类型特性的特性值。

Quantity Sets General

任何对象的专门化都可以与多个数量集实例相关联。一个数量集包含多个数量实例。数量实例值的类型是计数、长度、面积、体积、重量、时间,或数量的组合。每个数量由其名称、值以及可选的描述和公式定义。

数量集通过 IfcElementQuantity 的实例来表示,其中 Name 属性确定了数量集的通用标识符。本规范包含一些预定义数量集,每个数量集都提供了模板定义。模板的名称必须用作 Name 属性的值。MethodOfMeasurement 属性指定了计算各个数量值的方法。对于本规范中包含的数量集模板,MethodOfMeasurement 的值应为“BaseQuantities”。

concept {
    IfcObject:IsDefinedBy -> IfcRelDefinesByProperties:RelatedObjects
    IfcRelDefinesByProperties:RelatingPropertyDefinition -> IfcElementQuantity
    IfcElementQuantity:Name -> IfcLabel_0
    IfcElementQuantity:Description -> IfcText
    IfcElementQuantity:MethodOfMeasurement -> IfcLabel_1
    IfcElementQuantity:Quantities -> IfcQuantityLength
    IfcElementQuantity:Quantities -> IfcQuantityArea
    IfcElementQuantity:Quantities -> IfcQuantityVolume
    IfcElementQuantity:Quantities -> IfcQuantityWeight
    IfcElementQuantity:Quantities -> IfcQuantityCount
    IfcElementQuantity:Quantities -> IfcQuantityTime
    IfcQuantityLength -> Length_Quantity
    IfcQuantityArea -> Area_Quantity
    IfcQuantityVolume -> Volume_Quantity
    IfcQuantityWeight -> Weight_Quantity
    IfcQuantityCount -> Count_Quantity
    IfcQuantityTime -> Time_Quantity
    IfcObject:PredefinedType[binding="PredefinedType"]
    IfcElementQuantity:Name[binding="QsetName"]
    IfcElementQuantity:Quantities[binding="Quantities"]
}
Reference Geometry General

几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference SweptSolid Geometry General

“参考扫掠实体几何体”是通过扫掠实体模型表示产品三维形状的参考表示形式,仅允许基本的拉伸面积实体和旋转面积实体。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcSweptAreaSolid
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=SweptSolid"]
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference SweptSolid PolyCurve Geometry General

“参考扫掠实体多段线几何体”是通过扫掠实体模型表示产品三维形状的参考表示形式,仅允许基本的拉伸面积实体和旋转面积实体。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcSweptAreaSolid
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=SweptSolid"]
    IfcSweptAreaSolid -> Extruded_Area_PolyCurve_Profile
    IfcSweptAreaSolid -> Revolved_Area_PolyCurve_Profile
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Reference Tessellation Geometry General

“参考镶嵌几何体”是通过使用镶嵌模型表示产品三维形状的参考表示形式。作为参考表示形式,它通常不显示,也不用于空洞关系。

包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:

concept {
    IfcProduct:Representation -> IfcProductDefinitionShape
    IfcProductDefinitionShape:Representations -> IfcShapeRepresentation
    IfcShapeRepresentation:ContextOfItems -> IfcGeometricRepresentationContext
    IfcShapeRepresentation:RepresentationIdentifier -> IfcLabel_0
    IfcShapeRepresentation:RepresentationType -> IfcLabel_1
    IfcShapeRepresentation:Items -> IfcTriangulatedFaceSet
    IfcShapeRepresentation:Items -> IfcPolygonalFaceSet
    IfcLabel_0 -> constraint_0
    constraint_0[label="=Reference"]
    IfcLabel_1 -> constraint_1
    constraint_1[label="=Tessellation"]
    IfcTriangulatedFaceSet -> Triangulated_Geometry
    IfcPolygonalFaceSet -> Polygonal_Geometry
    IfcShapeRepresentation:RepresentationIdentifier[binding="Identifier"]
    IfcShapeRepresentation:RepresentationType[binding="Type"]
}
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

Spatial Composition General

通过聚合空间元素来提供项目的空间结构。空间结构是最终分配给项目的空间元素的层次树。组成是指与更高级别元素的关系(例如,此楼层是建筑物的一部分,或此道路是道路的一部分)。

注意:项目与最高级别空间元素之间的链接通过此概念通过 IfcRelAggregates 提供,而不是通过 IfcRelDeclares 进行声明。这是一个已知的异常,旨在保持与此标准早期版本的兼容性。

项目的空间结构可能由一系列不同的空间结构元素组成,从高到低最通用和最简单的形式如下:IfcProjectIfcSiteIfcFacility(或其任何子类型)、IfcFacilityPart(或建筑物情况下的 IfcBuildingStorey)以及 IfcSpace,其中 IfcSiteIfcFacilityPartIfcSpace 是可选级别。因此,空间结构元素只能是相同或更高级别元素的一部分,但 IfcFacility 除外,它可以是 IfcFacilityPart 的一部分,以允许对更高级别的设施进行区域或纵向划分成可以包含一个或多个较小功能性设施的区域。

在可能的情况下,应使用 IfcFacility 的相关子类型来描述所讨论的空间结构元素。当没有具有预定义或用户定义类型的 IfcFacility 充分子类型时,可以通过在 IfcFacility.ObjectType 中定义的相应且商定的类型标识符来实例化更高级别的通用 IfcFacility 实体。这几乎可以完全覆盖尚未通过特定扩展解决的建筑环境领域和/或场景。

除了已识别的空间结构元素外,IfcSpatialZone 可用于在项目内提供跨领域或功能区域。这些元素通过 Spatial Containment 概念 (IfcRelContainedInSpatialStructure) 包含在层次结构中,并且可以像其他空间结构元素一样聚合到功能层次结构中,但有一个限制,即 IfcSpatialZone 只能包含在另一个 IfcSpatialZone 中。

concept {
    IfcSpatialElement_0:Decomposes -> IfcRelAggregates:RelatedObjects
    IfcRelAggregates:RelatingObject -> IfcProject
    IfcRelAggregates:RelatingObject -> IfcSpatialElement_1
    IfcProject:Name -> IfcLabel_0
    IfcSpatialElement_1:Name -> IfcLabel_1
    IfcRelAggregates:RelatingObject[binding="RelatingObject"]
    IfcProject:Name[binding="ProjectName"]
    IfcSpatialElement_1:Name[binding="SpatialElementName"]
}

此概念可应用于以下资源

Spatial Container General

“空间容器”概念将空间元素定义为物理元素或直接与空间容器相关的其他元素(如注释或网格)的空间容器。

“空间容器”概念通过_IfcSpatialElement_子类型与所包含元素之间的_IfcRelContainedInSpatialStructure_对象化关系来实现。_IfcSpatialElement_子类型上的逆向关系_ContainsElements_引用所包含的物理元素。

concept {
    IfcSpatialElement:ContainsElements -> IfcRelContainedInSpatialStructure:RelatingStructure
    IfcRelContainedInSpatialStructure:RelatedElements -> IfcProduct
    IfcRelContainedInSpatialStructure:RelatedElements[binding="Type"]
}
Spatial Decomposition General

通过聚合空间元素来提供项目的空间结构。空间结构是最终分配给项目的空间元素的层次树。分解是指与较低级别元素的关系(例如,此楼层有空间,或此道路有道路段)。

项目的空间结构可能由一系列不同的空间结构元素组成,从低到高最通用和最简单的形式如下:IfcSpaceIfcFacilityPart(或建筑物情况下的 IfcBuildingStorey)、IfcFacility(或其任何子类型)、IfcSiteIfcProject,其中 IfcSiteFacilityPartIfcSpace 是可选级别。因此,空间结构元素只能是相同或更高级别元素的一部分,但 IfcFacility 除外,它可以是 IfcFacilityPart 的一部分,以允许对高级别设施进行区域或纵向划分成可以包含一个或多个较小功能性设施的区域。

在可能的情况下,应使用 IfcFacility 的相关子类型来描述所讨论的空间结构元素。当没有具有预定义或用户定义类型的 IfcFacility 充分子类型时,可以通过在 IfcFacility.ObjectType 中定义的相应且商定的类型标识符来实例化更高级别的通用 IfcFacility 实体。这几乎可以完全覆盖尚未通过特定扩展解决的建筑环境领域和/或场景。

除了已识别的空间结构元素外,IfcSpatialZone 可用于在项目内提供跨领域或功能区域。这些元素通过 Spatial Containment 概念 (IfcRelContainedInSpatialStructure) 包含在层次结构中,并且可以像其他空间结构元素一样聚合到功能层次结构中,但有一个限制,即 IfcSpatialZone 只能包含在另一个 IfcSpatialZone 中。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
    IfcRelAggregates:RelatedObjects -> IfcSpatialElement
    IfcSpatialElement:Name -> IfcLabel
    IfcRelAggregates:RelatedObjects[binding="RelatedObjects"]
    IfcSpatialElement:Name[binding="SpatialElementName"]
}

此概念可应用于以下资源

Spatial Element Attributes General

注意:此属性模板与其他类似模板一样,源自与 mvdXML 相关联的旧有要求,以及 MVD 定义交换信息要求的早期时代。此类模板不再为规范增加价值,也不会传达超出模式中已定义信息的内容。此外,一些模板引用了已弃用的实体,可能导致不必要的混淆。 作为清理文档的更广泛工作的一部分,此模板和其他非必需模板将在下一个版本中删除。

空间对象可以通过 LongName 属性进一步标识。此值通常对应于描述楼层或房间的建筑标识。虽然 Name 属性通常提供编码或缩写的标识符,但 LongName 提供该位置的功能名称,例如“接待区”。

concept {
    IfcSpatialElement:Name -> IfcLabel_0
    IfcSpatialElement:LongName -> IfcLabel_1
    IfcSpatialElement:Name[binding="Name"]
    IfcSpatialElement:LongName[binding="LongName"]
}
Spatial Interference General

空间干扰关系 概念定义了空间元素(如设施 (IfcFacility & 特殊子类型) 或设施部件 (IfcFacilityPart 具有领域特定预定义类型))跨越专业空间层级分支与其他空间元素发生干扰或接口的关系。IfcSpatialElement 实体应通过其 IfcSpatialElement.Name 属性进行标识,并且应包含一个可选的 IfcRelInterferesElements.InterferenceType 来描述接口或干扰的性质。

一个简单的例子是包含道路或铁路开发项目的桥梁部分。IfcRelInterferesElements 用于语义链接穿过桥梁的道路或铁路的空间段与相关的桥梁段,并指定相关的干扰类型。这种语义关系提供了一个易于查询的连接,用于识别需要跨越道路设计团队和桥梁设计团队等专业的空间元素。空间层级结构的组织方式取决于用户和项目。

concept {
    IfcSpatialElement_0:InterferesElements -> IfcRelInterferesElements:RelatingElement
    IfcSpatialElement_0:Name -> IfcLabel_1
    IfcRelInterferesElements:RelatedElement -> IfcSpatialElement_1
    IfcRelInterferesElements:InterferenceType -> IfcIdentifier
    IfcSpatialElement_1:Name -> IfcLabel_0
    IfcSpatialElement_0:InterferesElements[binding="InterferesSpatialElements"]
    IfcRelInterferesElements:RelatedElement[binding="RelatedSpatialElement"]
    IfcSpatialElement_1:Name[binding="RelatedSpatialElementName"]
    IfcRelInterferesElements:InterferenceType[binding="InterferenceType"]
    IfcSpatialElement_0:Name[binding="SpatialElementName"]
}
Spatial Interference With Zones General

带区域的空间干扰关系 概念是 空间干扰关系 概念的扩展,它定义了空间元素(如设施 (IfcFacility & 特殊子类型) 或设施部件 (IfcFacilityPart 具有领域特定预定义类型))跨越专业空间层级分支与其他空间元素发生干扰或接口的关系,并通过 IfcRelInterferesElements.InterferenceSpace 属性将相关干扰 IfcSpatialZone 扩展到数据集。实现 IfcSpatialZone 的实体应始终将 PredefinedType 值设置为 INTERFERENCE

实现 IfcSpatialZone 的添加通过以下方式扩展了此关系的功能:

  • 能够将属性集附加到协同工程(或干扰)区域。
  • 允许明确定义代表 IfcSpatialElement 实体发生干扰的区域的共享占地面积或主体几何形状,而不会影响干扰 IfcSpatialElement 实体的占地面积或主体几何形状。
  • 产品仍然位于领域空间结构内,并可以使用相对定位。

带区域的空间干扰关系 概念旨在涵盖复杂的用例,其中干扰会产生协同工程区域,多个团队必须在同一空间区域内协作,同时保持对其领域元素的拥有权和权利。一个常见的例子是铁路和道路之间的平交道口。道路和铁路层级结构都有一个与平交道口相关的段,并且定义了 IfcRelInterferesElements 关系来编码这种连接。然后,该关系通过 IfcSpatialZone 进行扩展,该 IfcSpatialZone 定义了协同工程区域以及特定的重叠占地面积或主体几何形状。然后可以将属性集附加到 IfcSpatialZone,并且可以使用明确的占地面积或主体几何形状来进行自动碰撞检测以及跨领域模型更新的批准/通知。

concept {
    IfcSpatialElement_0:InterferesElements -> IfcRelInterferesElements:RelatingElement
    IfcSpatialElement_0:Name -> IfcLabel_1
    IfcRelInterferesElements:RelatedElement -> IfcSpatialElement_1
    IfcRelInterferesElements:InterferenceType -> IfcIdentifier
    IfcRelInterferesElements:InterferenceSpace -> IfcSpatialZone
    IfcSpatialElement_1:Name -> IfcLabel_0
    IfcSpatialZone:PredefinedType -> IfcSpatialZoneTypeEnum
    IfcSpatialZoneTypeEnum -> constraint_0
    constraint_0[label="=INTERFERENCE"]
    IfcSpatialElement_0:InterferesElements[binding="InterferesSpatialElements"]
    IfcRelInterferesElements:RelatedElement[binding="RelatedSpatialElement"]
    IfcSpatialElement_1:Name[binding="RelatedSpatialElementName"]
    IfcRelInterferesElements:InterferenceType[binding="InterferenceType"]
    IfcRelInterferesElements:InterferenceSpace[binding="InteferenceZone"]
    IfcSpatialZone:PredefinedType[binding="SpatialZoneType"]
    IfcSpatialElement_0:Name[binding="SpatialElementName"]
}
Spatial Service Connectivity General

一个系统(例如,配电系统)服务于特定的空间结构,该结构可以是整个设施(及其特定子类型,例如建筑物、桥梁、道路或海洋设施)、设施的一部分、楼层或这些结构的任何部分。 相关系统(IfcSystem)应通过其_Name_特性可供人类识别。 此模板中使用_IfcRelReferencedInSpatialStructure_提供了跨越空间和功能层级的关系,实现了功能系统的空间覆盖。

concept {
    IfcSpatialElement:ReferencesElements -> IfcRelReferencedInSpatialStructure:RelatingStructure
    IfcRelReferencedInSpatialStructure:RelatedElements -> IfcSystem:ReferencedInStructures
    IfcSystem:Name -> IfcLabel
    IfcSpatialElement:ReferencesElements[binding="ReferencedElements"]
    IfcRelReferencedInSpatialStructure:RelatedElements[binding="RelatedSystems"]
    IfcSystem:Name[binding="SystemName"]
}
表 5.4.3.23.B

7.5.3.5.4 形式化表示(Formal representation)

ENTITY IfcExternalSpatialElement
 SUBTYPE OF (IfcExternalSpatialStructureElement);
	PredefinedType : OPTIONAL IfcExternalSpatialElementTypeEnum;
 INVERSE
	BoundedBy : SET [0:?] OF IfcRelSpaceBoundary FOR RelatingSpace;
END_ENTITY;

7.5.3.5.5 参考文献