この掲示板は AutoCADマクロ屋本舗 の掲示板です。

【 注意 】最初に必ず ↓↓ 下記内容 ↓↓ を参照ください。
① マクロが分からない方は、まず 【 マクロ講座 】 を参照ください。
② 質問の前に 【 マクロ使用前の注意事項 】 をお読みください。
③ 質問する時は、新規投稿フォーム下の【 新規投稿時のお願い 】を必ずお読みください。

オブジェクトの背景をマスクする
はじめまして。
2019RVerを使用しております。

仕事柄機器関係や
細かい図面の作業が多いのですが、
オブジェクトの順序の際に
一番手前に一番細かい機器等がくる図面を描きます。
(この画像でいうとファンが一番手前です)

トリムは許されないので
毎回ワイプアウト等で境界を生成し、
マスクしているのですが
とても大変です。
何か、マクロで良い方法はないでしょうか。
  • ex
  • 2019/06/20 (Thu) 09:27:14
Re: オブジェクトの背景をマスクする
画像です。
  • ex
  • 2019/06/20 (Thu) 09:28:51
Re: オブジェクトの背景をマスクする
マクロではないしワイプアウトでもないのですが
自分ならばこうするという方法を1つ

>(この画像でいうとファンが一番手前です)
この画像の場合です

1.ファンの外形で塗り潰しのハッチングをします。
2.ハッチングの色を色選択でtrueColorの0,0,0に設定します。
インデックスカラーの黒(7)は黒の背景だと白になってしまう為、無理やり黒にする為trueColorの0,0,0を使用します。
(ちなみに黒以外なら背景色と同色にしてください)
3.ハッチングを最背面に移動します。
4.ファンとハッチングをブロック化します。

これが下準備(といってもこれがほとんどですけど)

5.ブロック化したファンを指定の位置に貼付ます。

たぶんこれで大丈夫だと思いますが、念のため貼り付けたブロックを最前面に移動します。

説明が下手なのでご理解いただけるかはわからないですが、これ以上わかりやすくは説明できないと思います。
その場合は、申し訳ないですがスルーしてください。
  • chibi-tom
  • 2019/06/20 (Thu) 12:23:43
Re: オブジェクトの背景をマスクする
chibi-tom様
ご回答ありがとうございます。
ハッチング方法試してみましたが
何度順序を変えてもハッチングが優先されてしまい、
印刷時に真っ黒になってしまいました、、
  • ex
  • 2019/06/20 (Thu) 17:11:45
Re: オブジェクトの背景をマスクする
すいません
それはそうですよね

画面の見た目は白になりますが、それで良ければ
ハッチングの色を255,255,255にすれば大丈夫かと思います。
  • chibi-tom
  • 2019/06/20 (Thu) 17:27:42
Re: オブジェクトの背景をマスクする
現状、ワイプアウトで運用してるのなら、ワイプアウト作成を簡単にするマクロを作ってみました。

やってることは、

選んだオブジェクトに境界線を作って、
境界線をオフセットして、
その線にワイプアウトして、
ワイプアウトを背面に移動してオブジェクトとブロック化する

*^C^C$M=setenv;to;0;$(nth,$(getenv,to),offsetdist;\undo;be;rectang;\$M=\setenv;p1;"""$(getvar,lastpoint)""";;to;1,,,)$(nth,$(getenv,to),,line;non;@;non;$(getenv,p1);;ucs;e;l;erase;l;;-boundary;non;$(getvar,offsetdist)<0;;erase;l;;ucs;p;select;si;\setenv;to;2,,)$(nth,$(getenv,to),,,copybase;non;0<0;p;;undo;e;u;pasteclip;non;0<0;pedit;l;d;;offset;e;y;;$(getvar,lastpoint);$(getenv,p1);;;e;n;;;setenv;to;3,)$(nth,$(getenv,to),,,,wipeout;p;l;y;;f;d;draworder;l;;b;select;l;\copybase;\p;;erase;p;;^Cpasteblock;non;@)^M

①マクロ実行
②オフセット間隔入力
③四角で囲う。
④境界線が幾つか作成されるので、目的の境界線をクリック
⑤ブロック化したいオブジェクトを選択
⑥ブロックの挿入基点をクリック

以上。

6個も操作が有るので、「簡単にするマクロ・・・」とは言えないか。
「ちょっとだけ簡単にするマクロ・・・」です。

注意:
〇オブジェクトが境界作成コマンドで、境界を作成できない形状の場合はエラーになります。
〇目的のオブジェクト以外の物がない場所に移動して行って下さい。
〇ワイプアウトの枠を非表示にしたい場合は、マクロの最後の方の
 「wipeout;p;l;y;;f;d;」を「wipeout;p;l;y;;f;off;」に変更してください。
