IFC 4.3.0.0 (IFC4X3) final

8.8.3.5 IfcBooleanResult

8.8.3.5.1 Semantic definition

The IfcBooleanResult is the result of applying a Boolean operation to two operands being solids.

8.8.3.5.2 Entity inheritance

8.8.3.5.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.5.A

8.8.3.5.4 Formal propositions

Name Description
FirstOperandClosed

If the FirstOperand is of type IfcTessellatedFaceSet it has to be a closed tessellation.

NOT('IFC4X3.IFCTESSELLATEDFACESET' IN TYPEOF(FirstOperand)) OR (EXISTS(FirstOperand.Closed) AND FirstOperand.Closed)
SameDim

The dimensionality of the first operand shall be the same as the dimensionality of the second operand.

FirstOperand.Dim = SecondOperand.Dim
SecondOperandClosed

If the SecondOperand is of type IfcTessellatedFaceSet it has to be a closed tessellation.

NOT('IFC4X3.IFCTESSELLATEDFACESET' IN TYPEOF(SecondOperand)) OR (EXISTS(SecondOperand.Closed) AND SecondOperand.Closed)
Table 8.8.3.5.B

8.8.3.5.5 Formal representation

ENTITY IfcBooleanResult
 SUPERTYPE OF (ONEOF
	(IfcBooleanClippingResult))
 SUBTYPE OF (IfcGeometricRepresentationItem);
	Operator : IfcBooleanOperator;
	FirstOperand : IfcBooleanOperand;
	SecondOperand : IfcBooleanOperand;
 DERIVE
	 Dim : IfcDimensionCount := FirstOperand.Dim;
 WHERE
	FirstOperandClosed : NOT('IFC4X3.IFCTESSELLATEDFACESET' IN TYPEOF(FirstOperand)) OR (EXISTS(FirstOperand.Closed) AND FirstOperand.Closed);
	SameDim : FirstOperand.Dim = SecondOperand.Dim;
	SecondOperandClosed : NOT('IFC4X3.IFCTESSELLATEDFACESET' IN TYPEOF(SecondOperand)) OR (EXISTS(SecondOperand.Closed) AND SecondOperand.Closed);
END_ENTITY;

8.8.3.5.6 References

8.8.3.5.7 Changelog

  • where_rules, FirstOperandClosed
  • where_rules, SameDim
  • where_rules, SecondOperandClosed
  • where_rules, WR1