IFC 4.3.0.0 (IFC4X3) final

8.8.3.4 IfcBooleanClippingResult

8.8.3.4.1 Semantic definition

A clipping result is defined as a special subtype of the general IfcBooleanResult. It constrains the operands and the operator of the Boolean result.

A clipping result is the Boolean difference between a swept solid and a half space solid, or between the result of the Boolean difference and a half space solid. Hence more than one difference operation can be applied to achieve the final Boolean result.

8.8.3.4.2 Entity inheritance

8.8.3.4.3 Attributes

# Attribute Type Description
IfcRepresentationItem (2)
LayerAssignment SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems

Assignment of the representation item to a single or multiple layer(s). The LayerAssignments can override a LayerAssignments of the IfcRepresentation it is used within the list of Items.

StyledByItem SET [0:1] OF IfcStyledItem FOR Item

Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve.

Click to show 2 hidden inherited attributes Click to hide 2 inherited attributes
IfcBooleanResult (4)
1 Operator IfcBooleanOperator

The Boolean operator used in the operation to create the result.

2 FirstOperand IfcBooleanOperand

The first operand to be operated upon by the Boolean operation.

3 SecondOperand IfcBooleanOperand

The second operand specified for the operation.

* Dim IfcDimensionCount

This attribute is formally derived.

FirstOperand.Dim

The space dimensionality of this entity. It is identical with the space dimensionality of the first operand. A where rule ensures that both operands have the same space dimensionality.

Table 8.8.3.4.A

8.8.3.4.4 Formal propositions

Name Description
FirstOperandType

The first operand of the Boolean clipping operation shall be either an IfcSweptAreaSolid or (in case of more than one clipping) an IfcBooleanResult.

('IFC4X3.IFCSWEPTAREASOLID' IN TYPEOF(FirstOperand)) OR 
('IFC4X3.IFCSWEPTDISCSOLID' IN TYPEOF(FirstOperand)) OR 
('IFC4X3.IFCBOOLEANCLIPPINGRESULT' IN TYPEOF(FirstOperand))
OperatorType

The Boolean operator for clipping is always "Difference".

Operator = DIFFERENCE
SecondOperandType

The second operand of the Boolean clipping operation shall be an IfcHalfSpaceSolid.

('IFC4X3.IFCHALFSPACESOLID' IN TYPEOF(SecondOperand))
Table 8.8.3.4.B

8.8.3.4.5 Formal representation

ENTITY IfcBooleanClippingResult
 SUBTYPE OF (IfcBooleanResult);
 WHERE
	FirstOperandType : ('IFC4X3.IFCSWEPTAREASOLID' IN TYPEOF(FirstOperand)) OR 
('IFC4X3.IFCSWEPTDISCSOLID' IN TYPEOF(FirstOperand)) OR 
('IFC4X3.IFCBOOLEANCLIPPINGRESULT' IN TYPEOF(FirstOperand));
	OperatorType : Operator = DIFFERENCE;
	SecondOperandType : ('IFC4X3.IFCHALFSPACESOLID' IN TYPEOF(SecondOperand));
END_ENTITY;

8.8.3.4.6 References

8.8.3.4.7 Changelog

  • where_rules, FirstOperandType
  • where_rules, OperatorType
  • where_rules, SecondOperandType
  • where_rules, WR1
  • where_rules, WR2
  • where_rules, WR3