AutoCADでは、寸法を入力すると現在の画層に作成されます。
そのため、作図中の画層によっては、後から寸法の画層を変更する手間が発生することがあります。
こうした手間を減らすために、寸法入力と同時に画層を変更するLISPを作成しました。
※なお、注釈設定であらかじめ寸法の画層を指定することも可能ですが、LISPで制御したい場合の一例として紹介します。
(defun c:DIML ()
(command-s "DIMLINEAR" );
(setq sel (ssadd (entlast)))
(command-s "._CHPROP" sel "" "C" "ByLayer" "LA" "SUNPOU" "LT" "ByLayer" "S" "1" "LW" "ByLayer" "T" "ByLayer" "" "" )
)すぐできる設定手順
- コマンド「DIML」を入力
- 寸法の1点目と2点目をクリック
仁(じん)画像付きのSTEPは、下で確認できますよ!
Contents
操作手順
STEP


- コマンド「DIML」を入力します
STEP


- 寸法の1点目と2点目をクリックします
- 寸法が描かれると同時に画層も変わります
LISP解説
CHPROP部分を説明します。
(command-s "._CHPROP" sel "" "C" "ByLayer" "LA" "SUNPOU" "LT" "ByLayer" "S" "1" "LW" "ByLayer" "T" "ByLayer" "" "" )“._CHPROP”
オブジェクトのプロパティ(色・画層など)を変更するコマンドです。
sel “”
対象オブジェクトを指定しています。
ここでは、直前に作成した寸法(entlast)を対象にしています。
“C” “ByLayer”
色を ByLayer に変更します。
画層の設定に従うようになります。
“LA” “SUNPOU”
画層を「SUNPOU」に変更します。
これが今回のメイン処理です。
“LT” “ByLayer”
線種を ByLayer に変更します。
“S” “1”
線種尺度を 1 に設定します。
“LW” “ByLayer”
線の太さを ByLayer に変更します。
“T” “ByLayer”
透過性を ByLayer に変更します。
最後の “” “”
コマンドの入力を終了しています。
注釈メニューで寸法の画層を設定


AutoCADでは、注釈設定を使うことで、寸法を作成する際の画層を事前に指定することができます。
これにより、現在の画層に関係なく、寸法を常に指定した画層へ配置することができます。



LISP作ったけど、これ標準機能でできましたね…。
まとめ
この処理では、作成した寸法オブジェクトに対して
- 画層を「SUNPOU」に変更
- 色、線種、線の太さをByLayerに統一
することで、図面の設定を揃えています。


コメント