- ベストアンサー
DXFファイルへのスクリプト適用方法とスクリプトメーカーの問題
- AutoCadを使用している方向けに、DXFファイルへのスクリプトの適用方法についてまとめました。
- また、一括で処理を行いたい場合に試してみたスクリプトメーカーの問題と対処方法も解説しています。
- 他にも適用方法についての情報や代替の方法についても紹介しています。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
中途半端なスクリプトになっているみたいですね。 どういうスクリプトメーカーを使われているのかわかりませんが、 図面を開く→処理→閉じるという流れにしたいのなら、今回の場合のテンプレートは 以下のような感じでしょうか。 _Open ; 図面名を入力 ”[FULLNAME]” filedia 0 _ai_selall _scale 0,0 4 qsave ;ファイル形式を入力 [R14(LT98<97)/2000(LT2000)/2004(LT2004)/2007(LT2007)/2010(LT2010)/標準仕様(S)/DXF/ テンプレート(T)]: dxf ;バージョンを入力 [R12(LT2)/2000(LT2000)/2004(LT2004)/2007(LT2007)/2010(LT2010)]: v 2004 ;精度として小数点以下の桁数 (0 から 16) を入力 または 16 ;図面に名前を付けて保存 ”[FULLNAME]” ;置き換えますか? <N> y filedia 1 Close ;図面に対する変更をすべて放棄しますか? <N> Y dxfのバージョンと精度は適宜置き換えてください。 ダイアログの表示非表示をfilediaで切り替えています。
その他の回答 (1)
- moon00
- ベストアンサー率44% (315/712)
AutoCADのバージョンは何をお使いですか? バージョンによっては、実行ボタンでは直接AutoCADへ送れない場合があります。 その場合は「スクリプトを保存」して、そのファイルをAutoCADの画面へ直接ドラッグ&ドロップするか、 scriptコマンドを実行して、保存したファイルを指定してください。 作成したスクリプトは以下のような感じになっていませんか? ;=== 本 体 ==================================================== ;【 C:\Users\dareka\Documents\exp.dwg 】 _Open "C:\Users\dareka\Documents\exp.dwg" _Zoom _Extents _Dxfout "C:\Users\dareka\Documents\exp.dwg" V 2000 16 Close Y この上部の「;」がついている部分はコメント行なので、このままで大丈夫です。 スクリプトはそれ以下の_Openから始まっています。 その下にファイル名が「"」で囲まれて記載されていれば、ちゃんと動きます。
お礼
AutoCadは2007を使用しています。 スクリプトは一度ファイルを保存して直接ドラッグ&ドロップをする事で実行する事ができました。 作成されたスクリプトは以下の様になていました。 ;=== 本 体 ==================================================== ;【 C:\Users\dareka\Documents\exp1.dxf 】 _ai_selall _scale 0,0 4 _qsave ;【 C:\Users\dareka\Documents\exp2.dxf 】 _ai_selall _scale 0,0 4 _qsave ;【 C:\Users\dareka\Documents\exp3.dxf 】 _ai_selall _scale 0,0 4 _qsave ;【 C:\Users\dareka\Documents\exp4.dxf 】 _ai_selall _scale 0,0 4 _qsave ;【 C:\Users\dareka\Documents\exp5.dxf 】 _ai_selall _scale 0,0 4 _qsave ;=== フッダ ==================================================== 【の後に半角スペースがあったりしましたが、 そこはメモ帳の機能で「_open "」に変換して何とか対応できました。 (ただ閉じる時に毎回「2007形式で保存しますか?」とダイアログボックスが出てきてしまうので開いた全てのファイルに対して毎回回答を入力しなければいけないので大変ですが…。また何故か上記コマンドには含まれていないHELPコマンドも実行されてしまいます…。) 今回、「;」の意味とファイルを指定する時は「"」でファイル名が囲われていれば実行されるということが分かり、何とか対処することができました。 大変ありがとうございます!
お礼
[FULLNAME]と入力する事でテンプレートからスクリプトを作成したらきちんと"ファイル名"となっているスクリプトが生成されました! また、「_qsave」を使用すると後に「_close」のコマンドを使用して次にまた「_open」を入れても途中で止まってしまっていたのです。 名前を付けて保存を行えば良かったのですね! これで最初からファイルを開き、処理を行い、ファイルを閉じるという動作を最後迄連続して行える様になりました。 かなりの時間短縮になります。 大変ありがとうございました!