Skip to content

ExporterIFCUtils.IsCurveLoopConvexWithOpenings

Public Class

Checks if the region bounded by the input curve loop can be represented as the subtraction of 0 or more convex polygons from a base convex polygon.

Namespace: Autodesk.Revit.DB.IFC

Assembly: RevitAPIIFC (in RevitAPIIFC.dll) Version: 25.0.0.0 (25.0.0.0)

Syntax

public static bool IsCurveLoopConvexWithOpenings(
CurveLoop inputCurveLoop,
Wall wall,
IFCRange range,
out bool loopIsDegenerate
)

Parameters

inputCurveLoop CurveLoop

The input curve loop. It is intended that this curve loop have been obtained from the elevation profile of a wall.

wall Wall

The wall from which the curve loop was obtained.

range IFCRange

The range extents of the wall.

loopIsDegenerateBoolean.

If the function returns false but this returns true, the loop could be obtained but was degenerate. Thus there is no extrusion that can be produced.

Return Value

Boolean
True if the region can be represented by a boolean combination of polygons, false otherwise.

Exceptions

Exception

Condition


ArgumentNullException

A non-optional argument was null


Remarks

This function is intended to be used to determine if the geometry of a wall with an elevation profile can be successfully represented as a vertical extrusion with one or more openings removed. If this function is to return true, the subtracting polygons must each have at least one edge coincident with the base convex polygon. Before the check is performed, this input curve will be trimmed by the range extents of the wall, if any.