IfcSurfaceStyle

IfcSurfaceStyle

实体定义

IfcSurfaceStyle是将一个或多个曲面样式元素指定给曲面,由IfcSurface的子类型、IfcFaceBasedSurfaceModel、IfcHellBasedSurfaceModel或IfcSolidModel的子类型定义。曲面法线的正方向与正侧相关。如果是固体,则固体的外侧应视为正侧。

请注意,在渲染应用程序中,曲面样式通常称为材质定义。

注:对应的ISO 10303实体:表面样式和表面侧样式。关于正式标准的最终定义,请参考ISO/IS 10303-46:1994。关于支持渲染的曲面样式定义已大大扩展,超出了ISO/IS 10303-46的范围。

IFC2x中增加的新实体。

Formal Propositions

RuleDescription
MaxOneShading The IfcSurfaceStyleShading shall only be used zero or one time within the set of Styles.
MaxOneLighting The IfcSurfaceStyleLighting shall only be used zero or one time within the set of Styles.
MaxOneRefraction The IfcSurfaceStyleRefraction shall only be used zero or one time within the set of Styles.
MaxOneTextures The IfcSurfaceStyleWithTextures shall only be used zero or one time within the set of Styles.
MaxOneExtDefined The IfcExternallyDefinedSurfaceStyle shall only be used zero or one time within the set of Styles.
 

Attribute inheritance

#AttributeTypeCardinalityDescriptionC
IfcPresentationStyle
1 Name IfcLabel [0:1] Name of the presentation style. X
IfcSurfaceStyle
2 Side IfcSurfaceSide [1:1] An indication of which side of the surface to apply the style. X
3 Styles IfcSurfaceStyleElementSelect S[1:5] A collection of different surface styles. X
 

EXPRESS Specification

ENTITY IfcSurfaceStyle
 SUBTYPE OF (IfcPresentationStyle);
  Side : IfcSurfaceSide;
  Styles : SET [1:5] OF IfcSurfaceStyleElementSelect;
 WHERE
  MaxOneShading : SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCSURFACESTYLESHADING' IN TYPEOF(Style) )) <= 1;
  MaxOneLighting : SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCSURFACESTYLELIGHTING' IN TYPEOF(Style) )) <= 1;
  MaxOneRefraction : SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCSURFACESTYLEREFRACTION' IN TYPEOF(Style) )) <= 1;
  MaxOneTextures : SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCSURFACESTYLEWITHTEXTURES' IN TYPEOF(Style) )) <= 1;
  MaxOneExtDefined : SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCEXTERNALLYDEFINEDSURFACESTYLE' IN TYPEOF(Style) )) <= 1;
END_ENTITY;

##################################

原文地址:https://www.cnblogs.com/herd/p/15642087.html