PR

「Script Writer」が便利。AutoCAD上で複数図面にコマンドを適用できるよ。互換CADで使える場合もあります

AutoCAD

「Script Writer」というAutoCADのLispツールを紹介します。
AutoCAD上で、複数図面へコマンドを一括適用することができます。

スポンサーリンク

Script writer

作者の方のWEBサイトはこちら

Script Writer | Lee Mac Programming
Script Writer Program

どんな事ができるか

一言でいうと「コマンドを複数図面へ一括適用することが出来る」ツールです。

例えば、こんな課題を設定しました。

例題

指定したフォルダに入っているDWG図面を、2000バージョンのDXFに変換する

操作動画

実際にツールを動かしている様子を、GIF動画にしました。
処理内容は、サンプル課題(図面3枚分のDXF変換)です。

機能の概要

通常、ツールを使わずに一枚ずつコマンドを打ち込んで処理するとしたら、コマンドの内容はこうなります。


_.open "ファイルの場所\ファイル名.dwg" _.saveas dxf v 2000   _.close

これをコマンドラインにコピペすれば、任意の図面を開いて変換して閉じるという一連の処理がなされます。

しかし、それが100枚あったら大変です。

そこで、このツールを使います。
ツールを立ち上げて、図面が格納された場所(フォルダ)を指定します。

そして、先ほどの上記コマンドをこんな風に書いて指定します。


_.open *file* _.saveas dxf v 2000   _.close

このツールでは、


"ファイルの場所\ファイル名.dwg"

を、


*file*

というワードで置き換えられます。

すると指定したフォルダに入った図面を対象に、コマンドを自動的に実行することができるんです。

注意

では、ツールの導入方法を説明します。

使い方

ツールをダウンロードする

まず、作者の方のWEBサイトからツールをダウンロードします。

Script Writer | Lee Mac Programming
Script Writer Program

作者の方のページでもツールの概要や使い方が解説されているので、読んでみてください。

CADに読み込む

AutoCADを立ち上げ、コマンドラインに「appload」と打ち込んでください。

アプリケーションのロード画面が立ち上がります。

先程ダウンロードしたファイルを選択。

「ロード」をクリックし、ロード後は「閉じる」ボタンで閉じてください。

これで、ツールがAutoCADに読み込まれました。

ツールを呼び出し、実行する

CADのコマンドラインに、


wscript

と打ち込んで、実行して下さい。

ウインドウが立ち上がるので、下記をそれぞれ指定してください。

  • 処理したい図面が格納されたフォルダ
  • 処理したいコマンド

最後に、
Run script!」を押せば完了です。

補足:

新しくスクリプトを書くときは、まずは1枚分の図面で手動でコマンドを打ち込み、コマンドの流れを注意深く観察して下さい。

うまく動かない場合は、入力待ちを見落としている可能性があります。

例えば、エンターキーを押す個所はスペースキーで代替します。

AutoCAD互換CADで使える場合も、ある

前述しましたが、AutoCADには同様の公式ツールがあります。
過去記事にも詳しく書いています)

しかし、それは「AutoCAD互換CAD」には対応していません。
(おそらく動作しないはず)

ですので、AutoCADの互換CADがLISPに対応しているなら、代替ツールになるかもしれません。

但し、こちらも100%動くとは限りません

私の環境(windows10、64bit)では、下記のような結果でした。

ほかにも私の知らない互換CADがあるでしょうから、とりあえず試してうごけばラッキーです。業務効率上、とても役立つはずです。

IJCAD

先日体験記事を書きましたが、IJCADというAutoCAD互換CADがあります。
「ファイル名が無効です」と出て処理が止まり、使えませんでした。

BricsCAD

最近、ツイッターでフォロワーの方に教えて頂きました。
BricsCADという互換CADがあり、AutoCADと同じように作図ができます。

こちらは、このツールは問題なく使うことが出来ました。

さいごに

コマンドライン上でちょっとしたスクリプトを走らせたい時に、便利です。
複雑な長文のスクリプトなら、AutoCAD公式ツールの「scriptpro」の方が勝手が良いので使い分けるとよさそうです。

関連記事

LTで自動処理を行いたい場合は、下記記事の方法があります。

タイトルとURLをコピーしました