この記事の難易度
AutoCADを使ってP&ID図面からレジューサーの情報を集計、管理したいと思ったことはありませんか?
そんなときは「ダイナミックブロックを使った」材料集計がおすすめです。
レジューサーの集計作業が自動化できれば設計工数を大幅に削減できて利益率が上がります!

レジューサーは一次側と二次側の口径が異なるためブロックでの標準化が難しいですが、「ブロックテーブル」を使うことで集計用ブロックを実現しました。
完成までの道のりは長いですが、一緒に少しずつ取り組んでいきましょう!
レジューサは一次側と二次側のサイズが異なります。なのでシンボルも左右非対称です。
作図の度にユーザーがいちいちブロックを反転させるのはとても手間がかかりますよね?
ここではワンクリックでブロックを反転させる反転アクションを追加します。
まずはレジューサのブロックを用意します。ブロックの作り方がわからない方はこちらの記事を参照してください。

作成したブロックを選択し、右クリック>ブロックエディタを選択してブロックエディタを開きます。

ブロックオーサリングパレットから、パラメータ>反転を選択して
①反転させたいポイントを選択します。すると水色の矢印と「反転状態1」というパラメータが出ます。
②反転させる軸方向を指定します。反転ポイントを選択した後に直線が出るので方向を決めましょう。今回は縦軸を中心に反転させるので縦方向に直線を出しています。直線の長さは適当でOKです。

ブロックオーサリングパレットから、アクション>反転を選択して
③反転させるパラメータを選択します。今回は「反転状態1」を選択します。

④オブジェクトを選択します。今回はレジューサの要素をすべて選択します。
選択が完了してEnterキーを押せば反転アクションがブロックへ追加されます。
作成したブロックが問題なく動作するかテストを行います。

ブロックを選択すると水色の矢印が出ています。矢印をクリックするとレジューサが左右で反転しました。
これでユーザーがいちいちブロックを反転させなくてよくなるので作図効率が高まります!
レジューサーのサイズをユーザーが選択できるようにするために、属性の定義を行います。
属性を定義したらブロックテーブルで値の組み合わせを入れ込んでいきます。
まずは属性の追加を行います。レジューサーには一次側と二次側のサイズが必要なのでそれぞれ設定をしていきます。

リボンから、挿入>属性定義を選択すると属性定義画面が立ち上がります。
モードを「非表示」にチェックをして、属性の名称を入力します。今回は一次側の口径としたかったので「SIZE1」としています。
OKボタンをクリックするとブロック上に属性が配置できます。
今回はモードが非表示なのでどこに配置しても問題ありません。
先程と同様に二次側の口径用の属性を定義します。

モードを「非表示」にチェックをして、属性の名称を入力します。今回は「SIZE2」としました。
OKボタンをクリックしてブロック上に属性が配置しましょう。
先程作成したレジューサーのサイズ属性を使ってブロックテーブルを作成していきます。ブロックテーブルと属性を組み合わせる方法の詳細はこちらの記事を参照してください。

リボンから、ブロックエディタ>ブロックテーブルを選択して、表示させたい位置に挿入しましょう。

グリップの数を入力するダイアログが立ち上がりますが、「1」のままEnterキーを押してください。
ブロックテーブルが挿入できたらダブルクリックをしてプロパティテーブルを作成します。

ブロックプロパティテーブル画面を立ち上げたら、赤枠で囲まれているアイコンをクリックします。
するとパラメータプロパティを選択できるようになります。
今回は一次側と二次側のサイズをパラメータに入れたいため、「SIZE1」と「SIZE2」をそれぞれ選択してOKボタンをクリックします。
属性がテーブルへ挿入されたらパラメータの値を入力していきます。

まずはExcelを開いてパラメータの組み合わせは書き出しましょう。
書き出し終わったらパラメータの値をブロックプロパティテーブルのセルにコピー&ペーストします。
これでSIZE1とSIZE2の組み合わせが反映されました。
レジューサーのサイズは一般的に1″×2″のように「一次側口径×二次側口径」と表されます。
SIZE1とSIZE2の値を組み合わせて新たな属性を設定します。

ブロックエディタで一次側と二次側の口径を組み合わせた属性を定義します。名称は「SIZE」としました。
今回は文字を表示させます。モードの「非表示」をチェックしないようにします。
次に、既定値欄よこのアイコンをクリックしてフィールド画面を呼び出します。

フィールド画面が立ち上がったら、フィールド分類を「オブジェクト」にします。
オブジェクトタイプ欄よこのアイコンをクリックしましょう。

属性の情報を取得します。まずは、SIZE1をクリックしましょう。
SIZE1を選択するとプロパティ欄に「値」というプロパティが確認できます。
選択してOKで先に進みましょう。

すると、既定値欄に「---」が表示されます。ここにブロックテーブルから呼び出された「SIZE1」の値が入ります。

同様にしてSIZE2も既定値に追加をしていきます。

「---」が更に追加されました。ここにブロックテーブルから呼び出された「SIZE2」の値が入ります。
このままだと一次側口径と二次側口径が並んでいるだけになり、何を意味しているか分かりません。
1″×2″のように「一次側口径×二次側口径」と表しましょう。

修正方法は簡単です。一次側口径と二次側口径の間に直接「×」を書き込めばOKです。
これでユーザーが選択した口径をブロック上で表示できるようになります。
完成したレジューサーブロックが正しく動作するか確認をしましょう。

初期状態は「----×----」が入っています。
ブロックテーブルを選択すると口径の組み合わせが選択できるようになっています。
今回は一次側を1″、二次側を2″としています。

ブロックテーブルから口径を選択しましたが、値が反映されていません。
しかし、プロパティから属性を確認すると1″と2″の値が入っています。
SIZE属性が「----×----」のままです。
SIZE属性に値を反映させるには再作図を行う必要があります。

コマンドラインから「REGEN(REでもOK)」を入力すると「1″×2″」となって値が反映されました!
今回は属性にサイズのみを入れましたが、材料集計をしやすくするには情報が要ります。
レジューサーを積算するには「材質」が必要です。直接書き込むのは労力がかかるため、配管ラインクラスを入力すると材質情報が取り出せます。
「ファイル名」を属性に入れることでどこの図面の情報かすぐにわかるため入れておくと便利です。
ファイル名を属性に入れる方法はこちらの記事を参照してください。

今回はAutoCADでP&IDの材料集計をするために「レジューサーのダイナミックブロック作成方法」を解説しました。
- 左右非対称のレジューサーを反転させるには反転アクションを使用
- ブロックテーブルを使うと一次側と二次側のサイズが選択できる
レジューサーは左右非対称なブロックです。ユーザーがいちいち方向を切り替えなければいけませんが、作図効率が悪いです。
反転アクションを適用するとクリック一つで方向を変えられます。ちょっとした業務効率化です!
また、レジューサーは一次側と二次側でサイズが異なるため属性を書き出すのが難しいです。
しかし、ブロックテーブルを使うことで複数のパラメータを選択できるようになり、属性にも自動で値が入ります。
今回のブロックを応用すればレジューサーだけでなく安全弁やブリザー弁など口径が変化するブロックも同様に作れます。
今回は非常に難易度の高いブロックでした。しかし、何度も記事を見返してマスターできるように頑張りましょう!
以上、Kotaroでした。