• 締切済み

AutoCADの画層一発変換

ダウンロードしたCADデータの画層を社内の画層に一発で変換できるマクロというのはどのように作ればよいのでしょうか? あるサイトでこのようなものを見つけたのですが、これは都度オブジェクトを選択しなくてはなりません ^C^C$m=-layer;m;AM_4;;QSELECT;_Change;p;la;AM_4;;;^M;; 選択もマクロで行いたいのです。 どなたかよきアドバイスをお願いいたします。

みんなの回答

  • gtta
  • ベストアンサー率50% (92/181)
回答No.5

No2です。 画層"0"を画層"AM_0"にしたいとなると、renameではできません。 画層"0"は、変更も削除もできないからです。 他の画層なら可能でしょう。 もし、画層"0"で書かれたものを変更したいのなら、Filterで画層"0"を全て選んで、変更するといいでしょう。 一番、楽なのは、LISPでプログラムすることですが・・・。

  • moon00
  • ベストアンサー率44% (315/712)
回答No.4

変換する際に、必ずrename元のレイヤは存在しますか? 変換する元のレイヤがない場合、スクリプトは止まってしまいます。 スクリプトでやろうとする場合は、 1.まず、renameする元レイヤをすべて存在する状態にする  →-layer m レイヤコマンドのMオプションで必要レイヤを事前に作成   (存在する場合は、そのレイヤを現在層にする動きになります)  2.renameにて順次レイヤ名を変更 3.オブジェクトのないレイヤを消しておきたいなら、-purgeコマンドで  レイヤ削除 たとえば、レイヤ名「A・B・C」を「Pre_A・Pre_B・Pre_C」にする場合、 -layer r A Pre_A r B Pre_B r C Pre_C というスクリプトを作成すると 元のデータにBがない場合は、途中で止まります。 なので、 -layer m A m B m C で一度変更元レイヤを確実にある状態にしてから 上記のスクリプトを追記すると、確実に変更できるはずです。

  • grazie
  • ベストアンサー率56% (200/355)
回答No.3

スクリプトを使えば一括変換可能ですよ。 layer rename "_01形材" "_01katazai" こんなふうに書いて拡張子.scrで保存して、あとはAutoCADのウィンドウにドラッグ&ドロップすれば使えます。 スクリプトの基本的なルールについてはヘルプを参照してくださいね。 はじめにレイヤリストを作るときは ^C^C-layer;?;*; こんなマクロが使えると思います。

CADMAC
質問者

お礼

ありがとうございます。 早速やってみたのですが、オプションを要求され、止まってしまいます。 もう少しスクリプトについて調べてみます。 ちなみに、使用キャドはAutCAD Mechanical 6 です。 また何か、教えていただけるのであれば、連絡をお待ちします。

  • gtta
  • ベストアンサー率50% (92/181)
回答No.2

フィルターで選んで変換程度では、まずいのでしょうか。 完全にオートでとなると・・・。 ダウンロードしたCADデータのどの画層を社内のどの画層に置き換えるのか決まっていますか。 社内で使う画層は決まっていても、ダウンロードしたデータの画層は様々ではないでしょうか。 マクロとは手で操作したやり方を連続してできるようにするものです。 ダウンロード元の画層が何かを自動で判別する操作ってありませんよね。 選ぶことが出来なければ、変換することも出来ません。 もしできるとしたら、マクロではなく、LISPなどでプログラムすることです。 CADがレギュラーのAutoCADじゃないとLISPは動きませんが・・・。 LTだとしたら、Acadremoconかなぁ。 それぞれ専門のサイトがありますから、相談されるといいでしょう。 それでも何を何に変換するのか、ルール付けは必要ですけどね。

CADMAC
質問者

お礼

ありがとうございます。 たとえば、画層"0"を画層"AM_0"に一発で変換したいのです。 購入品データを自社の画層に合わせる時間を短縮したいのです。 ちなみに、使用キャドはAutCAD Mechanical 6 です。 専門サイトに相談してみますが、また何か、教えていただけるのであれば、連絡をお待ちします。

  • ishiwaru
  • ベストアンサー率19% (70/356)
