LinetypeGeneration プロパティ(ActiveX)

2D ポリラインまたはライトウェイト ポリラインの線種生成モードを指定します。

サポートされているプラットフォーム: Windows のみ

構文と要素

VBA:

object.LinetypeGeneration
object

タイプ: LWPolylinePolyline

このプロパティが適用されるオブジェクト。

プロパティの値

読み込み専用: いいえ

タイプ: ブール型

注意

このプロパティはテーパ セグメントがあるポリラインには適用されません。

線種生成モードが True に設定されているポリライン(左)と False に設定されているポリライン(右)

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")))
)