AutoCADLTの基本入力はキーボード。まず最初にコマンドを入力。
データーの入力を要求されるので入力。この繰り返しである。 PCの初期はそうだった。キーボード入力はインタープリターという プロセスで機械語に翻訳されパソコンを制御する。次の作業の命令 を催促するコメントがモニターに表れる。対話型のシステムである。 MSDOSがそうだった。Unixもそうだ。サーバー管理者は キーボードとモニターでシステムを監視コントロールしている。 AutoCADLTはコマンドを解釈するインタープリターを ソフトの中に独自で持っている。 AutoCADLTのコマンド群は膨大である。インストールしたディレクト リーの下のsupportというディレクトリーにaclt.pgpというtextファイル がある。そこに<Alias>,*<Full command name>という形式でショートカットテーブルがある。
誰もフルスペルで膨大なコマンドを打ち込めない。ショートカットを作る。 AutoCADLTはこの表でショートカットをフルスペルに翻訳する。僕が、L[enter]10,10[enter]100,100[enter]として直線を書けるのは このファイルのおかげだ。 |
グラフィカルなモニターインターフェースとマウスが基本
入力となった。Windowsのおかげでアプリケーションはみな
そうなのだが。アイコンをクリックすれば作業は進む。コマンド
はもう要らない。 でも、AutoCADLTの基本は何も変わっていない。Windowsインターフェースが 仲介してAutoCADLTのインタープリターに命令を送っている。 アイコンの仕組みがどうなっているか調べてみよう。表示>ツールバー>とすると、カスタマイズのダイアログが開く。こうしておいて、例えば「削除」のアイコンをクリック する。ボタンのプロパテーが表示される。「このボタンに関連付けられたマクロ」 の欄を見てみよう。
「マクロ」とはコマンド群といった意味。^CはキーボードからESCを押しコマンド をリセットしたということ。_eraseはERASEコマンド。削除コマンド。前に_が付い ているが日本語版では意味はない。他言語のためのAutoCAD仕様。癖とでも 解釈しておこう。 結局、マウス操作になったのだが、AutoCADLTはコマンドで操作されている。 |
マクロで使用される特殊文字
カレット( ^ )はキーボードの[Ctrl]キーにマップされている。別の文字と結び付けて、グリッドのオンとオフの切り替え(^G)やコマンドのキャンセル(^C)などの動作を記述しマクロを構築できる。 寸法記入コマンドはコマンドプロンプトに戻るに二回ESCを押す必要がある。このような事情で、^C^C を入力し、マクロ開始前に、確実にコマンドプロンプトに戻せるようにしている。 セミコロン( ; )を検出した場合は、[Enter]に置き換えられる。 各コマンドにより要求されるキー入力は違いがある。[Enter]だけでよかったり、10、90[Enter]だったり、オプションのM[Enter]だったりする。 マウスでオブジェクトを連続選択できるコマンドもある。[Enter]で次ぎのプロセス に移る。「\」は、この入力終了の[Enter]も含めた応答という意味に解釈できる。 コマンドリストを見ると、同じコマンドでも前に-が付くのがあります。Layerと -Layeのように。これは一体なんだろう。特殊文字かと思ったが、そうではなかった。 ダイヤログが開かないバージョンだそうです。マクロにはこちら を使うのでしょう。 |
AoutoCADLTの対話型コマンドはコマンド入力に対して、次のデーターをメッセージ
と共に要求してくる。アイコンをクリックして作業しますが、どうもうまく行かないという経験があります。記録されたマクロを2、3調べてみましょう。 まず、最も基本の Line コマンドです。Lineコマンドは、マウスの場合 line のアイコンをヒット。始点をヒット、終点をヒット。ここで次の点指示を 待つのですが、[Enter]を押せば終ります。確かにマクロもそうなっていました。 ヘルプのコマンドリファランスには次のように書いてありました。
確かにコマンドの仕様自体が連続作画になっているようです。 では、単一線描画といつて、始点をヒット、終点をヒット。これでコマンドが 終りにするアイコンが欲しくなります。終点をヒットの次ぎに[Enter]を追加してやれば いいのではと考えます。
もう5年もLTを使っていますが、線分割が思うようにゆきません。 切断点が交点とかに一発で決まりません。あとで延長やトリミングをします。 BRAKE コマンド
円の場合のルールはこの際しっかり覚えておきましょう。「1点目から2点目が反時計回り になるように指定する」と。 COPY コマンド キーボードから
このケースは<基点を移動距離として使用>
このケースは<1点目と2点目の相対距離だけ移動してコピーされる。> 1点目はどこでもいい訳です。
COPYコマンドの基本仕様は複雑処理をこなすようです。 LTでは、コマンド選択の前にオブジェクトを選択しても、後からでもよかった。 コマンドにSELECTという のがある。これ単独では選択するだけで何も作業をしない。 選択されたオブジェクトが点線の選択状態となるだけだ。 コマンドには「コマンド修飾子」 という機能が使える。先程のCOPYは、後から選択を要求する仕様になっている。この場合、 「コマンド修飾子」 の一つ「選択モード」 が使える。オブジェクトを選択するように求めるプロンプトに対して、SELECTコマンドで説明されている選択モードの 1 つを入力できる。 キーボードから
これがオブジェクトの前選択。SELECTコマンドを使う。マクロ にするとこのようになる。
次に _p オプション指定して、先ほど select;\ で選択したオブジェクトを指示。 終わったらリターンを押し、複写コマンドを実行している。 SELECTコマンド
どうもマクロコマンドを利用するには、基本のコマンドの特徴を十分理解しておく 時間が必要ですね。 |
(Direct Interpretively Evaluated String Expression Language ) |
コピーのアイコンのマクロを見てみましょう。表示>ツールバー>として、カスタマイズのダイアログが開く。こうしておいて、「複写」のアイコンをクリック
する。ボタンのプロパテーが表示される。「このボタンに関連付けられたマクロ」
の欄を見てみよう。 |
^C^C$M=$(if,$(eq,$(substr,$(getvar,cmdnames),1,4),grip),_copy,^C^C_copy) |
なんだかチョット複雑ですが、 $M=$(..$(..$(...)...)..) これは何でしょう。プログラムみたいですね。関数かな。 マクロの中で使う式だそうです。DIESEL式。一般形はこんなんです。 $M=......$(..$(..$(...)...)..)........$(...)... $M=が出てくると、$(を探し、)までを先にやることになっています。 何重にもなっていると、一番内側まで行って、そこから始めます。 一つ終ったのですが、まだ後にあるので、続いてそれも先にやることに なっています。 この式の中には、式や関数や条件式が使えます。 $(getvar,cmdnames) システム変数cmdnamesから現在アクティブなコマンド の名前を拾います。 $(substr,****,1,4) コマンド名の1桁から4桁抜き出します。 $(if,$(eq,****,grip),AAA,BBB) もし****がgripならAAA,そうでないならBBBを実行。 なんだかチョット複雑でしたが、grip(グリップモード)が ONだったらOFFにしてからcopyコマンドを実行しましょう。と、いうことでした。 結局、マウス操作になったのだが、AutoCADLTはコマンドで操作されている。 この事をしっかり覚えておきましょう。 |
|