対象製品: IJCAD 2018 時点
_setenv, _getenv コマンドは、 AutoCAD LT のメニューマクロにて情報を保持するためによく使用される機能ですが、 IJCAD には該当するコマンドはありません。
これは、 IJCAD が AutoCAD LT ではなく AutoCAD レギュラー版との互換を重視しているためです。(AutoCAD レギュラー版にもありません。)
_setenv, _getenv コマンドを使用したメニューマクロを IJCAD 移植する場合は、IJCAD で使用可能な LISP 関数を使用することで代用可能です。
(setenv "myenv1" "値")
(getenv "myenv1")
サンプル
以下の DIESEL マクロをLISP式を使用したマクロに変更してみます。
^C^C_setenv;横;\_setenv;縦;\_id;\_rectang;non;@;non;$M=$(getenv,横),$(getenv,縦);
これをLISP式にを使ったマクロに変更すると以下のようになります。
なお、あらかじめ IJCAD のシステム変数設定 LISPINIT を 1に設定しておいてください。
^C^C(progn (setenv "横" (getstring "横:"))(setenv "縦" (getstring "縦:"))
(command "_rectang" pause "non" (strcat "@" (getenv "横") "," (getenv "縦"))))
また SETENV、GETENV にこだわらない場合、以下のような LISP式を使ったマクロにも変更できます。
(progn (setq x (getreal "横:") y (getreal "縦:")) (command "_rectang" pause "d" x y "@"))
関連記事