LinetypeGeneration Property (ActiveX)

Specifies the linetype generation of a 2D polyline or a lightweight polyline.

Supported platforms: Windows only

Signature

VBA:

object.LinetypeGeneration
object

Type: LWPolyline, Polyline

The objects this property applies to.

Property Value

Read-only: No

Type: Boolean

Remarks

This property does not apply to polylines with tapered segments.

A polyline with linetype generation set to true (left) and set to false (right)

Examples

VBA:

Sub Example_LinetypeGeneration()
    ' This example creates a polyline in model space and
    ' queries and changes the linetype generation for
    ' the polyline.
    
    ' To see the effect of changing the linetype generation, set
    ' the linetype of the polyline to something other than continuous,
    ' ByBlock, or ByLayer.
    
    Dim plineObj As AcadPolyline
    Dim points(0 To 14) As Double
    
    ' Define the 2D polyline points
    points(0) = 1: points(1) = 1: points(2) = 0
    points(3) = 1: points(4) = 2: points(5) = 0
    points(6) = 2: points(7) = 2: points(8) = 0
    points(9) = 3: points(10) = 2: points(11) = 0
    points(12) = 4: points(13) = 4: points(14) = 0
        
    ' Create a lightweight Polyline object in model space
    Set plineObj = ThisDrawing.ModelSpace.AddPolyline(points)
    ZoomAll
    
    ' Find the current linetype generation for the polyline
    MsgBox "The linetype generation for the polyline is: " & plineObj.LinetypeGeneration
    
    ' Change the linetype generation
    plineObj.LinetypeGeneration = Not plineObj.LinetypeGeneration
    plineObj.Update
    MsgBox "The linetype generation for the polyline is now: " & plineObj.LinetypeGeneration
    
End Sub

Visual LISP:

(vl-load-com)
(defun c:Example_LinetypeGeneration()
    ;; This example creates a polyline in model space and
    ;; queries and changes the linetype generation for
    ;; the polyline.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; To see the effect of changing the linetype generation, set
    ;; the linetype of the polyline to something other than continuous,
    ;; ByBlock, or ByLayer.

    ;; Define the 2D polyline points
    (setq points (vlax-make-safearray vlax-vbDouble '(0 . 14)))
    (vlax-safearray-fill points '(1 1 0
				  1 2 0
				  2 2 0
				  3 2 0
				  4 4 0
				 )
    )
        
    ;; Create a lightweight Polyline object in model space
    (setq modelSpace (vla-get-ModelSpace doc))
    (setq plineObj (vla-AddPolyline modelSpace points))
    (vla-ZoomAll acadObj)
    
    ;; Find the current linetype generation for the polyline
    (alert (strcat "The linetype generation for the polyline is: " (if (= (vla-get-LinetypeGeneration plineObj) :vlax-true) "True" "False")))
    
    ;; Change the linetype generation
    (vla-put-LinetypeGeneration plineObj (if (= (vla-get-LinetypeGeneration plineObj) :vlax-true) :vlax-false :vlax-true))
    (vla-Update plineObj)
    (alert (strcat "The linetype generation for the polyline is now: " (if (= (vla-get-LinetypeGeneration plineObj) :vlax-true) "True" "False")))
)