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
任何产品或产品类型都可以关联材料,以指示对象的物理组成。
示例 对象可以由单一材料或具有特定布局的材料集组成。几个例子包括:
* 楼板可以关联一层混凝土;
* 梁可以关联钢的 I 形剖面;
* 门可以关联用于框架和玻璃的构成件;
* 端口可以关联流过它的剖面和/或材料,例如热水。
材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。
示例 材料信息也可以在对象类型级别提供,定义相同类型的所有实例的通用材料数据。然后可以通过逆向 IsTypedBy 关系访问对象类型,并通过其 HasAssociations 逆向关系和 IfcRelAssociatesMaterial .RelatingMaterial 指向材料信息。如果两者都提供,则直接分配给对象实例的材料将覆盖分配给对象类型的材料。
concept {
IfcObjectDefinition :HasAssociations -> IfcRelAssociatesMaterial :RelatedObjects
}
Material Single
General
材料直接与产品和产品类型关联,以表示整个对象的均匀材料。
材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObject 和 IfcObject 上进行关联,则直接分配给 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
任何产品或产品类型都可以关联材料,以指示对象的物理组成。
示例 对象可以由单一材料或具有特定布局的材料集组成。几个例子包括:
* 楼板可以关联一层混凝土;
* 梁可以关联钢的 I 形剖面;
* 门可以关联用于框架和玻璃的构成件;
* 端口可以关联流过它的剖面和/或材料,例如热水。
材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。
示例 材料信息也可以在对象类型级别提供,定义相同类型的所有实例的通用材料数据。然后可以通过逆向 IsTypedBy 关系访问对象类型,并通过其 HasAssociations 逆向关系和 IfcRelAssociatesMaterial .RelatingMaterial 指向材料信息。如果两者都提供,则直接分配给对象实例的材料将覆盖分配给对象类型的材料。
concept {
IfcObjectDefinition :HasAssociations -> IfcRelAssociatesMaterial :RelatedObjects
}
Material Single
General
材料直接与产品和产品类型关联,以表示整个对象的均匀材料。
材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObject 和 IfcObject 上进行关联,则直接分配给 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
Any object occurrence can be typed by being assigned to a common object type utilizing this concept. A particular rule, restricting the applicable subtypes of IfcTypeObject that can be assigned, is introduced by overriding this concept at the level of subtypes of IfcObject .
此概念可应用于以下资源
Object User Identity
General
An attribute Name and optionally Description can be used for all subypes of IfcObject . For those subtypes, that have an object type definition, such as IfcBeam - IfcBeamType , the common Name and optionally Description is associated with the object type.
Property Sets with Override
General
Any object occurrence can hold property sets, either directly at the object occurrence as element specific property sets, or at the object type, as type property sets. In this case, the properties that are provided to the object occurrence are the combinations of element specific and type properties. In case that the same property (within the same property set) is defined both in occurrence and type properties, the property value of the occurrence property overrides the property value of the type property.
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 建立对象坐标系,所有几何表示都基于该坐标系。
注释 关于如何应用局部定位以及哪些形状表示适用的详细规范,在 IfcProduct 的子类型级别提供,并进一步由模型视图定义和实施者协议确定。
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
如果 IfcProduct 的 Product Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProduct 的 IfcPositioningElement 的信息。
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
任何产品或产品类型都可以关联材料,以指示对象的物理组成。
示例 对象可以由单一材料或具有特定布局的材料集组成。几个例子包括:
* 楼板可以关联一层混凝土;
* 梁可以关联钢的 I 形剖面;
* 门可以关联用于框架和玻璃的构成件;
* 端口可以关联流过它的剖面和/或材料,例如热水。
材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。
示例 材料信息也可以在对象类型级别提供,定义相同类型的所有实例的通用材料数据。然后可以通过逆向 IsTypedBy 关系访问对象类型,并通过其 HasAssociations 逆向关系和 IfcRelAssociatesMaterial .RelatingMaterial 指向材料信息。如果两者都提供,则直接分配给对象实例的材料将覆盖分配给对象类型的材料。
concept {
IfcObjectDefinition :HasAssociations -> IfcRelAssociatesMaterial :RelatedObjects
}
Material Single
General
材料直接与产品和产品类型关联,以表示整个对象的均匀材料。
材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObject 和 IfcObject 上进行关联,则直接分配给 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
Any object occurrence can be typed by being assigned to a common object type utilizing this concept. A particular rule, restricting the applicable subtypes of IfcTypeObject that can be assigned, is introduced by overriding this concept at the level of subtypes of IfcObject .
此概念可应用于以下资源
Object User Identity
General
An attribute Name and optionally Description can be used for all subypes of IfcObject . For those subtypes, that have an object type definition, such as IfcBeam - IfcBeamType , the common Name and optionally Description is associated with the object type.
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
Any object occurrence can hold property sets, either directly at the object occurrence as element specific property sets, or at the object type, as type property sets. In this case, the properties that are provided to the object occurrence are the combinations of element specific and type properties. In case that the same property (within the same property set) is defined both in occurrence and type properties, the property value of the occurrence property overrides the property value of the type property.
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
几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。
示例 使用“参考”表示形式的一个示例是用于开口构件,这些构件不应用于通过 IfcRelVoidsElement 关系创建空洞,因为空洞已包含在被空洞构件的“Body”表示形式中。表示形式的表示标识符为:'Reference'
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。此外,它还可以为概念提供名称和描述。
IfcElement
(71)
Body AdvancedBrep Geometry
General
IfcElement (到目前为止在其子类型或视图定义中没有进一步的约束)可以表示为单个或多个边界表示模型,其中包括高级曲面,通常称为 NURBS 曲面。“AdvancedBrep”表示允许表示复杂的自由形状元素。
注释 视图定义或实施协议可能限制或禁止使用“AdvancedBrep”几何体。
Body AdvancedSwept Directrix Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSurfaceCurveSweptAreaSolid
IfcShapeRepresentation :Items -> IfcFixedReferenceSweptAreaSolid
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSurfaceCurveSweptAreaSolid -> SurfaceCurve_SweptArea_PolyCurve_Profile
IfcFixedReferenceSweptAreaSolid -> FixedReference_SweptArea_PolyCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSwept DiskSolid PolyCurve Geometry
General
实体高级扫掠圆盘实体多曲线几何体(Body AdvancedSwept DiskSolid PolyCurve Geometry )是通过扫掠圆盘实体模型来表示产品的三维形状,其中直接曲线由索引多曲线创建。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSweptDiskSolid
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSweptDiskSolid -> Swept_Disk_Solid_PolyCurve_Directrix
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSwept Tapered Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcExtrudedAreaSolidTapered
IfcShapeRepresentation :Items -> IfcRevolvedAreaSolidTapered
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcExtrudedAreaSolidTapered -> Extruded_Area_Tapered_PolyCurve_Profile
IfcExtrudedAreaSolidTapered -> Extruded_Area_Tapered_Parameterized_Profile
IfcRevolvedAreaSolidTapered -> Revolved_Area_Tapered_PolyCurve_Profile
IfcRevolvedAreaSolidTapered -> Revolved_Area_Tapered_Parameterized_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Brep Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个边界表示模型(这些模型被限制为具有或不具有空洞的面片 Brep)。Brep 表示允许表示复杂的元素形状。
图 6.6.3.14.A — 建筑元素主体边界表示
示例 如图150所示,Brep表达通过包含一个或多个_IfcFacetedBrep_类型项目的_IfcShapeRepresentation_给出。某些情况下同时提供相同复杂形状的边界框简化表达可能更为实用。
Body CSG Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为 CSG 基元或 CSG 树。CSG 表示允许表示复杂的元素形状。
注释 视图定义或实施协议可能限制或禁止使用“CSG”几何体。
Body SectionedSolidHorizontal
General
实体分段实体水平几何体(Body SectionedSolidHorizontal )是使用两个或多个闭合轮廓(可能尺寸不同)通过沿直接曲线的指定位置进行扫掠来表示产品的三维实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSectionedSolidHorizontal
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSectionedSolidHorizontal :Directrix -> IfcBoundedCurve
IfcSectionedSolidHorizontal :CrossSections -> IfcProfileDef
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
IfcSectionedSolidHorizontal :Directrix[binding="Directrix"]
IfcSectionedSolidHorizontal :CrossSections[binding="CrossSections"]
}
Body SurfaceModel Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个表面模型,这些模型基于壳体或面体表面模型。它还可以包括镶嵌模型。
图 6.6.3.14.B — 元素表面模型表示
示例 如图149所示,曲面模型表达通过包含单个项目的_IfcShapeRepresentation_给出,该项目可以是_IfcShellBasedSurfaceModel_或_IfcFaceBasedSurfaceModel_。某些情况下同时提供相同复杂形状的边界框简化表达可能更为实用。
Body SurfaceOrSolidModel Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为混合表示,包括表面模型和实体模型。
Body SweptSolid Composite Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_Composite_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid CompositeCurve Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_CompositeCurve_Profile
IfcSweptAreaSolid -> Revolved_Area_CompositeCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid ParameterizedProfile Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_Standardized_Profile
IfcSweptAreaSolid -> Revolved_Area_Standardized_Profile
IfcSweptAreaSolid -> Extruded_Area_Basic_Profile
IfcSweptAreaSolid -> Revolved_Area_Basic_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid PolyCurve Geometry
General
实体扫掠实体多曲线几何体(Body SweptSolid PolyCurve Geometry )是通过扫掠实体模型来表示产品的三维形状,仅允许使用基本的挤出面积实体和旋转面积实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_PolyCurve_Profile
IfcSweptAreaSolid -> Revolved_Area_PolyCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body Tessellation Geometry
Reference View
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个镶嵌表面模型,特别是三角化表面模型。
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"]
}
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"]
}
Element Interference
General
concept {
IfcElement_0:IsInterferedByElements -> IfcRelInterferesElements :RelatedElement
IfcRelInterferesElements :RelatingElement -> IfcElement_1
IfcRelInterferesElements :InterferenceGeometry -> IfcConnectionVolumeGeometry
IfcRelInterferesElements :InterferenceType -> IfcIdentifier
IfcConnectionVolumeGeometry :VolumeOnRelatingElement -> IfcSolidModel
}
Element Nesting
General
主体元素可以嵌套连接的组件。当存在特定的安装位置或外形尺寸来安装特定元素时,应使用此方法。
Element Projecting
General
concept {
IfcElement :HasProjections -> IfcRelProjectsElement :RelatingElement
IfcRelProjectsElement :RelatedFeatureElement -> IfcProjectionElement
IfcProjectionElement :PredefinedType -> IfcProjectionElementTypeEnum
}
Element Voiding Features
General
构件可以定义挖空特征,这可以通过切割、钻孔或铣削各种材料制成的构件来实现,或者通过嵌入混凝土等材料的模板来实现。
构件的“主体”表示不考虑空腔,需要通过 CSG 操作来产生最终形状。
构件的“网格”表示考虑了空腔,因此无需额外的操作。
concept {
IfcElement :HasOpenings -> IfcRelVoidsElement :RelatingBuildingElement
IfcRelVoidsElement :RelatedOpeningElement -> IfcVoidingFeature
IfcVoidingFeature :PredefinedType -> IfcVoidingFeatureTypeEnum
IfcElement :HasOpenings[binding="HasOpenings"]
IfcRelVoidsElement :RelatedOpeningElement[binding="RelatedVoidingFeature"]
IfcVoidingFeature :PredefinedType[binding="VoidingFeatureType"]
}
FootPrint Annotation Geometry
General
“楼板平面标注几何体”是元素的几何表示形式的楼板平面投影,主要包含二维曲线、填充线和附加标注(如标签号或类似项)。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcProduct :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcGeometricCurveSet
IfcShapeRepresentation :Items -> IfcAnnotationFillArea
IfcShapeRepresentation :Items -> IfcTextLiteral
IfcLabel_0 -> constraint_0
constraint_0[label="=FootPrint"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Annotation2D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
FootPrint GeomSet PolyCurve Geometry
General
楼板平面表示形式的此专门化使用索引曲线来表示边界。
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"]
IfcGeometricCurveSet :Elements -> IfcIndexedPolyCurve
IfcIndexedPolyCurve :Points -> IfcCartesianPointList2D
IfcIndexedPolyCurve :Segments -> IfcArcIndex
IfcIndexedPolyCurve :Segments -> IfcLineIndex
IfcIndexedPolyCurve :SelfIntersect -> IfcBoolean
IfcCartesianPointList2D :CoordList -> IfcLengthMeasure
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
FootPrint Geometry
General
填充边界的元素提供“楼板平面”表示形式,指示矩形或任何任意的外部和内部边界曲线集。此类元素的示例包括楼板和空间。对于具有指示材料厚度的材料层集关联的元素,可以基于楼板平面和材料层生成“Body”表示形式。填充区域样式可以指示二维渲染的特定颜色、瓷砖或填充线。
楼板平面表示形式的表示标识符为:
concept {
IfcProduct :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=FootPrint"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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"]
}
Product Grid Placement
General
产品实例可以相对于网格进行定位,网格的轴可以被修改,从而使产品实例相对于网格轴重新定位。
concept {
IfcProduct :ObjectPlacement -> IfcGridPlacement
IfcGridPlacement :PlacementLocation -> IfcVirtualGridIntersection
IfcGridPlacement :PlacementRefDirection -> IfcDirection
IfcGridPlacement :PlacementRelTo -> IfcObjectPlacement
IfcVirtualGridIntersection :OffsetDistances -> IfcLengthMeasure_0
IfcVirtualGridIntersection :IntersectingAxes -> IfcGridAxis
IfcGridAxis :AxisTag -> IfcLabel
IfcGridAxis :AxisCurve -> IfcLine
IfcGridAxis :SameSense -> IfcBoolean
IfcLine :Pnt -> IfcCartesianPoint
IfcLine :Dir -> IfcVector
IfcCartesianPoint :Coordinates -> IfcLengthMeasure_1
IfcObjectPlacement :PlacesObject -> IfcGrid_0:ObjectPlacement
}
Product Linear Placement
General
具有 Product Linear Placement 模板的产品放置。它定义了基于曲线的局部坐标系,该曲线由 IfcLinearPlacement .RelativePlacement 引用,而 IfcLinearPlacement .RelativePlacement 是一个 IfcAxis2PlacementLinear .Location ,使用 IfcPointByDistanceExpression .BasisCurve 。局部坐标系基于曲线在 Location 处的切线、其在全局 Z 平面上的法线以及上述向量的叉积。
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"]
}
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"]
}
此概念可应用于以下资源
Surface Feature Adherence
General
附着表示主体结构(称为“主机”)与附着组件(称为“附着元素”)之间的外部部分组成关系。附着概念有多种用法,例如:
附着用于建筑构件,以附着表面特征,这些特征以标记、表面处理或缺陷的形式修改了主机构件。
附着是一种双向关系,从主机结构到其附加组件的关系称为附着(adherence),从组件到其主机结构的关系称为托管(hosting)。
concept {
IfcElement :HasSurfaceFeatures -> IfcRelAdheresToElement :RelatingElement
IfcRelAdheresToElement :RelatedSurfaceFeatures -> IfcSurfaceFeature
IfcSurfaceFeature :Name -> IfcLabel
IfcElement :HasSurfaceFeatures[binding="HasSurfaceFeatures"]
IfcRelAdheresToElement :RelatedSurfaceFeatures[binding="RelatedSurfaceFeatures"]
IfcSurfaceFeature :Name[binding="SurfaceFeatureName"]
}
Surface Sectioned Geometry
General
“表面分段几何体”是具有“表面”表示形式的元素的表示形式,其中表面使用两个或多个开放轮廓来定义,这些轮廓沿着指定的路径(directrix)在指定位置之间扫掠,例如用于定义 IfcCourse 的上边界。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSectionedSurface
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=SectionedSurface"]
IfcSectionedSurface :Directrix -> IfcBoundedCurve
IfcSectionedSurface :CrossSections -> IfcProfileDef
IfcSectionedSurface :CrossSections -> IfcOpenCrossProfileDef
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
IfcSectionedSurface :Directrix[binding="Directrix"]
IfcSectionedSurface :CrossSections[binding="CrossSections"]
}
Surface Tessellation Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcTriangulatedFaceSet
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Tessellation"]
IfcTriangulatedFaceSet :Coordinates -> IfcCartesianPointList3D
IfcTriangulatedFaceSet :Normals -> IfcParameterValue
IfcTriangulatedFaceSet :LayerAssignment -> IfcPresentationLayerAssignment :AssignedItems
IfcTriangulatedFaceSet :StyledByItem -> IfcStyledItem :Item
IfcCartesianPointList3D :CoordList -> IfcLengthMeasure
IfcPresentationLayerAssignment -> Layer
IfcStyledItem :Styles -> IfcSurfaceStyle
IfcSurfaceStyle -> Surface_Color_Style
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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 AdvancedSweptSolid Geometry
General
实体高级扫掠实体几何体(Body AdvancedSweptSolid Geometry )是通过扫掠实体模型来表示产品的三维形状,包括高级扫掠操作,例如沿任意直接曲线扫掠和锥形扫掠。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Clipping Geometry
General
实体裁剪几何体(Body Clipping Geometry )是通过使用构造实体几何模型并仅涉及半空间实体的差集运算来表示产品的三维形状。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBooleanClippingResult_0
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Clipping"]
IfcBooleanClippingResult_0:Operator -> IfcBooleanOperator
IfcBooleanClippingResult_0:FirstOperand -> IfcCsgPrimitive3D
IfcBooleanClippingResult_0:FirstOperand -> IfcSolidModel
IfcBooleanClippingResult_0:FirstOperand -> IfcBooleanClippingResult_1
IfcBooleanClippingResult_0:SecondOperand -> IfcHalfSpaceSolid
IfcBooleanClippingResult_0:SecondOperand -> IfcPolygonalBoundedHalfSpace
IfcPolygonalBoundedHalfSpace :BaseSurface -> IfcPlane
IfcPolygonalBoundedHalfSpace :AgreementFlag -> IfcBoolean
IfcPolygonalBoundedHalfSpace :Position -> IfcAxis2Placement3D
IfcPolygonalBoundedHalfSpace :PolygonalBoundary -> IfcIndexedPolyCurve
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Geometry
General
IfcProduct 的主体或实体模型几何表示通常使用镶嵌(Tessellation)或边界表示(Brep)定义。子类型可以提供关于其他可用表示类型的建议。持有此几何表示的 IfcShapeRepresentation 的以下属性值应被使用:
Body SweptSolid Geometry
General
实体扫掠实体几何体(Body SweptSolid Geometry )是通过扫掠实体模型来表示产品的三维形状,仅允许使用基本的挤出面积实体和旋转面积实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :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="=Body"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
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"]
}
Element Covering
General
覆盖元素通过“元素覆盖”概念分配给其承载元素。
示例 使用_IfcRelCoversBldgElements_关系将覆层分配给墙,将地板分配给楼板,将包裹分配给管道。
concept {
IfcElement :HasCoverings -> IfcRelCoversBldgElements :RelatingBuildingElement
IfcRelCoversBldgElements :RelatedCoverings -> IfcCovering
}
Element Occurrence Attributes
General
注意:此属性模板与其他类似模板一样,源自与 mvdXML 相关联的旧有要求,以及 MVD 定义交换信息要求的早期时代。此类模板不再为规范增加价值,也不会传达超出模式中已定义信息的内容。此外,一些模板引用了已弃用的实体,可能导致不必要的混淆。
作为清理文档的更广泛工作的一部分,此模板和其他非必需模板将在下一个版本中删除。
物理构件可以通过 Tag 属性进一步标识。这是一个人类可读的标识符,例如构件或项目编号。虽然对此类标签的使用没有限制,但建议 Tag 在其包含的范围内是唯一的。
concept {
IfcElement :Tag -> IfcIdentifier
}
Element Voiding
General
构件可以定义空腔,这些空腔可以是部分凹陷或贯穿整个深度。开口的空腔可选择性地由另一个构件填充,例如门、窗、土方或骨料填充,或者可以表示没有填充物的挖空特征。
构件的“主体”表示不考虑空腔,需要通过 CSG 操作来产生最终形状。
构件的“网格”表示考虑了空腔,因此无需额外的操作。
concept {
IfcElement :HasOpenings -> IfcRelVoidsElement :RelatingBuildingElement
IfcElement :HasOpenings[binding="HasOpenings"]
}
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"]
}
Lighting Geometry
General
发光的元素提供“照明”表示形式。此类元素的示例包括灯具和照明设备。此表示形式可用于三维渲染或照明设计。
“照明”表示形式的表示标识符、类型以及唯一允许的单个表示项为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcLightSource
IfcLabel_0 -> constraint_0
constraint_0[label="=Lighting"]
IfcLabel_1 -> constraint_1
constraint_1[label="=LightSource"]
IfcLightSource :LightColour -> IfcColourRgb
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Material Association
General
任何产品或产品类型都可以关联材料,以指示对象的物理组成。
示例 对象可以由单一材料或具有特定布局的材料集组成。几个例子包括:
* 楼板可以关联一层混凝土;
* 梁可以关联钢的 I 形剖面;
* 门可以关联用于框架和玻璃的构成件;
* 端口可以关联流过它的剖面和/或材料,例如热水。
材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。
示例 材料信息也可以在对象类型级别提供,定义相同类型的所有实例的通用材料数据。然后可以通过逆向 IsTypedBy 关系访问对象类型,并通过其 HasAssociations 逆向关系和 IfcRelAssociatesMaterial .RelatingMaterial 指向材料信息。如果两者都提供,则直接分配给对象实例的材料将覆盖分配给对象类型的材料。
concept {
IfcObjectDefinition :HasAssociations -> IfcRelAssociatesMaterial :RelatedObjects
}
Material Single
General
材料直接与产品和产品类型关联,以表示整个对象的均匀材料。
材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObject 和 IfcObject 上进行关联,则直接分配给 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
对象实例可以通过特定的对象类型来定义,使用 对象类型定义 概念。对于大多数语义对象,定义了一对实体——一个对象实例实体和一个相应的对象类型实体。
在实例级别,对象实例可能具有:
通过应用类型级别定义的所有特性,与其对象类型实例相似的状态;
特定特性的覆盖状态;
没有定义的对象类型实例。
在对象类型级别定义的特性可能包括:
通用命名和预定义类型;
类型驱动的属性集中的通用属性;
通用几何表示,作为映射表示应用于每个实例;
通用材质分配(材质集用法除外);
分解结构的通用定义。
许多对象实例和对象类型实体都有一个名为 PredefinedType 的属性,该属性由特定的枚举组成。这种预定义类型本质上提供了另一个继承级别,可以在不需要额外实体的情况下进一步区分对象。预定义类型不仅仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。如果对象由 IfcTypeObject 类型的,则只有当 IfcTypeObject 上的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例上的 PredefinedType 。
示例 对于具有部件组成的对象的类型,这些部件可能在具有单独状态的对象实例上得到反映。例如,墙类型 可能定义了螺柱的特定排列,墙实例 可能反映了相同的螺柱排列,并且墙实例内的螺柱可能参与不存在于类型中的特定关系,例如连接到电气接线盒。
concept {
IfcObject :IsTypedBy -> IfcRelDefinesByType :RelatedObjects
IfcRelDefinesByType :RelatingType -> IfcTypeObject
IfcObject :IsTypedBy[binding="HasType"]
IfcRelDefinesByType :RelatingType[binding="RelatingType"]
IfcTypeObject :Name[binding="TypeName"]
}
此概念可应用于以下资源
Object User Identity
General
An attribute Name and optionally Description can be used for all subypes of IfcObject . For those subtypes, that have an object type definition, such as IfcBeam - IfcBeamType , the common Name and optionally Description is associated with the object type.
Product Geometric Representation
General
任何 IfcProduct 的几何表示由 IfcProductDefinitionShape 提供,允许进行多个几何表示。它使用 Product Placement 概念,利用 IfcLocalPlacement 建立对象坐标系,所有几何表示都基于该坐标系。
注释 关于如何应用局部定位以及哪些形状表示适用的详细规范,在 IfcProduct 的子类型级别提供,并进一步由模型视图定义和实施者协议确定。
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
如果 IfcProduct 的 Product Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProduct 的 IfcPositioningElement 的信息。
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
}
Profile 3D Geometry
General
“型材3D几何体”是填充开口的元素的外部轮廓的标准表示形式。此类元素的示例包括门和窗。对于门和窗,型材几何体用于将衬砌和面板尺寸的参数化定义应用于型材。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBoundedCurve
IfcLabel_0 -> constraint_0
constraint_0[label="=Profile"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Curve3D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Profile Geometry
General
填充开口的元素提供“型材”表示形式,描述开口的形状。此类元素的示例包括门和窗。
型材表示形式的表示标识符为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Profile"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Property Sets with Override
General
Any object occurrence can hold property sets, either directly at the object occurrence as element specific property sets, or at the object type, as type property sets. In this case, the properties that are provided to the object occurrence are the combinations of element specific and type properties. In case that the same property (within the same property set) is defined both in occurrence and type properties, the property value of the occurrence property overrides the property value of the type property.
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
几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。
示例 使用“参考”表示形式的一个示例是用于开口构件,这些构件不应用于通过 IfcRelVoidsElement 关系创建空洞,因为空洞已包含在被空洞构件的“Body”表示形式中。表示形式的表示标识符为:'Reference'
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 Containment
General
空间包含关系 概念定义了物理元素(如建筑元素、设备元素或家具元素)作为被包含在空间结构元素内的关系。
IfcElement 的任何子类型都可能参与两种不同的包含关系。第一种(在大多数实现场景中是强制性的)是层级空间包含关系,第二种(可选)是元素组件内的聚合关系。
concept {
IfcElement :ContainedInStructure -> IfcRelContainedInSpatialStructure :RelatedElements
IfcRelContainedInSpatialStructure :RelatingStructure -> IfcSpatialElement
IfcSpatialElement :Name -> IfcLabel
IfcRelContainedInSpatialStructure :RelatingStructure[binding="RelatingStructure"]
IfcSpatialElement :Name[binding="SpatialElementName"]
}
此概念可应用于以下资源
Surface 3D Geometry
General
“表面3D几何体”是具有描述对象内部或外部表面的“表面”表示形式的元素的标准表面表示形式,例如用于在元素的中平面上定义热边界。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBoundedSurface
IfcShapeRepresentation :Items -> IfcSweptSurface
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Surface3D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Surface Geometry
General
元素可以具有“表面”表示形式,描述对象的外部表面。此表示形式可用于测试具有部件组合(如框架墙)的对象,或用于在元素的中平面上理想化定义热边界。
表面表示形式的表示标识符为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
IfcBuiltElement
(72)
Product Assignment
General
产品可能拥有指示作用于产品的过程的分配。此类分配的一个示例是建造墙壁的任务。
concept {
IfcProduct :ReferencedBy -> IfcRelAssignsToProduct :RelatingProduct
IfcRelAssignsToProduct :RelatedObjects -> IfcObject :HasAssignments
IfcRelAssignsToProduct :RelatedObjects[binding="Type"]
}
此概念可应用于以下资源
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 Containment
General
空间包含关系 概念定义了物理元素(如建筑元素、设备元素或家具元素)作为被包含在空间结构元素内的关系。
IfcElement 的任何子类型都可能参与两种不同的包含关系。第一种(在大多数实现场景中是强制性的)是层级空间包含关系,第二种(可选)是元素组件内的聚合关系。
concept {
IfcElement :ContainedInStructure -> IfcRelContainedInSpatialStructure :RelatedElements
IfcRelContainedInSpatialStructure :RelatingStructure -> IfcSpatialElement
IfcSpatialElement :Name -> IfcLabel
IfcRelContainedInSpatialStructure :RelatingStructure[binding="RelatingStructure"]
IfcSpatialElement :Name[binding="SpatialElementName"]
}
Surface 3D Geometry
General
“表面3D几何体”是具有描述对象内部或外部表面的“表面”表示形式的元素的标准表面表示形式,例如用于在元素的中平面上定义热边界。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBoundedSurface
IfcShapeRepresentation :Items -> IfcSweptSurface
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Surface3D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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 AdvancedBrep Geometry
General
IfcElement (到目前为止在其子类型或视图定义中没有进一步的约束)可以表示为单个或多个边界表示模型,其中包括高级曲面,通常称为 NURBS 曲面。“AdvancedBrep”表示允许表示复杂的自由形状元素。
注释 视图定义或实施协议可能限制或禁止使用“AdvancedBrep”几何体。
Body AdvancedSwept Directrix Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSurfaceCurveSweptAreaSolid
IfcShapeRepresentation :Items -> IfcFixedReferenceSweptAreaSolid
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSurfaceCurveSweptAreaSolid -> SurfaceCurve_SweptArea_PolyCurve_Profile
IfcFixedReferenceSweptAreaSolid -> FixedReference_SweptArea_PolyCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSwept DiskSolid PolyCurve Geometry
General
实体高级扫掠圆盘实体多曲线几何体(Body AdvancedSwept DiskSolid PolyCurve Geometry )是通过扫掠圆盘实体模型来表示产品的三维形状,其中直接曲线由索引多曲线创建。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSweptDiskSolid
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSweptDiskSolid -> Swept_Disk_Solid_PolyCurve_Directrix
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSwept Tapered Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcExtrudedAreaSolidTapered
IfcShapeRepresentation :Items -> IfcRevolvedAreaSolidTapered
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcExtrudedAreaSolidTapered -> Extruded_Area_Tapered_PolyCurve_Profile
IfcExtrudedAreaSolidTapered -> Extruded_Area_Tapered_Parameterized_Profile
IfcRevolvedAreaSolidTapered -> Revolved_Area_Tapered_PolyCurve_Profile
IfcRevolvedAreaSolidTapered -> Revolved_Area_Tapered_Parameterized_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSweptSolid Geometry
General
实体高级扫掠实体几何体(Body AdvancedSweptSolid Geometry )是通过扫掠实体模型来表示产品的三维形状,包括高级扫掠操作,例如沿任意直接曲线扫掠和锥形扫掠。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Brep Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个边界表示模型(这些模型被限制为具有或不具有空洞的面片 Brep)。Brep 表示允许表示复杂的元素形状。
图 6.6.3.14.A — 建筑元素主体边界表示
示例 如图150所示,Brep表达通过包含一个或多个_IfcFacetedBrep_类型项目的_IfcShapeRepresentation_给出。某些情况下同时提供相同复杂形状的边界框简化表达可能更为实用。
Body CSG Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为 CSG 基元或 CSG 树。CSG 表示允许表示复杂的元素形状。
注释 视图定义或实施协议可能限制或禁止使用“CSG”几何体。
Body Clipping Geometry
General
实体裁剪几何体(Body Clipping Geometry )是通过使用构造实体几何模型并仅涉及半空间实体的差集运算来表示产品的三维形状。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBooleanClippingResult_0
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Clipping"]
IfcBooleanClippingResult_0:Operator -> IfcBooleanOperator
IfcBooleanClippingResult_0:FirstOperand -> IfcCsgPrimitive3D
IfcBooleanClippingResult_0:FirstOperand -> IfcSolidModel
IfcBooleanClippingResult_0:FirstOperand -> IfcBooleanClippingResult_1
IfcBooleanClippingResult_0:SecondOperand -> IfcHalfSpaceSolid
IfcBooleanClippingResult_0:SecondOperand -> IfcPolygonalBoundedHalfSpace
IfcPolygonalBoundedHalfSpace :BaseSurface -> IfcPlane
IfcPolygonalBoundedHalfSpace :AgreementFlag -> IfcBoolean
IfcPolygonalBoundedHalfSpace :Position -> IfcAxis2Placement3D
IfcPolygonalBoundedHalfSpace :PolygonalBoundary -> IfcIndexedPolyCurve
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Geometry
General
IfcProduct 的主体或实体模型几何表示通常使用镶嵌(Tessellation)或边界表示(Brep)定义。子类型可以提供关于其他可用表示类型的建议。持有此几何表示的 IfcShapeRepresentation 的以下属性值应被使用:
Body SectionedSolidHorizontal
General
实体分段实体水平几何体(Body SectionedSolidHorizontal )是使用两个或多个闭合轮廓(可能尺寸不同)通过沿直接曲线的指定位置进行扫掠来表示产品的三维实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSectionedSolidHorizontal
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSectionedSolidHorizontal :Directrix -> IfcBoundedCurve
IfcSectionedSolidHorizontal :CrossSections -> IfcProfileDef
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
IfcSectionedSolidHorizontal :Directrix[binding="Directrix"]
IfcSectionedSolidHorizontal :CrossSections[binding="CrossSections"]
}
Body SurfaceModel Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个表面模型,这些模型基于壳体或面体表面模型。它还可以包括镶嵌模型。
图 6.6.3.14.B — 元素表面模型表示
示例 如图149所示,曲面模型表达通过包含单个项目的_IfcShapeRepresentation_给出,该项目可以是_IfcShellBasedSurfaceModel_或_IfcFaceBasedSurfaceModel_。某些情况下同时提供相同复杂形状的边界框简化表达可能更为实用。
Body SurfaceOrSolidModel Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为混合表示,包括表面模型和实体模型。
Body SweptSolid Composite Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_Composite_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid CompositeCurve Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_CompositeCurve_Profile
IfcSweptAreaSolid -> Revolved_Area_CompositeCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid Geometry
General
实体扫掠实体几何体(Body SweptSolid Geometry )是通过扫掠实体模型来表示产品的三维形状,仅允许使用基本的挤出面积实体和旋转面积实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :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="=Body"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid ParameterizedProfile Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_Standardized_Profile
IfcSweptAreaSolid -> Revolved_Area_Standardized_Profile
IfcSweptAreaSolid -> Extruded_Area_Basic_Profile
IfcSweptAreaSolid -> Revolved_Area_Basic_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid PolyCurve Geometry
General
实体扫掠实体多曲线几何体(Body SweptSolid PolyCurve Geometry )是通过扫掠实体模型来表示产品的三维形状,仅允许使用基本的挤出面积实体和旋转面积实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_PolyCurve_Profile
IfcSweptAreaSolid -> Revolved_Area_PolyCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body Tessellation Geometry
Reference View
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个镶嵌表面模型,特别是三角化表面模型。
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"]
}
Element Covering
General
覆盖元素通过“元素覆盖”概念分配给其承载元素。
示例 使用_IfcRelCoversBldgElements_关系将覆层分配给墙,将地板分配给楼板,将包裹分配给管道。
concept {
IfcElement :HasCoverings -> IfcRelCoversBldgElements :RelatingBuildingElement
IfcRelCoversBldgElements :RelatedCoverings -> IfcCovering
}
Element Interference
General
concept {
IfcElement_0:IsInterferedByElements -> IfcRelInterferesElements :RelatedElement
IfcRelInterferesElements :RelatingElement -> IfcElement_1
IfcRelInterferesElements :InterferenceGeometry -> IfcConnectionVolumeGeometry
IfcRelInterferesElements :InterferenceType -> IfcIdentifier
IfcConnectionVolumeGeometry :VolumeOnRelatingElement -> IfcSolidModel
}
Element Nesting
General
主体元素可以嵌套连接的组件。当存在特定的安装位置或外形尺寸来安装特定元素时,应使用此方法。
Element Occurrence Attributes
General
注意:此属性模板与其他类似模板一样,源自与 mvdXML 相关联的旧有要求,以及 MVD 定义交换信息要求的早期时代。此类模板不再为规范增加价值,也不会传达超出模式中已定义信息的内容。此外,一些模板引用了已弃用的实体,可能导致不必要的混淆。
作为清理文档的更广泛工作的一部分,此模板和其他非必需模板将在下一个版本中删除。
物理构件可以通过 Tag 属性进一步标识。这是一个人类可读的标识符,例如构件或项目编号。虽然对此类标签的使用没有限制,但建议 Tag 在其包含的范围内是唯一的。
concept {
IfcElement :Tag -> IfcIdentifier
}
Element Projecting
General
concept {
IfcElement :HasProjections -> IfcRelProjectsElement :RelatingElement
IfcRelProjectsElement :RelatedFeatureElement -> IfcProjectionElement
IfcProjectionElement :PredefinedType -> IfcProjectionElementTypeEnum
}
Element Voiding
General
构件可以定义空腔,这些空腔可以是部分凹陷或贯穿整个深度。开口的空腔可选择性地由另一个构件填充,例如门、窗、土方或骨料填充,或者可以表示没有填充物的挖空特征。
构件的“主体”表示不考虑空腔,需要通过 CSG 操作来产生最终形状。
构件的“网格”表示考虑了空腔,因此无需额外的操作。
concept {
IfcElement :HasOpenings -> IfcRelVoidsElement :RelatingBuildingElement
IfcElement :HasOpenings[binding="HasOpenings"]
}
Element Voiding Features
General
构件可以定义挖空特征,这可以通过切割、钻孔或铣削各种材料制成的构件来实现,或者通过嵌入混凝土等材料的模板来实现。
构件的“主体”表示不考虑空腔,需要通过 CSG 操作来产生最终形状。
构件的“网格”表示考虑了空腔,因此无需额外的操作。
concept {
IfcElement :HasOpenings -> IfcRelVoidsElement :RelatingBuildingElement
IfcRelVoidsElement :RelatedOpeningElement -> IfcVoidingFeature
IfcVoidingFeature :PredefinedType -> IfcVoidingFeatureTypeEnum
IfcElement :HasOpenings[binding="HasOpenings"]
IfcRelVoidsElement :RelatedOpeningElement[binding="RelatedVoidingFeature"]
IfcVoidingFeature :PredefinedType[binding="VoidingFeatureType"]
}
FootPrint Annotation Geometry
General
“楼板平面标注几何体”是元素的几何表示形式的楼板平面投影,主要包含二维曲线、填充线和附加标注(如标签号或类似项)。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcProduct :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcGeometricCurveSet
IfcShapeRepresentation :Items -> IfcAnnotationFillArea
IfcShapeRepresentation :Items -> IfcTextLiteral
IfcLabel_0 -> constraint_0
constraint_0[label="=FootPrint"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Annotation2D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
FootPrint GeomSet PolyCurve Geometry
General
楼板平面表示形式的此专门化使用索引曲线来表示边界。
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"]
IfcGeometricCurveSet :Elements -> IfcIndexedPolyCurve
IfcIndexedPolyCurve :Points -> IfcCartesianPointList2D
IfcIndexedPolyCurve :Segments -> IfcArcIndex
IfcIndexedPolyCurve :Segments -> IfcLineIndex
IfcIndexedPolyCurve :SelfIntersect -> IfcBoolean
IfcCartesianPointList2D :CoordList -> IfcLengthMeasure
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
FootPrint Geometry
General
填充边界的元素提供“楼板平面”表示形式,指示矩形或任何任意的外部和内部边界曲线集。此类元素的示例包括楼板和空间。对于具有指示材料厚度的材料层集关联的元素,可以基于楼板平面和材料层生成“Body”表示形式。填充区域样式可以指示二维渲染的特定颜色、瓷砖或填充线。
楼板平面表示形式的表示标识符为:
concept {
IfcProduct :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=FootPrint"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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"]
}
Lighting Geometry
General
发光的元素提供“照明”表示形式。此类元素的示例包括灯具和照明设备。此表示形式可用于三维渲染或照明设计。
“照明”表示形式的表示标识符、类型以及唯一允许的单个表示项为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcLightSource
IfcLabel_0 -> constraint_0
constraint_0[label="=Lighting"]
IfcLabel_1 -> constraint_1
constraint_1[label="=LightSource"]
IfcLightSource :LightColour -> IfcColourRgb
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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
任何产品或产品类型都可以关联材料,以指示对象的物理组成。
示例 对象可以由单一材料或具有特定布局的材料集组成。几个例子包括:
* 楼板可以关联一层混凝土;
* 梁可以关联钢的 I 形剖面;
* 门可以关联用于框架和玻璃的构成件;
* 端口可以关联流过它的剖面和/或材料,例如热水。
材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。
示例 材料信息也可以在对象类型级别提供,定义相同类型的所有实例的通用材料数据。然后可以通过逆向 IsTypedBy 关系访问对象类型,并通过其 HasAssociations 逆向关系和 IfcRelAssociatesMaterial .RelatingMaterial 指向材料信息。如果两者都提供,则直接分配给对象实例的材料将覆盖分配给对象类型的材料。
concept {
IfcObjectDefinition :HasAssociations -> IfcRelAssociatesMaterial :RelatedObjects
}
Material Single
General
材料直接与产品和产品类型关联,以表示整个对象的均匀材料。
材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObject 和 IfcObject 上进行关联,则直接分配给 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
对象实例可以通过特定的对象类型来定义,使用 对象类型定义 概念。对于大多数语义对象,定义了一对实体——一个对象实例实体和一个相应的对象类型实体。
在实例级别,对象实例可能具有:
通过应用类型级别定义的所有特性,与其对象类型实例相似的状态;
特定特性的覆盖状态;
没有定义的对象类型实例。
在对象类型级别定义的特性可能包括:
通用命名和预定义类型;
类型驱动的属性集中的通用属性;
通用几何表示,作为映射表示应用于每个实例;
通用材质分配(材质集用法除外);
分解结构的通用定义。
许多对象实例和对象类型实体都有一个名为 PredefinedType 的属性,该属性由特定的枚举组成。这种预定义类型本质上提供了另一个继承级别,可以在不需要额外实体的情况下进一步区分对象。预定义类型不仅仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。如果对象由 IfcTypeObject 类型的,则只有当 IfcTypeObject 上的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例上的 PredefinedType 。
示例 对于具有部件组成的对象的类型,这些部件可能在具有单独状态的对象实例上得到反映。例如,墙类型 可能定义了螺柱的特定排列,墙实例 可能反映了相同的螺柱排列,并且墙实例内的螺柱可能参与不存在于类型中的特定关系,例如连接到电气接线盒。
concept {
IfcObject :IsTypedBy -> IfcRelDefinesByType :RelatedObjects
IfcRelDefinesByType :RelatingType -> IfcTypeObject
IfcObject :IsTypedBy[binding="HasType"]
IfcRelDefinesByType :RelatingType[binding="RelatingType"]
IfcTypeObject :Name[binding="TypeName"]
}
此概念可应用于以下资源
Object User Identity
General
An attribute Name and optionally Description can be used for all subypes of IfcObject . For those subtypes, that have an object type definition, such as IfcBeam - IfcBeamType , the common Name and optionally Description is associated with the object type.
Product Geometric Representation
General
任何 IfcProduct 的几何表示由 IfcProductDefinitionShape 提供,允许进行多个几何表示。它使用 Product Placement 概念,利用 IfcLocalPlacement 建立对象坐标系,所有几何表示都基于该坐标系。
注释 关于如何应用局部定位以及哪些形状表示适用的详细规范,在 IfcProduct 的子类型级别提供,并进一步由模型视图定义和实施者协议确定。
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 Grid Placement
General
产品实例可以相对于网格进行定位,网格的轴可以被修改,从而使产品实例相对于网格轴重新定位。
concept {
IfcProduct :ObjectPlacement -> IfcGridPlacement
IfcGridPlacement :PlacementLocation -> IfcVirtualGridIntersection
IfcGridPlacement :PlacementRefDirection -> IfcDirection
IfcGridPlacement :PlacementRelTo -> IfcObjectPlacement
IfcVirtualGridIntersection :OffsetDistances -> IfcLengthMeasure_0
IfcVirtualGridIntersection :IntersectingAxes -> IfcGridAxis
IfcGridAxis :AxisTag -> IfcLabel
IfcGridAxis :AxisCurve -> IfcLine
IfcGridAxis :SameSense -> IfcBoolean
IfcLine :Pnt -> IfcCartesianPoint
IfcLine :Dir -> IfcVector
IfcCartesianPoint :Coordinates -> IfcLengthMeasure_1
IfcObjectPlacement :PlacesObject -> IfcGrid_0:ObjectPlacement
}
Product Linear Placement
General
具有 Product Linear Placement 模板的产品放置。它定义了基于曲线的局部坐标系,该曲线由 IfcLinearPlacement .RelativePlacement 引用,而 IfcLinearPlacement .RelativePlacement 是一个 IfcAxis2PlacementLinear .Location ,使用 IfcPointByDistanceExpression .BasisCurve 。局部坐标系基于曲线在 Location 处的切线、其在全局 Z 平面上的法线以及上述向量的叉积。
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
如果 IfcProduct 的 Product Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProduct 的 IfcPositioningElement 的信息。
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
}
Profile 3D Geometry
General
“型材3D几何体”是填充开口的元素的外部轮廓的标准表示形式。此类元素的示例包括门和窗。对于门和窗,型材几何体用于将衬砌和面板尺寸的参数化定义应用于型材。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBoundedCurve
IfcLabel_0 -> constraint_0
constraint_0[label="=Profile"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Curve3D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Profile Geometry
General
填充开口的元素提供“型材”表示形式,描述开口的形状。此类元素的示例包括门和窗。
型材表示形式的表示标识符为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Profile"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Property Sets with Override
General
Any object occurrence can hold property sets, either directly at the object occurrence as element specific property sets, or at the object type, as type property sets. In this case, the properties that are provided to the object occurrence are the combinations of element specific and type properties. In case that the same property (within the same property set) is defined both in occurrence and type properties, the property value of the occurrence property overrides the property value of the type property.
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
几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。
示例 使用“参考”表示形式的一个示例是用于开口构件,这些构件不应用于通过 IfcRelVoidsElement 关系创建空洞,因为空洞已包含在被空洞构件的“Body”表示形式中。表示形式的表示标识符为:'Reference'
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。此外,它还可以为概念提供名称和描述。
Surface Feature Adherence
General
附着表示主体结构(称为“主机”)与附着组件(称为“附着元素”)之间的外部部分组成关系。附着概念有多种用法,例如:
附着用于建筑构件,以附着表面特征,这些特征以标记、表面处理或缺陷的形式修改了主机构件。
附着是一种双向关系,从主机结构到其附加组件的关系称为附着(adherence),从组件到其主机结构的关系称为托管(hosting)。
concept {
IfcElement :HasSurfaceFeatures -> IfcRelAdheresToElement :RelatingElement
IfcRelAdheresToElement :RelatedSurfaceFeatures -> IfcSurfaceFeature
IfcSurfaceFeature :Name -> IfcLabel
IfcElement :HasSurfaceFeatures[binding="HasSurfaceFeatures"]
IfcRelAdheresToElement :RelatedSurfaceFeatures[binding="RelatedSurfaceFeatures"]
IfcSurfaceFeature :Name[binding="SurfaceFeatureName"]
}
Surface Geometry
General
元素可以具有“表面”表示形式,描述对象的外部表面。此表示形式可用于测试具有部件组合(如框架墙)的对象,或用于在元素的中平面上理想化定义热边界。
表面表示形式的表示标识符为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Surface Sectioned Geometry
General
“表面分段几何体”是具有“表面”表示形式的元素的表示形式,其中表面使用两个或多个开放轮廓来定义,这些轮廓沿着指定的路径(directrix)在指定位置之间扫掠,例如用于定义 IfcCourse 的上边界。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSectionedSurface
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=SectionedSurface"]
IfcSectionedSurface :Directrix -> IfcBoundedCurve
IfcSectionedSurface :CrossSections -> IfcProfileDef
IfcSectionedSurface :CrossSections -> IfcOpenCrossProfileDef
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
IfcSectionedSurface :Directrix[binding="Directrix"]
IfcSectionedSurface :CrossSections[binding="CrossSections"]
}
Surface Tessellation Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcTriangulatedFaceSet
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Tessellation"]
IfcTriangulatedFaceSet :Coordinates -> IfcCartesianPointList3D
IfcTriangulatedFaceSet :Normals -> IfcParameterValue
IfcTriangulatedFaceSet :LayerAssignment -> IfcPresentationLayerAssignment :AssignedItems
IfcTriangulatedFaceSet :StyledByItem -> IfcStyledItem :Item
IfcCartesianPointList3D :CoordList -> IfcLengthMeasure
IfcPresentationLayerAssignment -> Layer
IfcStyledItem :Styles -> IfcSurfaceStyle
IfcSurfaceStyle -> Surface_Color_Style
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
IfcEarthworksElement
(72)
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 AdvancedBrep Geometry
General
IfcElement (到目前为止在其子类型或视图定义中没有进一步的约束)可以表示为单个或多个边界表示模型,其中包括高级曲面,通常称为 NURBS 曲面。“AdvancedBrep”表示允许表示复杂的自由形状元素。
注释 视图定义或实施协议可能限制或禁止使用“AdvancedBrep”几何体。
Body AdvancedSwept Directrix Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSurfaceCurveSweptAreaSolid
IfcShapeRepresentation :Items -> IfcFixedReferenceSweptAreaSolid
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSurfaceCurveSweptAreaSolid -> SurfaceCurve_SweptArea_PolyCurve_Profile
IfcFixedReferenceSweptAreaSolid -> FixedReference_SweptArea_PolyCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSwept DiskSolid PolyCurve Geometry
General
实体高级扫掠圆盘实体多曲线几何体(Body AdvancedSwept DiskSolid PolyCurve Geometry )是通过扫掠圆盘实体模型来表示产品的三维形状,其中直接曲线由索引多曲线创建。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSweptDiskSolid
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSweptDiskSolid -> Swept_Disk_Solid_PolyCurve_Directrix
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSwept Tapered Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcExtrudedAreaSolidTapered
IfcShapeRepresentation :Items -> IfcRevolvedAreaSolidTapered
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcExtrudedAreaSolidTapered -> Extruded_Area_Tapered_PolyCurve_Profile
IfcExtrudedAreaSolidTapered -> Extruded_Area_Tapered_Parameterized_Profile
IfcRevolvedAreaSolidTapered -> Revolved_Area_Tapered_PolyCurve_Profile
IfcRevolvedAreaSolidTapered -> Revolved_Area_Tapered_Parameterized_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSweptSolid Geometry
General
实体高级扫掠实体几何体(Body AdvancedSweptSolid Geometry )是通过扫掠实体模型来表示产品的三维形状,包括高级扫掠操作,例如沿任意直接曲线扫掠和锥形扫掠。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Brep Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个边界表示模型(这些模型被限制为具有或不具有空洞的面片 Brep)。Brep 表示允许表示复杂的元素形状。
图 6.6.3.14.A — 建筑元素主体边界表示
示例 如图150所示,Brep表达通过包含一个或多个_IfcFacetedBrep_类型项目的_IfcShapeRepresentation_给出。某些情况下同时提供相同复杂形状的边界框简化表达可能更为实用。
Body CSG Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为 CSG 基元或 CSG 树。CSG 表示允许表示复杂的元素形状。
注释 视图定义或实施协议可能限制或禁止使用“CSG”几何体。
Body Clipping Geometry
General
实体裁剪几何体(Body Clipping Geometry )是通过使用构造实体几何模型并仅涉及半空间实体的差集运算来表示产品的三维形状。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBooleanClippingResult_0
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Clipping"]
IfcBooleanClippingResult_0:Operator -> IfcBooleanOperator
IfcBooleanClippingResult_0:FirstOperand -> IfcCsgPrimitive3D
IfcBooleanClippingResult_0:FirstOperand -> IfcSolidModel
IfcBooleanClippingResult_0:FirstOperand -> IfcBooleanClippingResult_1
IfcBooleanClippingResult_0:SecondOperand -> IfcHalfSpaceSolid
IfcBooleanClippingResult_0:SecondOperand -> IfcPolygonalBoundedHalfSpace
IfcPolygonalBoundedHalfSpace :BaseSurface -> IfcPlane
IfcPolygonalBoundedHalfSpace :AgreementFlag -> IfcBoolean
IfcPolygonalBoundedHalfSpace :Position -> IfcAxis2Placement3D
IfcPolygonalBoundedHalfSpace :PolygonalBoundary -> IfcIndexedPolyCurve
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Geometry
General
IfcProduct 的主体或实体模型几何表示通常使用镶嵌(Tessellation)或边界表示(Brep)定义。子类型可以提供关于其他可用表示类型的建议。持有此几何表示的 IfcShapeRepresentation 的以下属性值应被使用:
Body SectionedSolidHorizontal
General
实体分段实体水平几何体(Body SectionedSolidHorizontal )是使用两个或多个闭合轮廓(可能尺寸不同)通过沿直接曲线的指定位置进行扫掠来表示产品的三维实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSectionedSolidHorizontal
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSectionedSolidHorizontal :Directrix -> IfcBoundedCurve
IfcSectionedSolidHorizontal :CrossSections -> IfcProfileDef
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
IfcSectionedSolidHorizontal :Directrix[binding="Directrix"]
IfcSectionedSolidHorizontal :CrossSections[binding="CrossSections"]
}
Body SurfaceModel Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个表面模型,这些模型基于壳体或面体表面模型。它还可以包括镶嵌模型。
图 6.6.3.14.B — 元素表面模型表示
示例 如图149所示,曲面模型表达通过包含单个项目的_IfcShapeRepresentation_给出,该项目可以是_IfcShellBasedSurfaceModel_或_IfcFaceBasedSurfaceModel_。某些情况下同时提供相同复杂形状的边界框简化表达可能更为实用。
Body SurfaceOrSolidModel Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为混合表示,包括表面模型和实体模型。
Body SweptSolid Composite Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_Composite_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid CompositeCurve Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_CompositeCurve_Profile
IfcSweptAreaSolid -> Revolved_Area_CompositeCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid Geometry
General
实体扫掠实体几何体(Body SweptSolid Geometry )是通过扫掠实体模型来表示产品的三维形状,仅允许使用基本的挤出面积实体和旋转面积实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :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="=Body"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid ParameterizedProfile Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_Standardized_Profile
IfcSweptAreaSolid -> Revolved_Area_Standardized_Profile
IfcSweptAreaSolid -> Extruded_Area_Basic_Profile
IfcSweptAreaSolid -> Revolved_Area_Basic_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid PolyCurve Geometry
General
实体扫掠实体多曲线几何体(Body SweptSolid PolyCurve Geometry )是通过扫掠实体模型来表示产品的三维形状,仅允许使用基本的挤出面积实体和旋转面积实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_PolyCurve_Profile
IfcSweptAreaSolid -> Revolved_Area_PolyCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body Tessellation Geometry
Reference View
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个镶嵌表面模型,特别是三角化表面模型。
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"]
}
Element Covering
General
覆盖元素通过“元素覆盖”概念分配给其承载元素。
示例 使用_IfcRelCoversBldgElements_关系将覆层分配给墙,将地板分配给楼板,将包裹分配给管道。
concept {
IfcElement :HasCoverings -> IfcRelCoversBldgElements :RelatingBuildingElement
IfcRelCoversBldgElements :RelatedCoverings -> IfcCovering
}
Element Interference
General
concept {
IfcElement_0:IsInterferedByElements -> IfcRelInterferesElements :RelatedElement
IfcRelInterferesElements :RelatingElement -> IfcElement_1
IfcRelInterferesElements :InterferenceGeometry -> IfcConnectionVolumeGeometry
IfcRelInterferesElements :InterferenceType -> IfcIdentifier
IfcConnectionVolumeGeometry :VolumeOnRelatingElement -> IfcSolidModel
}
Element Nesting
General
主体元素可以嵌套连接的组件。当存在特定的安装位置或外形尺寸来安装特定元素时,应使用此方法。
Element Occurrence Attributes
General
注意:此属性模板与其他类似模板一样,源自与 mvdXML 相关联的旧有要求,以及 MVD 定义交换信息要求的早期时代。此类模板不再为规范增加价值,也不会传达超出模式中已定义信息的内容。此外,一些模板引用了已弃用的实体,可能导致不必要的混淆。
作为清理文档的更广泛工作的一部分,此模板和其他非必需模板将在下一个版本中删除。
物理构件可以通过 Tag 属性进一步标识。这是一个人类可读的标识符,例如构件或项目编号。虽然对此类标签的使用没有限制,但建议 Tag 在其包含的范围内是唯一的。
concept {
IfcElement :Tag -> IfcIdentifier
}
Element Projecting
General
concept {
IfcElement :HasProjections -> IfcRelProjectsElement :RelatingElement
IfcRelProjectsElement :RelatedFeatureElement -> IfcProjectionElement
IfcProjectionElement :PredefinedType -> IfcProjectionElementTypeEnum
}
Element Voiding
General
构件可以定义空腔,这些空腔可以是部分凹陷或贯穿整个深度。开口的空腔可选择性地由另一个构件填充,例如门、窗、土方或骨料填充,或者可以表示没有填充物的挖空特征。
构件的“主体”表示不考虑空腔,需要通过 CSG 操作来产生最终形状。
构件的“网格”表示考虑了空腔,因此无需额外的操作。
concept {
IfcElement :HasOpenings -> IfcRelVoidsElement :RelatingBuildingElement
IfcElement :HasOpenings[binding="HasOpenings"]
}
Element Voiding Features
General
构件可以定义挖空特征,这可以通过切割、钻孔或铣削各种材料制成的构件来实现,或者通过嵌入混凝土等材料的模板来实现。
构件的“主体”表示不考虑空腔,需要通过 CSG 操作来产生最终形状。
构件的“网格”表示考虑了空腔,因此无需额外的操作。
concept {
IfcElement :HasOpenings -> IfcRelVoidsElement :RelatingBuildingElement
IfcRelVoidsElement :RelatedOpeningElement -> IfcVoidingFeature
IfcVoidingFeature :PredefinedType -> IfcVoidingFeatureTypeEnum
IfcElement :HasOpenings[binding="HasOpenings"]
IfcRelVoidsElement :RelatedOpeningElement[binding="RelatedVoidingFeature"]
IfcVoidingFeature :PredefinedType[binding="VoidingFeatureType"]
}
FootPrint Annotation Geometry
General
“楼板平面标注几何体”是元素的几何表示形式的楼板平面投影,主要包含二维曲线、填充线和附加标注(如标签号或类似项)。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcProduct :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcGeometricCurveSet
IfcShapeRepresentation :Items -> IfcAnnotationFillArea
IfcShapeRepresentation :Items -> IfcTextLiteral
IfcLabel_0 -> constraint_0
constraint_0[label="=FootPrint"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Annotation2D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
FootPrint GeomSet PolyCurve Geometry
General
楼板平面表示形式的此专门化使用索引曲线来表示边界。
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"]
IfcGeometricCurveSet :Elements -> IfcIndexedPolyCurve
IfcIndexedPolyCurve :Points -> IfcCartesianPointList2D
IfcIndexedPolyCurve :Segments -> IfcArcIndex
IfcIndexedPolyCurve :Segments -> IfcLineIndex
IfcIndexedPolyCurve :SelfIntersect -> IfcBoolean
IfcCartesianPointList2D :CoordList -> IfcLengthMeasure
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
FootPrint Geometry
General
填充边界的元素提供“楼板平面”表示形式,指示矩形或任何任意的外部和内部边界曲线集。此类元素的示例包括楼板和空间。对于具有指示材料厚度的材料层集关联的元素,可以基于楼板平面和材料层生成“Body”表示形式。填充区域样式可以指示二维渲染的特定颜色、瓷砖或填充线。
楼板平面表示形式的表示标识符为:
concept {
IfcProduct :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=FootPrint"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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"]
}
Lighting Geometry
General
发光的元素提供“照明”表示形式。此类元素的示例包括灯具和照明设备。此表示形式可用于三维渲染或照明设计。
“照明”表示形式的表示标识符、类型以及唯一允许的单个表示项为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcLightSource
IfcLabel_0 -> constraint_0
constraint_0[label="=Lighting"]
IfcLabel_1 -> constraint_1
constraint_1[label="=LightSource"]
IfcLightSource :LightColour -> IfcColourRgb
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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
任何产品或产品类型都可以关联材料,以指示对象的物理组成。
示例 对象可以由单一材料或具有特定布局的材料集组成。几个例子包括:
* 楼板可以关联一层混凝土;
* 梁可以关联钢的 I 形剖面;
* 门可以关联用于框架和玻璃的构成件;
* 端口可以关联流过它的剖面和/或材料,例如热水。
材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。
示例 材料信息也可以在对象类型级别提供,定义相同类型的所有实例的通用材料数据。然后可以通过逆向 IsTypedBy 关系访问对象类型,并通过其 HasAssociations 逆向关系和 IfcRelAssociatesMaterial .RelatingMaterial 指向材料信息。如果两者都提供,则直接分配给对象实例的材料将覆盖分配给对象类型的材料。
concept {
IfcObjectDefinition :HasAssociations -> IfcRelAssociatesMaterial :RelatedObjects
}
Material Single
General
材料直接与产品和产品类型关联,以表示整个对象的均匀材料。
材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObject 和 IfcObject 上进行关联,则直接分配给 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
对象实例可以通过特定的对象类型来定义,使用 对象类型定义 概念。对于大多数语义对象,定义了一对实体——一个对象实例实体和一个相应的对象类型实体。
在实例级别,对象实例可能具有:
通过应用类型级别定义的所有特性,与其对象类型实例相似的状态;
特定特性的覆盖状态;
没有定义的对象类型实例。
在对象类型级别定义的特性可能包括:
通用命名和预定义类型;
类型驱动的属性集中的通用属性;
通用几何表示,作为映射表示应用于每个实例;
通用材质分配(材质集用法除外);
分解结构的通用定义。
许多对象实例和对象类型实体都有一个名为 PredefinedType 的属性,该属性由特定的枚举组成。这种预定义类型本质上提供了另一个继承级别,可以在不需要额外实体的情况下进一步区分对象。预定义类型不仅仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。如果对象由 IfcTypeObject 类型的,则只有当 IfcTypeObject 上的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例上的 PredefinedType 。
示例 对于具有部件组成的对象的类型,这些部件可能在具有单独状态的对象实例上得到反映。例如,墙类型 可能定义了螺柱的特定排列,墙实例 可能反映了相同的螺柱排列,并且墙实例内的螺柱可能参与不存在于类型中的特定关系,例如连接到电气接线盒。
concept {
IfcObject :IsTypedBy -> IfcRelDefinesByType :RelatedObjects
IfcRelDefinesByType :RelatingType -> IfcTypeObject
IfcObject :IsTypedBy[binding="HasType"]
IfcRelDefinesByType :RelatingType[binding="RelatingType"]
IfcTypeObject :Name[binding="TypeName"]
}
Object User Identity
General
An attribute Name and optionally Description can be used for all subypes of IfcObject . For those subtypes, that have an object type definition, such as IfcBeam - IfcBeamType , the common Name and optionally Description is associated with the object type.
Product Assignment
General
产品可能拥有指示作用于产品的过程的分配。此类分配的一个示例是建造墙壁的任务。
concept {
IfcProduct :ReferencedBy -> IfcRelAssignsToProduct :RelatingProduct
IfcRelAssignsToProduct :RelatedObjects -> IfcObject :HasAssignments
IfcRelAssignsToProduct :RelatedObjects[binding="Type"]
}
Product Geometric Representation
General
任何 IfcProduct 的几何表示由 IfcProductDefinitionShape 提供,允许进行多个几何表示。它使用 Product Placement 概念,利用 IfcLocalPlacement 建立对象坐标系,所有几何表示都基于该坐标系。
注释 关于如何应用局部定位以及哪些形状表示适用的详细规范,在 IfcProduct 的子类型级别提供,并进一步由模型视图定义和实施者协议确定。
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 Grid Placement
General
产品实例可以相对于网格进行定位,网格的轴可以被修改,从而使产品实例相对于网格轴重新定位。
concept {
IfcProduct :ObjectPlacement -> IfcGridPlacement
IfcGridPlacement :PlacementLocation -> IfcVirtualGridIntersection
IfcGridPlacement :PlacementRefDirection -> IfcDirection
IfcGridPlacement :PlacementRelTo -> IfcObjectPlacement
IfcVirtualGridIntersection :OffsetDistances -> IfcLengthMeasure_0
IfcVirtualGridIntersection :IntersectingAxes -> IfcGridAxis
IfcGridAxis :AxisTag -> IfcLabel
IfcGridAxis :AxisCurve -> IfcLine
IfcGridAxis :SameSense -> IfcBoolean
IfcLine :Pnt -> IfcCartesianPoint
IfcLine :Dir -> IfcVector
IfcCartesianPoint :Coordinates -> IfcLengthMeasure_1
IfcObjectPlacement :PlacesObject -> IfcGrid_0:ObjectPlacement
}
Product Linear Placement
General
具有 Product Linear Placement 模板的产品放置。它定义了基于曲线的局部坐标系,该曲线由 IfcLinearPlacement .RelativePlacement 引用,而 IfcLinearPlacement .RelativePlacement 是一个 IfcAxis2PlacementLinear .Location ,使用 IfcPointByDistanceExpression .BasisCurve 。局部坐标系基于曲线在 Location 处的切线、其在全局 Z 平面上的法线以及上述向量的叉积。
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
如果 IfcProduct 的 Product Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProduct 的 IfcPositioningElement 的信息。
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
}
Profile 3D Geometry
General
“型材3D几何体”是填充开口的元素的外部轮廓的标准表示形式。此类元素的示例包括门和窗。对于门和窗,型材几何体用于将衬砌和面板尺寸的参数化定义应用于型材。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBoundedCurve
IfcLabel_0 -> constraint_0
constraint_0[label="=Profile"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Curve3D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Profile Geometry
General
填充开口的元素提供“型材”表示形式,描述开口的形状。此类元素的示例包括门和窗。
型材表示形式的表示标识符为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Profile"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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
Any object occurrence can hold property sets, either directly at the object occurrence as element specific property sets, or at the object type, as type property sets. In this case, the properties that are provided to the object occurrence are the combinations of element specific and type properties. In case that the same property (within the same property set) is defined both in occurrence and type properties, the property value of the occurrence property overrides the property value of the type property.
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
几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。
示例 使用“参考”表示形式的一个示例是用于开口构件,这些构件不应用于通过 IfcRelVoidsElement 关系创建空洞,因为空洞已包含在被空洞构件的“Body”表示形式中。表示形式的表示标识符为:'Reference'
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 Containment
General
空间包含关系 概念定义了物理元素(如建筑元素、设备元素或家具元素)作为被包含在空间结构元素内的关系。
IfcElement 的任何子类型都可能参与两种不同的包含关系。第一种(在大多数实现场景中是强制性的)是层级空间包含关系,第二种(可选)是元素组件内的聚合关系。
concept {
IfcElement :ContainedInStructure -> IfcRelContainedInSpatialStructure :RelatedElements
IfcRelContainedInSpatialStructure :RelatingStructure -> IfcSpatialElement
IfcSpatialElement :Name -> IfcLabel
IfcRelContainedInSpatialStructure :RelatingStructure[binding="RelatingStructure"]
IfcSpatialElement :Name[binding="SpatialElementName"]
}
Surface 3D Geometry
General
“表面3D几何体”是具有描述对象内部或外部表面的“表面”表示形式的元素的标准表面表示形式,例如用于在元素的中平面上定义热边界。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBoundedSurface
IfcShapeRepresentation :Items -> IfcSweptSurface
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Surface3D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Surface Feature Adherence
General
附着表示主体结构(称为“主机”)与附着组件(称为“附着元素”)之间的外部部分组成关系。附着概念有多种用法,例如:
附着用于建筑构件,以附着表面特征,这些特征以标记、表面处理或缺陷的形式修改了主机构件。
附着是一种双向关系,从主机结构到其附加组件的关系称为附着(adherence),从组件到其主机结构的关系称为托管(hosting)。
concept {
IfcElement :HasSurfaceFeatures -> IfcRelAdheresToElement :RelatingElement
IfcRelAdheresToElement :RelatedSurfaceFeatures -> IfcSurfaceFeature
IfcSurfaceFeature :Name -> IfcLabel
IfcElement :HasSurfaceFeatures[binding="HasSurfaceFeatures"]
IfcRelAdheresToElement :RelatedSurfaceFeatures[binding="RelatedSurfaceFeatures"]
IfcSurfaceFeature :Name[binding="SurfaceFeatureName"]
}
Surface Geometry
General
元素可以具有“表面”表示形式,描述对象的外部表面。此表示形式可用于测试具有部件组合(如框架墙)的对象,或用于在元素的中平面上理想化定义热边界。
表面表示形式的表示标识符为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Surface Sectioned Geometry
General
“表面分段几何体”是具有“表面”表示形式的元素的表示形式,其中表面使用两个或多个开放轮廓来定义,这些轮廓沿着指定的路径(directrix)在指定位置之间扫掠,例如用于定义 IfcCourse 的上边界。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSectionedSurface
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=SectionedSurface"]
IfcSectionedSurface :Directrix -> IfcBoundedCurve
IfcSectionedSurface :CrossSections -> IfcProfileDef
IfcSectionedSurface :CrossSections -> IfcOpenCrossProfileDef
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
IfcSectionedSurface :Directrix[binding="Directrix"]
IfcSectionedSurface :CrossSections[binding="CrossSections"]
}
Surface Tessellation Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcTriangulatedFaceSet
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Tessellation"]
IfcTriangulatedFaceSet :Coordinates -> IfcCartesianPointList3D
IfcTriangulatedFaceSet :Normals -> IfcParameterValue
IfcTriangulatedFaceSet :LayerAssignment -> IfcPresentationLayerAssignment :AssignedItems
IfcTriangulatedFaceSet :StyledByItem -> IfcStyledItem :Item
IfcCartesianPointList3D :CoordList -> IfcLengthMeasure
IfcPresentationLayerAssignment -> Layer
IfcStyledItem :Styles -> IfcSurfaceStyle
IfcSurfaceStyle -> Surface_Color_Style
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
点击显示 277 个隐藏的继承概念
点击隐藏 277 个继承概念
IfcReinforcedSoil
(72)
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 AdvancedBrep Geometry
General
IfcElement (到目前为止在其子类型或视图定义中没有进一步的约束)可以表示为单个或多个边界表示模型,其中包括高级曲面,通常称为 NURBS 曲面。“AdvancedBrep”表示允许表示复杂的自由形状元素。
注释 视图定义或实施协议可能限制或禁止使用“AdvancedBrep”几何体。
Body AdvancedSwept Directrix Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSurfaceCurveSweptAreaSolid
IfcShapeRepresentation :Items -> IfcFixedReferenceSweptAreaSolid
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSurfaceCurveSweptAreaSolid -> SurfaceCurve_SweptArea_PolyCurve_Profile
IfcFixedReferenceSweptAreaSolid -> FixedReference_SweptArea_PolyCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSwept DiskSolid PolyCurve Geometry
General
实体高级扫掠圆盘实体多曲线几何体(Body AdvancedSwept DiskSolid PolyCurve Geometry )是通过扫掠圆盘实体模型来表示产品的三维形状,其中直接曲线由索引多曲线创建。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSweptDiskSolid
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSweptDiskSolid -> Swept_Disk_Solid_PolyCurve_Directrix
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSwept Tapered Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcExtrudedAreaSolidTapered
IfcShapeRepresentation :Items -> IfcRevolvedAreaSolidTapered
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcExtrudedAreaSolidTapered -> Extruded_Area_Tapered_PolyCurve_Profile
IfcExtrudedAreaSolidTapered -> Extruded_Area_Tapered_Parameterized_Profile
IfcRevolvedAreaSolidTapered -> Revolved_Area_Tapered_PolyCurve_Profile
IfcRevolvedAreaSolidTapered -> Revolved_Area_Tapered_Parameterized_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body AdvancedSweptSolid Geometry
General
实体高级扫掠实体几何体(Body AdvancedSweptSolid Geometry )是通过扫掠实体模型来表示产品的三维形状,包括高级扫掠操作,例如沿任意直接曲线扫掠和锥形扫掠。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Brep Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个边界表示模型(这些模型被限制为具有或不具有空洞的面片 Brep)。Brep 表示允许表示复杂的元素形状。
图 6.6.3.14.A — 建筑元素主体边界表示
示例 如图150所示,Brep表达通过包含一个或多个_IfcFacetedBrep_类型项目的_IfcShapeRepresentation_给出。某些情况下同时提供相同复杂形状的边界框简化表达可能更为实用。
Body CSG Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为 CSG 基元或 CSG 树。CSG 表示允许表示复杂的元素形状。
注释 视图定义或实施协议可能限制或禁止使用“CSG”几何体。
Body Clipping Geometry
General
实体裁剪几何体(Body Clipping Geometry )是通过使用构造实体几何模型并仅涉及半空间实体的差集运算来表示产品的三维形状。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBooleanClippingResult_0
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Clipping"]
IfcBooleanClippingResult_0:Operator -> IfcBooleanOperator
IfcBooleanClippingResult_0:FirstOperand -> IfcCsgPrimitive3D
IfcBooleanClippingResult_0:FirstOperand -> IfcSolidModel
IfcBooleanClippingResult_0:FirstOperand -> IfcBooleanClippingResult_1
IfcBooleanClippingResult_0:SecondOperand -> IfcHalfSpaceSolid
IfcBooleanClippingResult_0:SecondOperand -> IfcPolygonalBoundedHalfSpace
IfcPolygonalBoundedHalfSpace :BaseSurface -> IfcPlane
IfcPolygonalBoundedHalfSpace :AgreementFlag -> IfcBoolean
IfcPolygonalBoundedHalfSpace :Position -> IfcAxis2Placement3D
IfcPolygonalBoundedHalfSpace :PolygonalBoundary -> IfcIndexedPolyCurve
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Body Geometry
General
IfcProduct 的主体或实体模型几何表示通常使用镶嵌(Tessellation)或边界表示(Brep)定义。子类型可以提供关于其他可用表示类型的建议。持有此几何表示的 IfcShapeRepresentation 的以下属性值应被使用:
Body SectionedSolidHorizontal
General
实体分段实体水平几何体(Body SectionedSolidHorizontal )是使用两个或多个闭合轮廓(可能尺寸不同)通过沿直接曲线的指定位置进行扫掠来表示产品的三维实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSectionedSolidHorizontal
IfcLabel_0 -> constraint_0
constraint_0[label="=Body"]
IfcLabel_1 -> constraint_1
constraint_1[label="=AdvancedSweptSolid"]
IfcSectionedSolidHorizontal :Directrix -> IfcBoundedCurve
IfcSectionedSolidHorizontal :CrossSections -> IfcProfileDef
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
IfcSectionedSolidHorizontal :Directrix[binding="Directrix"]
IfcSectionedSolidHorizontal :CrossSections[binding="CrossSections"]
}
Body SurfaceModel Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个表面模型,这些模型基于壳体或面体表面模型。它还可以包括镶嵌模型。
图 6.6.3.14.B — 元素表面模型表示
示例 如图149所示,曲面模型表达通过包含单个项目的_IfcShapeRepresentation_给出,该项目可以是_IfcShellBasedSurfaceModel_或_IfcFaceBasedSurfaceModel_。某些情况下同时提供相同复杂形状的边界框简化表达可能更为实用。
Body SurfaceOrSolidModel Geometry
General
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为混合表示,包括表面模型和实体模型。
Body SweptSolid Composite Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_Composite_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid CompositeCurve Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_CompositeCurve_Profile
IfcSweptAreaSolid -> Revolved_Area_CompositeCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid Geometry
General
实体扫掠实体几何体(Body SweptSolid Geometry )是通过扫掠实体模型来表示产品的三维形状,仅允许使用基本的挤出面积实体和旋转面积实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :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="=Body"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid ParameterizedProfile Geometry
General
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_Standardized_Profile
IfcSweptAreaSolid -> Revolved_Area_Standardized_Profile
IfcSweptAreaSolid -> Extruded_Area_Basic_Profile
IfcSweptAreaSolid -> Revolved_Area_Basic_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body SweptSolid PolyCurve Geometry
General
实体扫掠实体多曲线几何体(Body SweptSolid PolyCurve Geometry )是通过扫掠实体模型来表示产品的三维形状,仅允许使用基本的挤出面积实体和旋转面积实体。
用于承载此几何表示的_IfcShapeRepresentation_的以下特性值应被使用:
concept {
IfcElement :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="=Body"]
IfcSweptAreaSolid -> Extruded_Area_PolyCurve_Profile
IfcSweptAreaSolid -> Revolved_Area_PolyCurve_Profile
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Geometry"]
}
Body Tessellation Geometry
Reference View
任何 IfcElement (到目前为止在其子类型中没有进一步的约束)可以表示为单个或多个镶嵌表面模型,特别是三角化表面模型。
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"]
}
Element Covering
General
覆盖元素通过“元素覆盖”概念分配给其承载元素。
示例 使用_IfcRelCoversBldgElements_关系将覆层分配给墙,将地板分配给楼板,将包裹分配给管道。
concept {
IfcElement :HasCoverings -> IfcRelCoversBldgElements :RelatingBuildingElement
IfcRelCoversBldgElements :RelatedCoverings -> IfcCovering
}
Element Interference
General
concept {
IfcElement_0:IsInterferedByElements -> IfcRelInterferesElements :RelatedElement
IfcRelInterferesElements :RelatingElement -> IfcElement_1
IfcRelInterferesElements :InterferenceGeometry -> IfcConnectionVolumeGeometry
IfcRelInterferesElements :InterferenceType -> IfcIdentifier
IfcConnectionVolumeGeometry :VolumeOnRelatingElement -> IfcSolidModel
}
Element Nesting
General
主体元素可以嵌套连接的组件。当存在特定的安装位置或外形尺寸来安装特定元素时,应使用此方法。
Element Occurrence Attributes
General
注意:此属性模板与其他类似模板一样,源自与 mvdXML 相关联的旧有要求,以及 MVD 定义交换信息要求的早期时代。此类模板不再为规范增加价值,也不会传达超出模式中已定义信息的内容。此外,一些模板引用了已弃用的实体,可能导致不必要的混淆。
作为清理文档的更广泛工作的一部分,此模板和其他非必需模板将在下一个版本中删除。
物理构件可以通过 Tag 属性进一步标识。这是一个人类可读的标识符,例如构件或项目编号。虽然对此类标签的使用没有限制,但建议 Tag 在其包含的范围内是唯一的。
concept {
IfcElement :Tag -> IfcIdentifier
}
Element Projecting
General
concept {
IfcElement :HasProjections -> IfcRelProjectsElement :RelatingElement
IfcRelProjectsElement :RelatedFeatureElement -> IfcProjectionElement
IfcProjectionElement :PredefinedType -> IfcProjectionElementTypeEnum
}
Element Voiding
General
构件可以定义空腔,这些空腔可以是部分凹陷或贯穿整个深度。开口的空腔可选择性地由另一个构件填充,例如门、窗、土方或骨料填充,或者可以表示没有填充物的挖空特征。
构件的“主体”表示不考虑空腔,需要通过 CSG 操作来产生最终形状。
构件的“网格”表示考虑了空腔,因此无需额外的操作。
concept {
IfcElement :HasOpenings -> IfcRelVoidsElement :RelatingBuildingElement
IfcElement :HasOpenings[binding="HasOpenings"]
}
Element Voiding Features
General
构件可以定义挖空特征,这可以通过切割、钻孔或铣削各种材料制成的构件来实现,或者通过嵌入混凝土等材料的模板来实现。
构件的“主体”表示不考虑空腔,需要通过 CSG 操作来产生最终形状。
构件的“网格”表示考虑了空腔,因此无需额外的操作。
concept {
IfcElement :HasOpenings -> IfcRelVoidsElement :RelatingBuildingElement
IfcRelVoidsElement :RelatedOpeningElement -> IfcVoidingFeature
IfcVoidingFeature :PredefinedType -> IfcVoidingFeatureTypeEnum
IfcElement :HasOpenings[binding="HasOpenings"]
IfcRelVoidsElement :RelatedOpeningElement[binding="RelatedVoidingFeature"]
IfcVoidingFeature :PredefinedType[binding="VoidingFeatureType"]
}
FootPrint Annotation Geometry
General
“楼板平面标注几何体”是元素的几何表示形式的楼板平面投影,主要包含二维曲线、填充线和附加标注(如标签号或类似项)。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcProduct :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcGeometricCurveSet
IfcShapeRepresentation :Items -> IfcAnnotationFillArea
IfcShapeRepresentation :Items -> IfcTextLiteral
IfcLabel_0 -> constraint_0
constraint_0[label="=FootPrint"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Annotation2D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
FootPrint GeomSet PolyCurve Geometry
General
楼板平面表示形式的此专门化使用索引曲线来表示边界。
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"]
IfcGeometricCurveSet :Elements -> IfcIndexedPolyCurve
IfcIndexedPolyCurve :Points -> IfcCartesianPointList2D
IfcIndexedPolyCurve :Segments -> IfcArcIndex
IfcIndexedPolyCurve :Segments -> IfcLineIndex
IfcIndexedPolyCurve :SelfIntersect -> IfcBoolean
IfcCartesianPointList2D :CoordList -> IfcLengthMeasure
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
FootPrint Geometry
General
填充边界的元素提供“楼板平面”表示形式,指示矩形或任何任意的外部和内部边界曲线集。此类元素的示例包括楼板和空间。对于具有指示材料厚度的材料层集关联的元素,可以基于楼板平面和材料层生成“Body”表示形式。填充区域样式可以指示二维渲染的特定颜色、瓷砖或填充线。
楼板平面表示形式的表示标识符为:
concept {
IfcProduct :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=FootPrint"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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"]
}
Lighting Geometry
General
发光的元素提供“照明”表示形式。此类元素的示例包括灯具和照明设备。此表示形式可用于三维渲染或照明设计。
“照明”表示形式的表示标识符、类型以及唯一允许的单个表示项为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcLightSource
IfcLabel_0 -> constraint_0
constraint_0[label="=Lighting"]
IfcLabel_1 -> constraint_1
constraint_1[label="=LightSource"]
IfcLightSource :LightColour -> IfcColourRgb
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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
任何产品或产品类型都可以关联材料,以指示对象的物理组成。
示例 对象可以由单一材料或具有特定布局的材料集组成。几个例子包括:
* 楼板可以关联一层混凝土;
* 梁可以关联钢的 I 形剖面;
* 门可以关联用于框架和玻璃的构成件;
* 端口可以关联流过它的剖面和/或材料,例如热水。
材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。
示例 材料信息也可以在对象类型级别提供,定义相同类型的所有实例的通用材料数据。然后可以通过逆向 IsTypedBy 关系访问对象类型,并通过其 HasAssociations 逆向关系和 IfcRelAssociatesMaterial .RelatingMaterial 指向材料信息。如果两者都提供,则直接分配给对象实例的材料将覆盖分配给对象类型的材料。
concept {
IfcObjectDefinition :HasAssociations -> IfcRelAssociatesMaterial :RelatedObjects
}
Material Single
General
材料直接与产品和产品类型关联,以表示整个对象的均匀材料。
材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObject 和 IfcObject 上进行关联,则直接分配给 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
对象实例可以通过特定的对象类型来定义,使用 对象类型定义 概念。对于大多数语义对象,定义了一对实体——一个对象实例实体和一个相应的对象类型实体。
在实例级别,对象实例可能具有:
通过应用类型级别定义的所有特性,与其对象类型实例相似的状态;
特定特性的覆盖状态;
没有定义的对象类型实例。
在对象类型级别定义的特性可能包括:
通用命名和预定义类型;
类型驱动的属性集中的通用属性;
通用几何表示,作为映射表示应用于每个实例;
通用材质分配(材质集用法除外);
分解结构的通用定义。
许多对象实例和对象类型实体都有一个名为 PredefinedType 的属性,该属性由特定的枚举组成。这种预定义类型本质上提供了另一个继承级别,可以在不需要额外实体的情况下进一步区分对象。预定义类型不仅仅是信息性的;各种规则适用,例如适用的属性集、部件组成和分配端口。如果对象由 IfcTypeObject 类型的,则只有当 IfcTypeObject 上的 PredefinedType 设置为 NOTDEFINED 时,才能使用 IfcObject 实例上的 PredefinedType 。
示例 对于具有部件组成的对象的类型,这些部件可能在具有单独状态的对象实例上得到反映。例如,墙类型 可能定义了螺柱的特定排列,墙实例 可能反映了相同的螺柱排列,并且墙实例内的螺柱可能参与不存在于类型中的特定关系,例如连接到电气接线盒。
concept {
IfcObject :IsTypedBy -> IfcRelDefinesByType :RelatedObjects
IfcRelDefinesByType :RelatingType -> IfcTypeObject
IfcObject :IsTypedBy[binding="HasType"]
IfcRelDefinesByType :RelatingType[binding="RelatingType"]
IfcTypeObject :Name[binding="TypeName"]
}
Object User Identity
General
An attribute Name and optionally Description can be used for all subypes of IfcObject . For those subtypes, that have an object type definition, such as IfcBeam - IfcBeamType , the common Name and optionally Description is associated with the object type.
Product Assignment
General
产品可能拥有指示作用于产品的过程的分配。此类分配的一个示例是建造墙壁的任务。
concept {
IfcProduct :ReferencedBy -> IfcRelAssignsToProduct :RelatingProduct
IfcRelAssignsToProduct :RelatedObjects -> IfcObject :HasAssignments
IfcRelAssignsToProduct :RelatedObjects[binding="Type"]
}
Product Geometric Representation
General
任何 IfcProduct 的几何表示由 IfcProductDefinitionShape 提供,允许进行多个几何表示。它使用 Product Placement 概念,利用 IfcLocalPlacement 建立对象坐标系,所有几何表示都基于该坐标系。
注释 关于如何应用局部定位以及哪些形状表示适用的详细规范,在 IfcProduct 的子类型级别提供,并进一步由模型视图定义和实施者协议确定。
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 Grid Placement
General
产品实例可以相对于网格进行定位,网格的轴可以被修改,从而使产品实例相对于网格轴重新定位。
concept {
IfcProduct :ObjectPlacement -> IfcGridPlacement
IfcGridPlacement :PlacementLocation -> IfcVirtualGridIntersection
IfcGridPlacement :PlacementRefDirection -> IfcDirection
IfcGridPlacement :PlacementRelTo -> IfcObjectPlacement
IfcVirtualGridIntersection :OffsetDistances -> IfcLengthMeasure_0
IfcVirtualGridIntersection :IntersectingAxes -> IfcGridAxis
IfcGridAxis :AxisTag -> IfcLabel
IfcGridAxis :AxisCurve -> IfcLine
IfcGridAxis :SameSense -> IfcBoolean
IfcLine :Pnt -> IfcCartesianPoint
IfcLine :Dir -> IfcVector
IfcCartesianPoint :Coordinates -> IfcLengthMeasure_1
IfcObjectPlacement :PlacesObject -> IfcGrid_0:ObjectPlacement
}
Product Linear Placement
General
具有 Product Linear Placement 模板的产品放置。它定义了基于曲线的局部坐标系,该曲线由 IfcLinearPlacement .RelativePlacement 引用,而 IfcLinearPlacement .RelativePlacement 是一个 IfcAxis2PlacementLinear .Location ,使用 IfcPointByDistanceExpression .BasisCurve 。局部坐标系基于曲线在 Location 处的切线、其在全局 Z 平面上的法线以及上述向量的叉积。
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
如果 IfcProduct 的 Product Placement 相对于 IfcPositioningElement 定位,则此关系涵盖了定位 IfcProduct 的 IfcPositioningElement 的信息。
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
}
Profile 3D Geometry
General
“型材3D几何体”是填充开口的元素的外部轮廓的标准表示形式。此类元素的示例包括门和窗。对于门和窗,型材几何体用于将衬砌和面板尺寸的参数化定义应用于型材。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBoundedCurve
IfcLabel_0 -> constraint_0
constraint_0[label="=Profile"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Curve3D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Profile Geometry
General
填充开口的元素提供“型材”表示形式,描述开口的形状。此类元素的示例包括门和窗。
型材表示形式的表示标识符为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Profile"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
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
Any object occurrence can hold property sets, either directly at the object occurrence as element specific property sets, or at the object type, as type property sets. In this case, the properties that are provided to the object occurrence are the combinations of element specific and type properties. In case that the same property (within the same property set) is defined both in occurrence and type properties, the property value of the occurrence property overrides the property value of the type property.
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
几何表示形式的一种特定形式是“参考”几何体。它用于提供用于各种评估(如数量计算等)的几何体,但不用作显示,也不用于空洞关系中的隐式布尔运算。
示例 使用“参考”表示形式的一个示例是用于开口构件,这些构件不应用于通过 IfcRelVoidsElement 关系创建空洞,因为空洞已包含在被空洞构件的“Body”表示形式中。表示形式的表示标识符为:'Reference'
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 Containment
General
空间包含关系 概念定义了物理元素(如建筑元素、设备元素或家具元素)作为被包含在空间结构元素内的关系。
IfcElement 的任何子类型都可能参与两种不同的包含关系。第一种(在大多数实现场景中是强制性的)是层级空间包含关系,第二种(可选)是元素组件内的聚合关系。
concept {
IfcElement :ContainedInStructure -> IfcRelContainedInSpatialStructure :RelatedElements
IfcRelContainedInSpatialStructure :RelatingStructure -> IfcSpatialElement
IfcSpatialElement :Name -> IfcLabel
IfcRelContainedInSpatialStructure :RelatingStructure[binding="RelatingStructure"]
IfcSpatialElement :Name[binding="SpatialElementName"]
}
Surface 3D Geometry
General
“表面3D几何体”是具有描述对象内部或外部表面的“表面”表示形式的元素的标准表面表示形式,例如用于在元素的中平面上定义热边界。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcBoundedSurface
IfcShapeRepresentation :Items -> IfcSweptSurface
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Surface3D"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Surface Feature Adherence
General
附着表示主体结构(称为“主机”)与附着组件(称为“附着元素”)之间的外部部分组成关系。附着概念有多种用法,例如:
附着用于建筑构件,以附着表面特征,这些特征以标记、表面处理或缺陷的形式修改了主机构件。
附着是一种双向关系,从主机结构到其附加组件的关系称为附着(adherence),从组件到其主机结构的关系称为托管(hosting)。
concept {
IfcElement :HasSurfaceFeatures -> IfcRelAdheresToElement :RelatingElement
IfcRelAdheresToElement :RelatedSurfaceFeatures -> IfcSurfaceFeature
IfcSurfaceFeature :Name -> IfcLabel
IfcElement :HasSurfaceFeatures[binding="HasSurfaceFeatures"]
IfcRelAdheresToElement :RelatedSurfaceFeatures[binding="RelatedSurfaceFeatures"]
IfcSurfaceFeature :Name[binding="SurfaceFeatureName"]
}
Surface Geometry
General
元素可以具有“表面”表示形式,描述对象的外部表面。此表示形式可用于测试具有部件组合(如框架墙)的对象,或用于在元素的中平面上理想化定义热边界。
表面表示形式的表示标识符为:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}
Surface Sectioned Geometry
General
“表面分段几何体”是具有“表面”表示形式的元素的表示形式,其中表面使用两个或多个开放轮廓来定义,这些轮廓沿着指定的路径(directrix)在指定位置之间扫掠,例如用于定义 IfcCourse 的上边界。
包含此几何表示形式的 IfcShapeRepresentation 的以下特性值应被使用:
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcSectionedSurface
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=SectionedSurface"]
IfcSectionedSurface :Directrix -> IfcBoundedCurve
IfcSectionedSurface :CrossSections -> IfcProfileDef
IfcSectionedSurface :CrossSections -> IfcOpenCrossProfileDef
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
IfcSectionedSurface :Directrix[binding="Directrix"]
IfcSectionedSurface :CrossSections[binding="CrossSections"]
}
Surface Tessellation Geometry
General
concept {
IfcElement :Representation -> IfcProductDefinitionShape
IfcProductDefinitionShape :Representations -> IfcShapeRepresentation
IfcShapeRepresentation :ContextOfItems -> IfcGeometricRepresentationContext
IfcShapeRepresentation :RepresentationIdentifier -> IfcLabel_0
IfcShapeRepresentation :RepresentationType -> IfcLabel_1
IfcShapeRepresentation :Items -> IfcTriangulatedFaceSet
IfcLabel_0 -> constraint_0
constraint_0[label="=Surface"]
IfcLabel_1 -> constraint_1
constraint_1[label="=Tessellation"]
IfcTriangulatedFaceSet :Coordinates -> IfcCartesianPointList3D
IfcTriangulatedFaceSet :Normals -> IfcParameterValue
IfcTriangulatedFaceSet :LayerAssignment -> IfcPresentationLayerAssignment :AssignedItems
IfcTriangulatedFaceSet :StyledByItem -> IfcStyledItem :Item
IfcCartesianPointList3D :CoordList -> IfcLengthMeasure
IfcPresentationLayerAssignment -> Layer
IfcStyledItem :Styles -> IfcSurfaceStyle
IfcSurfaceStyle -> Surface_Color_Style
IfcShapeRepresentation :RepresentationIdentifier[binding="Identifier"]
IfcShapeRepresentation :RepresentationType[binding="Type"]
IfcShapeRepresentation :Items[binding="Items"]
}