Vla-put-activelayout

提供:GizmoLabs - だいたい CAD LISP なサイト
2015年10月18日 (日) 12:26時点におけるGizmon (トーク | 投稿記録)による版 (ページの作成:「{{AutoLISP}} ; 構文 : (vla-put-activelayer ''vla-object'' ''Layer'') ; 機能 : アクティブな画層を指定する。 ; 引数 :* vla-object … Document の...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
構文
(vla-put-activelayer vla-object Layer)


機能
アクティブな画層を指定する。


引数
  • vla-object … Document の VLA オブジェクト
  • Layer … 画層の VLA オブジェクト
戻り値
アクティブな画層を指定します。


  • MEMO :

新しいオブジェクトは、作成時にアクティブな画層に配置される。既存のオブジェクトの画層を変更するには、オブジェクトの Layer プロパティを使用する。 新しい画層を作成するには、vla-add メソッドを使用する。(ActiveX で追加の場合) 画層の表示やその他のプロパティを変更するには、Layer オブジェクトを参照。


サンプル
(vl-load-com)
(defun c:Example_ActiveLayer()
    ;; 現在画層を返してから、TestLayerを新規追加後に 0画層にセットするサンプル
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))
    
    ;; 現在の画層を返す
    (setq currLayer (vla-get-ActiveLayer doc))
    (alert (strcat "現在画層は " (vla-get-Name currLayer)))
    
    ;; 新規画層作成
    (setq layers (vla-get-Layers doc))
    (setq newLayer (vla-Add layers "TestLayer"))
    (alert (strcat "新しい画層は " (vla-get-Name newLayer)))

    ;; 現在画層を 0画層にセット
    (vla-put-activeLayer doc (vla-item (vla-get-layers doc) "0")))
)

関連事項