この掲示板は AutoCADマクロ屋本舗 の掲示板です。

【 注意 】最初に必ず ↓↓ 下記内容 ↓↓ を参照ください。
① マクロが分からない方は、まず 【 マクロ講座 】 を参照ください。
② 質問の前に 【 マクロ使用前の注意事項 】 をお読みください。
③ 質問する時は、新規投稿フォーム下の【 新規投稿時のお願い 】を必ずお読みください。

特定の矢印記号のマルチ引出線を選択し別の矢印記号に変えたい
お世話になります。
AutoCAD 2023でコマンドマクロとLISPを使用して作業しています。
モデル空間の図面上で特定の矢印記号のマルチ引出線を選択し別の矢印記号に変えるLISPなどありますか?
例えば30度開矢印で描かれたマルチ引出線のみを選択し、ただの開矢印に変換したいのです。
すみませんがよろしくお願い致します。
  • しもん
  • 2025/04/16 (Wed) 22:36:16
Re: 特定の矢印記号のマルチ引出線を選択し別の矢印記号に変えたい
以下のLispでどうでしょう?

(defun c:mldmk ( / ss i old_atype new_atype)
(setq old_atype "_Open30") ;変更前矢印
(setq new_atype "_Open") ;変更後矢印

(if (setq ss (ssget "_A" (list '(0 . "MULTILEADER") (cons 410 (getvar 'CTAB)))))
(repeat (setq i (sslength ss))
(if (= (getpropertyvalue (ssname ss (setq i (1- i))) "ArrowheadType") old_atype)
(setpropertyvalue (ssname ss i) "ArrowheadType" new_atype))
)
)
(princ)
)

他の矢印の組み合わせにしたい場合は、
(setq old_atype "_Open30") ;変更前矢印
(setq new_atype "_Open") ;変更後矢印
ここを書き換えてください。
  • LUNE
  • 2025/04/18 (Fri) 11:49:27
Re: 特定の矢印記号のマルチ引出線を選択し別の矢印記号に変えたい
LUNE様
LISPのご作成ありがとうございます!
完璧に希望通りの動作で感動しております...
いくつも変換したいものがあったので仕事が大変捗ります。
改めてこの度は本当にありがとうございました。
  • しもん
  • 2025/04/18 (Fri) 22:48:26

返信フォーム






プレビュー (投稿前に内容を確認)