Closed Property (ActiveX)

Specifies whether the 3D polyline, lightweight polyline, lofted surface, polyline, or spline is open or closed.

Supported platforms: Windows only

Signature

VBA:

object.Closed
object

Type: 3DPolyline, LoftedSurface, LWPolyline, Polyline, Spline

The objects this property applies to.

Property Value

Read-only: No (except for Spline objects)

Type: Boolean

Remarks

An open 3D polyline

A closed 3D polyline

A lofted surface is closed if the cross-section curves that determine its profile are closed. For instance, if an arc is used in the lofting profile, the resulting surface is open. If closed curves such as circles are used for lofting, the resulting surface is closed.

Examples

VBA:

Sub Example_Closed()
    ' This example creates a polyline and then toggles the
    ' setting to Closed.
    Dim plineObj As AcadPolyline
    Dim closedState As String

    ' Create the polyline
    Dim points(8) As Double
    points(0) = 3: points(1) = 7: points(2) = 0
    points(3) = 9: points(4) = 2: points(5) = 0
    points(6) = 3: points(7) = 5: points(8) = 0
    Set plineObj = ThisDrawing.ModelSpace.AddPolyline(points)

    ' Set the closed property to True
    plineObj.Closed = True      ' Close Polyline
    ThisDrawing.Regen (True)
    GoSub DISPLAY

    ' Open the PolyLine by setting the closed property to False
    plineObj.Closed = False      ' Open Polyline
    ThisDrawing.Regen (True)
    GoSub DISPLAY

    Exit Sub

DISPLAY:
    ' Retrieve and display the Closed property
    closedState = IIf(plineObj.Closed, "Closed", "Open")
    MsgBox "The new Polyline is: " & closedState, vbInformation, "Closed Example"
    Return
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_Closed()
    ;; This example creates a polyline and then toggles the
    ;; setting to Closed.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))

    ;; Create the polyline
    (setq points (vlax-make-safearray vlax-vbDouble '(0 . 8)))
    (vlax-safearray-fill points '(3 7 0
				  9 2 0
				  3 5 0
				 )
    )

    (setq modelSpace (vla-get-ModelSpace doc))
    (setq plineObj (vla-AddPolyline modelSpace points))

    ;; Set the closed property to True
    (vla-put-Closed plineObj :vlax-true)      ;; Close Polyline
    (vla-Regen doc :vlax-true)

    ;; Retrieve and display the Closed property
    (setq closedState (if (= (vla-get-Closed plineObj) :vlax-true) "Closed" "Open"))
    (alert (strcat "The new Polyline is: " closedState))

    ;; Open the PolyLine by setting the closed property to False
    (vla-put-Closed plineObj :vlax-false)      ;; Open Polyline
    (vla-Regen doc :vlax-true)

    ;; Retrieve and display the Closed property
    (setq closedState (if (= (vla-get-Closed plineObj) :vlax-true) "Closed" "Open"))
    (alert (strcat "The new Polyline is: " closedState))
)