指定範囲内からハッチングだけを選択し、表示順序を変更(最背面へ移動)します。
(setq [変数1] (ssget '((0 . "hatch"))))
(command "_draworder" [変数1] "" "b")
本やソフト、周辺機器などのセレクトサイト 「AutoCAD/AutoCAD LTのカスタマイズに関する疑問、トラブルに対する解答・対処策(ヒント)、またマクロやAutoLISPの紹介など便利機能をまとめました。
shop 29q
2009年7月28日火曜日
2009年7月23日木曜日
AutoCAD / AutoCAD LT NOTE.. > AutoCAD / AutoCAD LT NOTE.. カスタマイズ・マクロ: 7月 2009
カスタム線種の作り方
分類:
線種
“線種定義ファイル”(拡張子.lin)を編集することで、独自の線種を作成することができます。
既存のacad.lin、acadiso.lin(AutoCAD LTの場合はacadlt.lin、acadltiso.lin)を直接編集、もしくは既存の線種定義ファイルをコピーし、別名保存して作成します。
線種定義ファイルはメモ帳などのテキストエディタで開くことができます。
“ * (アスタリスク)”以降の文字列が「線種名称」、“ , (カンマ)”で区切った次の項目が「線種の説明」、“A,”から続く数値が「線種の描画内容」になります。
“ A, ”から続く数値ですが、プラスの数値が実線部の長さ、マイナスの数値が空白部の長さの指定になります。0(ゼロ)はドットになります。
文字を含める場合には ["文字内容",**文字スタイル**,S=0.0,R=0.0,X=0.0,Y=0.0] というような内容を組み込みます。(S:縮尺、R:回転、XY:オフセット)
一通り編集が済んだら線種定義ファイルを保存し、テキストエディタを閉じます。
AutoCAD上で[線種管理](LINETYPE)コマンドを実行し、線種管理ダイアログを開きます。
[ロード]ボタンより作成した線種ファイルを開き、追加(編集)した線種を図面にロードして使用します。
<注意事項>
本やソフト、周辺機器などのセレクトサイト 「★☆★ Shop 29q ★☆★」
既存のacad.lin、acadiso.lin(AutoCAD LTの場合はacadlt.lin、acadltiso.lin)を直接編集、もしくは既存の線種定義ファイルをコピーし、別名保存して作成します。
線種定義ファイルはメモ帳などのテキストエディタで開くことができます。
“ * (アスタリスク)”以降の文字列が「線種名称」、“ , (カンマ)”で区切った次の項目が「線種の説明」、“A,”から続く数値が「線種の描画内容」になります。
“ A, ”から続く数値ですが、プラスの数値が実線部の長さ、マイナスの数値が空白部の長さの指定になります。0(ゼロ)はドットになります。
文字を含める場合には ["文字内容",**文字スタイル**,S=0.0,R=0.0,X=0.0,Y=0.0] というような内容を組み込みます。(S:縮尺、R:回転、XY:オフセット)
一通り編集が済んだら線種定義ファイルを保存し、テキストエディタを閉じます。
AutoCAD上で[線種管理](LINETYPE)コマンドを実行し、線種管理ダイアログを開きます。
[ロード]ボタンより作成した線種ファイルを開き、追加(編集)した線種を図面にロードして使用します。
<注意事項>
- 線種のピッチを定義する際、参考とする既存のacad.lin(acadlt.lin)はピッチが細かすぎ、acadiso.lin(acadltiso.lin)はピッチが荒すぎますので、普段作業を行う図面の「作図単位」と「グローバル線種尺度」を考慮したうえで割り当ててください。
- このようなカスタムを使った図面を外部へ渡す際には、図面ファイルと一緒に線種定義ファイルも添付するようにしましょう。
2009年7月10日金曜日
AutoCAD / AutoCAD LT NOTE.. > AutoCAD / AutoCAD LT NOTE.. カスタマイズ・マクロ: 7月 2009
文字の置換
分類:
AutoLISP・マクロ
異なる内容の文字列を複数選択し、すべてを同一内容に置換します。
(setq number 0)
(setq [変数1] (getstring "置換後の文字列を入力: "))
(setq [変数2] (ssget '((0 . "text"))))
(repeat (sslength [変数2])
(setq [変数3] (ssname [変数2] number))
(command "_change" [変数3] "" "" "" "" "" "" [変数1])
(setq number (1+ number))
)
本やソフト、周辺機器などのセレクトサイト 「★☆★ Shop 29q ★☆★」
(setq number 0)
(setq [変数1] (getstring "置換後の文字列を入力: "))
(setq [変数2] (ssget '((0 . "text"))))
(repeat (sslength [変数2])
(setq [変数3] (ssname [変数2] number))
(command "_change" [変数3] "" "" "" "" "" "" [変数1])
(setq number (1+ number))
)
登録:
投稿 (Atom)