IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

8.18.3.5 IfcGeometricRepresentationSubContext(几何表示子上下文)

RV ⓘ
AbV ⓘ

8.18.3.5.1 语义定义(Semantic definition)

IfcGeometricRepresentationSubContext 定义了一个应用于产品多个形状表示的上下文环境,作为子上下文,它与父级 IfcGeometricRepresentationContext 共享 WorldCoordinateSystemCoordinateSpaceDimensionPrecisionTrueNorth 属性。

IfcGeometricRepresentationSubContext 用于根据表示视图和目标比例,为不同的信息内容定义语义上可区分的表示类型。它可用于控制最适用于此几何表示上下文的形状表示的细节级别。此外,子上下文还用于控制 IfcShapeRepresentation 在绘图视图中的最终显示效果。

每个 IfcProduct 可以有多个 IfcRepresentation 子类型的实例,每个实例都分配给一个不同的 IfcGeometricRepresentationSubContext)。继承的 ContextIdentifier 属性的适用值应与 IfcShapeRepresentation 处定义的 RepresentationIdentifier 属性相同。

8.18.3.5.2 实体继承(Entity inheritance)

8.18.3.5.3 特性(Attributes)

# 特性(Attributes) 类型 描述
IfcRepresentationContext (3)
1 ContextIdentifier OPTIONAL IfcLabel

表示上下文的可选标识符,在项目内部使用。

2 ContextType OPTIONAL IfcLabel

表示上下文类型的描述。上下文类型支持的具体取值需通过实施方协议确定。

RepresentationsInContext SET [0:?] OF IfcRepresentation FOR ContextOfItems

在同一表示上下文中定义的所有几何表示。

IfcGeometricRepresentationContext (6)
3 CoordinateSpaceDimension IfcDimensionCount

在几何表示上下文中建模的坐标空间的整数维度计数。

4 Precision OPTIONAL IfcReal

几何模型的模型精度值。它是一个双精度值(REAL),通常在 1E-5 到 1E-8 范围内,表示在此容差下两个给定点仍被视为相同。该值可用于例如在 brep 模型中设置从边曲线到底层面曲面的最大距离。

5 WorldCoordinateSystem IfcAxis2Placement

为项目使用的所有表示上下文建立工程坐标系(在CAD中通常称为世界坐标系)。

如果使用 IfcMapConversion 提供了地理放置,则 WorldCoordinateSystem 属性用于定义局部工程坐标系的零点与 IfcMapConversion 偏移所关联的地理参考点之间的偏移。在首选实践中,这两个点(也称为"项目基点"和"测量点")应重合。但是,可以将地理参考点从局部零点偏移。

6 TrueNorth OPTIONAL IfcDirection

真北方向或地理北向方向相对于基础项目坐标系的方向。它由项目坐标系xy平面内的二维方向给出。如果未提供,则默认为 0. 1.,意味着项目坐标系的正Y轴等于地理北向方向。

HasSubContexts SET [0:?] OF IfcGeometricRepresentationSubContext FOR ParentContext

引用此 IfcGeometricRepresentationContextIfcGeometricRepresentationSubContexts 集合。

HasCoordinateOperation SET [0:1] OF IfcCoordinateOperation FOR SourceCRS

指示坐标系之间的转换。特别是指地理地图坐标参考系与此建筑项目的工程坐标系之间的 IfcCoordinateOperation。如果向 IfcProject 提供了多个 IfcGeometricRepresentationContext,则所有上下文应具有相同的 IfcCoordinateOperation 实例作为 HasCoordinateOperation,引用相同的 IfcCoordinateReferenceSystem 实例。

点击显示 9 个隐藏的继承特性 点击隐藏 9 个继承特性
IfcGeometricRepresentationSubContext (8)
7 ParentContext IfcGeometricRepresentationContext

父级上下文,子上下文从中派生其世界坐标系、精度、空间坐标维度和真北方向。

