Sponsored links

【AutoLISP コマンド操作】特定の円弧長さの雲マーク

Sponsored links
基礎編
Sponsored links

既存コマンドREVCLOUDを使ってポリラインなどの図形から雲マークにするコマンドを作ります。

AutoLISPでオプションの円弧の長さ、オブジェクト をプログラムしておいて、自作コマンド実行時にはオブジェクトをクリックするだけで、特定の円弧の長さの雲マークになるようにします。

Sponsored links

予備知識

この記事では、AutoCADの既存コマンドをAutoLISPプログラムにします。
関数 command-s を使って、既存コマンドを使う方法についての記事はこちら。

コマンド内容

図面に雲マークを入れる既存コマンドREVCLOUD[雲マーク]を使います。

コマンドのオプションでは、

  • 円弧の長さは最小長と最大長どちらも5に設定。
  • オブジェクトオプションにして、ポリラインなどの図形をクリックして雲マークにする。
  • 反転はしない。

これらをAutoLISPでプログラムします。

AutoLISPプログラム

コマンド名は test です。

(defun c:test ()
	(command-s "._REVCLOUD" "_A" 5 5 "_O" pause "_N")		
(princ));defun

AutoLISPの説明

(command-s “._REVCLOUD” “_A” 5 5 “_O” pause “_N”)

コマンド実行後、[円弧の長さ(A)] オプションを選び、最小長と最大長どちらも5に設定します。

そして、[オブジェクト(O)] オプションを選び、pause で図形をユーザー選択にします。

最後の方向反転は、”無し”にしていますが、ここも pause にすれば、コマンド実行の度に、ユーザー入力にできます。

カスタマイズ例

画層を変更するようにすれば、現在画層関係なく、雲マーク用の画層に作図することができます。

自作関数にして、円弧の長さを引数にすると、例えば、大中小と何種類かの雲マークの基準があるのであれば、類似コマンドを作るのが楽だと思います。

画層選択など、いろいろカスタマイズを加えたコマンドサンプルです。

まとめ

  • コマンドREVCLOUDを使ったコマンド
  • オプションを選択して使っているコマンドはAutoLISPで自作コマンドにしてしまうと便利。

Comments