IfcBooleanResult

Definition from ISO/CD 10303-42:1992: A Boolean result is the result of a regularized operation on two solids to create a new solid. Valid operations are regularized union, regularized intersection, and regularized difference. For purpose of Boolean operations, a solid is considered to be a regularized set of points. The final Boolean result depends upon the operation and the two operands. In the case of the difference operator the order of the operands is also significant. The operator can be either union, intersection or difference. The effect of these operators is described below:

- Union on two solids is the new solid that is the regularization of the set of all points that are in either the first operand or the second operand or in both.
- Intersection on two solids is the new solid that is the regularization of the set of all points that are in both the first operand and the second operand.
- The result of the difference operation on two solids is the regularization of the set of all points which are in the first operand, but not in the second operand.

> NOTE Corresponding STEP entity: boolean_result. The derived attribute Dim has been added at this level and was therefore demoted from the geometric_representation_item. Please refer to ISO/IS 10303-42:1994, p.175 for the final definition of the formal standard.

> HISTORY: New class in IFC Release 1.5.1.

EXPRESS specification:

ENTITY IfcBooleanResult
SUPERTYPE OF | (IfcBooleanClippingResult)
SUBTYPE OF ( | IfcGeometricRepresentationItem);
Operator | : | IfcBooleanOperator;
FirstOperand | : | IfcBooleanOperand;
SecondOperand | : | IfcBooleanOperand;
DERIVE
Dim | : | IfcDimensionCount := FirstOperand.Dim;
WHERE
WR1 | : | FirstOperand.Dim = SecondOperand.Dim;
END_ENTITY;

Attribute definitions:

Operator | : | The Boolean operator used in the operation to create the result.
FirstOperand | : | The first operand to be operated upon by the Boolean operation.
SecondOperand | : | The second operand specified for the operation.
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.

Formal Propositions:

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

Inheritance graph

ENTITY IfcBooleanResult;
ENTITY IfcRepresentationItem;
INVERSE
LayerAssignments | : | SET OF IfcPresentationLayerAssignment FOR AssignedItems;
StyledByItem | : | SET [0:1] OF IfcStyledItem FOR Item;
ENTITY IfcGeometricRepresentationItem;
ENTITY IfcBooleanResult;
Operator | : | IfcBooleanOperator;
FirstOperand | : | IfcBooleanOperand;
SecondOperand | : | IfcBooleanOperand;
DERIVE
Dim | : | IfcDimensionCount := FirstOperand.Dim;
END_ENTITY;