8 TargetScale OPTIONAL IfcPositiveRatioMeasure

此表示上下文所适用的表示的目标绘图比例。

9 TargetView IfcGeometricProjectionEnum

此表示上下文所适用的表示的目标视图。

10 UserDefinedTargetView OPTIONAL IfcLabel

用户定义的目标视图,如果 TargetView 属性设置为 USERDEFINED,则必须给出此属性值。

5* WorldCoordinateSystem IfcAxis2Placement

此属性是形式化派生的

ParentContext.WorldCoordinateSystem

世界坐标系

3* CoordinateSpaceDimension IfcDimensionCount

此属性是形式化派生的

ParentContext.CoordinateSpaceDimension

坐标空间维度

6* TrueNorth IfcDirection

此属性是形式化派生的

NVL(ParentContext.TrueNorth, IfcConvertDirectionInto2D(SELF\IfcGeometricRepresentationContext.WorldCoordinateSystem.P[2]))

真北方向

4* Precision IfcReal

此属性是形式化派生的

NVL(ParentContext.Precision,1.E-5)

精度

表 8.18.3.5.A

8.18.3.5.4 形式化命题(Formal propositions)

名称 描述
NoCoordOperation

不得向几何表示子上下文提供 IfcCoordinateOperation,只能向父级几何表示上下文提供。

SIZEOF(SELF\IfcGeometricRepresentationContext.HasCoordinateOperation) = 0
ParentNoSub

父级上下文不得是另一个几何表示子上下文。

NOT('IFC4X3_DEV_62887e3f.IFCGEOMETRICREPRESENTATIONSUBCONTEXT' IN TYPEOF(ParentContext))
UserTargetProvided

如果 TargetView 属性设置为 USERDEFINED,则必须给出 UserDefinedTargetView 属性。

 (TargetView <> IfcGeometricProjectionEnum.USERDEFINED) OR 
((TargetView =  IfcGeometricProjectionEnum.USERDEFINED) AND EXISTS(UserDefinedTargetView)) 
表 8.18.3.5.B

8.18.3.5.5 形式化表示(Formal representation)

ENTITY IfcGeometricRepresentationSubContext
 SUBTYPE OF (IfcGeometricRepresentationContext);
	ParentContext : IfcGeometricRepresentationContext;
	TargetScale : OPTIONAL IfcPositiveRatioMeasure;
	TargetView : IfcGeometricProjectionEnum;
	UserDefinedTargetView : OPTIONAL IfcLabel;
 DERIVE
	 SELF\IfcGeometricRepresentationContext.WorldCoordinateSystem : IfcAxis2Placement := ParentContext.WorldCoordinateSystem;
	 SELF\IfcGeometricRepresentationContext.CoordinateSpaceDimension : IfcDimensionCount := ParentContext.CoordinateSpaceDimension;
	 SELF\IfcGeometricRepresentationContext.TrueNorth : IfcDirection := NVL(ParentContext.TrueNorth, IfcConvertDirectionInto2D(SELF\IfcGeometricRepresentationContext.WorldCoordinateSystem.P[2]));
	 SELF\IfcGeometricRepresentationContext.Precision : IfcReal := NVL(ParentContext.Precision,1.E-5);
 WHERE
	NoCoordOperation : SIZEOF(SELF\IfcGeometricRepresentationContext.HasCoordinateOperation) = 0;
	ParentNoSub : NOT('IFC4X3_DEV_62887e3f.IFCGEOMETRICREPRESENTATIONSUBCONTEXT' IN TYPEOF(ParentContext));
	UserTargetProvided :  (TargetView <> IfcGeometricProjectionEnum.USERDEFINED) OR 
((TargetView =  IfcGeometricProjectionEnum.USERDEFINED) AND EXISTS(UserDefinedTargetView)) ;
END_ENTITY;

8.18.3.5.6 参考文献