〇setenvコマンド使ってますので⇒(https://ameblo.jp/totthi-macro/entry-10895232361.html

参考どーが
https://streamable.com/f3jj4
  • Lon
  • 2019/06/20 (Thu) 18:49:24
Re: オブジェクトの背景をマスクする
名前のついた印刷スタイル(.stb)を使った方法例

モノクロ印刷をする前提で記載しています。
環境が違えばうまくいかない可能性は大きいので参考程度でお考えください。
(あくまで自分がやってみてうまくいった方法であり、実用的ではないかもしれません)

1.名前のついた印刷スタイルを作成する。
  1-1.CONVERTCTBコマンド実行、ファイルを選択で『monochrome.ctb』を選択する。
  1-2.ファイルを作成で『black-white(0).stb』を作成する。(名前は何でもOKです)
  1-3.印刷スタイル管理で『black-white(1).stb』を作成する。(名前は何でもOKです)
   1-3-1.一般タブでR14の色マッピングテーブルを削除をクリックする。
   1-3-2.名前をつけて保存で『black-white(1).stb』で保存する。
  1-4.印刷スタイル管理で『black-white(1).stb』を編集する。
   1-4-1.フォーム表示タブで『normal』以外を削除する。
   1-4-2.スタイルを追加で印刷スタイル『monochrome』を作成する。
   1-4-3.プロパティの色をBlackに変更する。
   1-4-4.スタイルを追加で印刷スタイル『black-white』を作成する。
   1-4-5.プロパティの色をBlackに変更する。
   1-4-6.プロパティの濃淡度を『0』に変更する。
   1-4-7.名前をつけて保存をクリックする。⇒『black-white(1).stb』で保存する。
   1-4-8.保存して閉じるをクリックする。
2.ハッチング用の画層を作成する。
  2-1.画層管理を起動する。
  2-2.新規作成で『black-white』画層を作成する。(名前は何でもOKです)
  2-3.色を『trueColorの0,0,0』に設定する。
3.個々のオブジェクトの印刷スタイルを設定する。
  3-1.すべて選択する。
  3-2.オブジェクトプロパティ管理で印刷スタイルを『monochrome』に変更する。
  3-3.対象のオブジェクト(画像のファン)を外形でハッチングする。
  3-4.ハッチングを『black-white』画層に変更する。
  3-5.ハッチングをオブジェクトプロパティ管理で印刷スタイルを『black-white』に変更する。
  3-6.ハッチングを最背面に移動する。
  3-7.対象のオブジェクト(画像のファン)とハッチングをブロック化する。


これでできると思いますが、書き並べてみるとやっぱり面倒くさいですね。
テンプレート図面を作っておけば新規図面には使えるかも知れないですね。(.stbを使っても良い前提)
  • chibi-tom
  • 2019/06/21 (Fri) 15:38:39
Re: オブジェクトの背景をマスクする
一部修正しました
(先ほどの書き込みパスワード記載忘れで編集、削除ができなかった)

名前のついた印刷スタイル(.stb)を使った方法例

モノクロ印刷をする前提で記載しています。
環境が違えばうまくいかない可能性は大きいので参考程度でお考えください。
(あくまで自分がやってみてうまくいった方法であり、実用的ではないかもしれません)

1.名前のついた印刷スタイルを作成する。
  1-1.CONVERTCTBコマンド実行、ファイルを選択で『monochrome.ctb』を選択する。
  1-2.ファイルを作成で『black-white(0).stb』を作成する。(名前は何でもOKです)
  1-3.印刷スタイル管理で『black-white(1).stb』を作成する。(名前は何でもOKです)
   1-3-1.印刷スタイル管理で『black-white(0).stb』を選択する。
   1-3-2.一般タブでR14の色マッピングテーブルを削除をクリックする。
   1-3-1.名前をつけて保存で『black-white(1).stb』で保存する。
  1-4.印刷スタイル管理で『black-white(1).stb』を編集する。
   1-4-1.フォーム表示タブで『normal』以外を削除する。
   1-4-2.スタイルを追加で印刷スタイル『monochrome』を作成する。
   1-4-3.プロパティの色をBlackに変更する。
   1-4-4.スタイルを追加で印刷スタイル『black-white』を作成する。
   1-4-5.プロパティの色をBlackに変更する。
   1-4-6.プロパティの濃淡度を『0』に変更する。
   1-4-7.名前をつけて保存をクリックする。⇒『black-white(1).stb』で保存する。
   1-4-8.保存して閉じるをクリックする。
2.ハッチング用の画層を作成する。
  2-1.画層管理を起動する。
  2-2.新規作成で『black-white』画層を作成する。(名前は何でもOKです)
  2-3.色を『trueColorの0,0,0』に設定する。
3.個々のオブジェクトの印刷スタイルを設定する。
  3-1.すべて選択する。
  3-2.オブジェクトプロパティ管理で印刷スタイルを『monochrome』に変更する。
  3-3.対象のオブジェクト(画像のファン)を外形でハッチングする。
  3-4.ハッチングを『black-white』画層に変更する。
  3-5.ハッチングをオブジェクトプロパティ管理で印刷スタイルを『black-white』に変更する。
  3-6.ハッチングを最背面に移動する。
  3-7.対象のオブジェクト(画像のファン)とハッチングをブロック化する。


これでできると思いますが、書き並べてみるとやっぱり面倒くさいですね。
テンプレート図面を作っておけば新規図面には使えるかも知れないですね。(.stbを使っても良い前提)
  • chibi-tom
  • 2019/06/21 (Fri) 15:44:59
Re: オブジェクトの背景をマスクする
申し訳ありませんが、自分は名前のついた印刷スタイル(.stb)ほとんど使わないので
これで合っているかどうかは保証はしません
  • chibi-tom
  • 2019/06/21 (Fri) 15:52:33

返信フォーム






プレビュー (投稿前に内容を確認)