回答No.1

それは無理です

CADMAC
質問者

お礼

回答ありがとうございます。 簡単でよいので、理由を教えていただけないでしょうか?

関連するQ&A

  • AutoCADスクリプトで教えて下さい。

    選択画層のみ表示したいのですが、 DIESELマクロだと ^C^C$M=_ai_molc;\-layer;of;*;n;; これで出来ますが、スクリプトだとどうなるでしょうか? 1) これだと一つずつ入れていくと動作しますが、スクリプトにするとオブジェクトを選択するところで選択出来ません。 _ai_molc -layer of * n (Enter) 2) やはり一つずつ入れていくと動作しますが、スクリプトにするとオブジェクトを選択するところで選択出来ません。 -layer s (Enter) of * n (Enter) どうすれば良いでしょうか?

  • AutoCAD LTでのレイヤ(画層)削除について。

    AutoCAD LT2002を使っています。 dwgのレイヤを整理して、不要なレイヤを削除する作業をしているのですが、削除できない時があります。 メッセージでは「1.0とdefpoints/2.現在の画層/3.外部参照に従属する画層/4.オブジェクトを含んだ画層/は削除できない」と表示されます。 1と2ではなく、3の外部参照も自分ではしていません。 それで、どこかにオブジェクトがあるのかと「クィック選択」で消したい画層を選んでしぼりこんでも何も出てきません。 ファイルは他で作成したものなので、その時には外部参照をしていたかもしれませんが、「外部参照管理」で見ても何も表示されていないので、関係ないと思うのですが…。 何か他に考えられることはあるでしょうか? よろしくお願いします。

  • AutoCad2000LTを使っています。

    AutoCad2000LTを使っています。 使っていないレイヤーを削除するために「purge」コマンドを 使って出てくるレイヤーをすべて消すのですが、 使っていないレーヤーが全部消えません。 レイヤーの全表示をして確認しても、フィルターで抽出しても なにも選択されないレイヤーでも直接削除しようとすると、 このようなエラーメッセージがでて削除できません。 消したい画層は0でもないし、現在の画層でもあません。 オブジェクトを含んだ画層でもないです(抽出しても無いので) 1つ判らないのは、外部参照に属する画層・・と、言う意味がわかりません。 しかし、ブロック挿入はしましたが、すべて分解し、 「purge」コマンドで削除しています。 この、選択・削除できない画層の影響で印刷時の中心がズレてうまく出力できません。 解決方法がわかる方、ご返信ください。

  • メーカCADデータをテンプレート画層に一括変換し…

    メーカCADデータをテンプレート画層に一括変換したい メーカHP、CD-ROMで配布されているCADデータを利用し、機械設計を行っています。CADはAUTOCAD 2000iを使用しています。毎回メーカ画層設定と自分のCAD環境(画層)設定が異なっている状況です。このため毎回プロパティコピーコマンドで画層を変更して利用しなければならず、これを自動(AUTO LISPまたはVB)で実行する方法は無いでしょうか?結構無駄に作業時間が取られるので、沢山のCADデータを一括で実行できるマクロ、ツールなどあれば紹介いただけないでしょうか?宜しくお願いします。

  • AutoCADで特定画層の図形を一括削除できますか?

    AutoCAD初心者です。(AutoCAD2004) ある図面をお客様からもらったのですが、特定の画層に点在している図形を一括で削除したいのですがやり方が分かりません。 (状況) ・内容:複雑な工場レイアウト図 ・画層数:40 (知りたい事) 1.AutoCADは画層ごと削除は出来ないのですか? 2.ある画層に含まれる図形全部を一括選択できないものでしょうか? →それ以外の画層をフリーズすると言うのは無しとして(何十という画層をフリーズするのは非効率) 複雑な図面になるとある画層にどれとどれが含まれているか分からなくなってしまいます。 初歩的な質問だと思いますが、回答お願いします。(私は仕事でヒューレッドパッカード社のme10という機械CADを使っています。AutoCADは外部からのデータを変換、修正するためにやむなく使っています。)

  • AutoCADで線種変更するマクロを知りたい

    現在AutoCAD 2018LTを使用しています 実線を破線に変更するのにLT2014で使っていたマクロが動きません オブジェクトのプロパティからでは若干面倒です 以下がLT2014でのマクロです ^C^C_select;$M=$(if,$(getvar,CMDACTIVE),\,)_Change;p;;P;lt;HIDDEN;s;1;; どこが間違いでしょうか? お詳しい方、よろしくお願いいたします

  • 見えない「画層」、「寸法スタイル」はどこ?

    前任者の作図した図面を編集していると、画面上使用していない「画層」や「寸法スタイル」があり、削除できないものがあります。(前任者は既に退社しています) 「画層」の場合は全ての「表示」をONにして、削除したい画層以外を全て「ロック」した上で、図面全体を選択してオブジェクトを削除しても、その削除したい「画層」は消すことができません。この「画層」は「0」や「defpoints」ではありません。 この消せない「画層」を表示させることや、削除するにはどうしたらよいでしょうか? 「寸法スタイル」の場合は図面上使用していないはずの「寸法スタイル」を削除しようとすると、「使用されています、削除できません」と表示されます。 この「寸法スタイル」を表示させることや、削除するにはどうしたらよいでしょうか? 追記します、使用しているCADは、AutoCAD LT-2000です。

  • AUTOCADで両側オフセットについて

    AUTOCAD2015を使用しています。 前回回答いただいたのですが、結果がByLayerに従わなかった為 元要素と同じ色になってしまいました。 それと元々入力値が片側方向のオフセット値なので私の仕事では感違いの元です。 結果を現画層にしたがわせ、入力値が両側にオフセットした結果にする様にしたいのですが ご教授お願い致します。 今のマクロ文は下記です。 ;両側オフセット (defun C:wofset (/ end)   (command "offsetdist" pause)   (setq end 1)   (while (/= nil end)     (command "offset" "" pause)     (if (< 0 (getvar "cmdactive"))       (command "@" "" "change" "l" "" "P" "LA" (getvar "CLAYER") "" "offset" (* 2 (getvar "offsetdist")) (entlast) "@" "" "change" "l" "" "P" "LA" (getvar "CLAYER") "" "offsetdist" (/ (getvar "offsetdist") 2))       (setq end nil)     )   )   (princ) ) どうぞ宜しくお願い致します。

  • 【AutoCad】図描画時にレイヤ切替するには?

    建築設計図でAutoCAD2005を使用しています。 線分を既設図形と同じレイヤで描く時、素早いレイヤ切り替えにはどうしたら良いのでしょうか? 現在は (1)既設図形を選択しレイヤを見る (2)画層ツールバーそのレイヤに切り替え (3)描画 10年程前に使用していたJW-CADでは Shift(だったかな)押して既設図形を選択するだけで切り替わりました。 JW-CADのような操作orショートカットなどはないのでしょうか? わかる方がいらっしゃれば教えて下さい。

  • カスタムメニューのマクロが機能しない(AUTOCAD)

    書籍の付録でカスタムメニューが付いてました インストールしたのですが うまく機能してない様です カスタムメニューから実線や破線、中心線などを選ぶと 選択したオブジェクトが変更されるらしいのです 色は変更されますが線がそのままの状態です マクロを覗いてみたのですが マクロはさっぱり解らないので質問させて頂きました 記述は 破線に変更 色茶色 ^C^Cselect auto;\chprop p;;la Model;c 11;lt Dashed;lw ByLayer;; 中心線 色赤 ^C^Cselect auto;\chprop p;;la Model;c Red;lt Center;lw ByLayer;; 御存知方この記述の意味を教えて下さい