ブロック属性のテキスト ファイルへの抽出(Extracting BlockAttributes to a Text File)
ExtractBlockAttribute コマンドを使用すると、ブロック属性値をさまざまな形式のテキスト ファイルに抽出できます。
抽出するデータは、テンプレート ファイルによって定義します。
抽出されたデータは、表計算ソフトウェアや他のアプリケーションを使用して確認できます。
ブロック属性をテキスト ファイルへ抽出するには:
- コマンド プロンプトで ExtractBlockAttribute と入力します。
- ダイアログ ボックスのテンプレート(Template)に、抽出するデータを定義するテンプレート名を入力します。
をクリックして、ファイルを参照します。
ファイル構文の詳細については、ブロック属性抽出のテンプレート ファイルの作成を参照してください。
- エンティティ選択(Select Entities)
をクリックして、抽出するブロック属性データのエンティティを指定します。
一時的にダイアログ ボックスが閉じます。
- グラフィックス領域で、ブロック属性を持つブロックを選択し、Enter キーを押します。
- ダイアログ ボックスの出力(Output)に、出力ファイルの場所と名前を入力します。
をクリックすると、ファイル名を選択できます。
- 形式(Format)で、ブロック属性情報の書き込みに使用するファイル形式を選択します。
- Comma Delimited File(CDF): 各ブロック属性レコードのフィールドはカンマで区切られます。文字列はシングル クォーテーション マークで囲まれます。
- Space Delimited File(SDF): 各ブロック属性レコードのフィールドはスペースで区切られます。文字列はシングル クォーテーション マークで囲まれます。
- OK をクリックします。
ブロック属性抽出のテンプレート ファイルの作成
ブロック属性抽出のテンプレート ファイルを使用して、抽出するデータ フィールドを定義し、表示する形式を制御します。
ASCII テキスト エディタを使用し、ブロック属性抽出用のテンプレート ファイルを作成します。
テンプレート ファイルの各行は次のとおりです。
- 抽出するブロック属性およびブロック プロパティを指定します。
- 指定には次に示す構文を使用します。
- 作成される出力ファイルの列になります(例を参照)。
テンプレート ファイルには、ブロック属性名を最低 1 つ指定する必要があります。
ファイルの構文
テンプレート ファイルの各行の構文は次のとおりです。
field_name [スペース] output_format
有効なフィールド名を下記の抽出フィールド名の表に示します。
field_name と output_format は 1 つ以上のスペースで区切ります。タブではなく、スペースを使います。各行の末尾で Enter キーを押します。これは最終行も同様です。
出力フォーマットの構文は次のとおりです。
Twwwppp
データ タイプ(T)は次のいずれかです。
C |
文字列フィールドを示します。 |
N |
数値フィールドを示します。 |
出力フォーマットの次の 2 つの部分には 3 桁を使用します。
www |
幅 |
フィールドの幅を複数の文字で指定します。 |
ppp |
精度 |
数値フィールドの小数位数の数を指定します。
文字整数フィールドについては、000 を指定します。 |
例えば:
- 999.99 までの数値には N006002 を使用します。N は数値データであることを意味し、006 は小数点を含めて最大 6 桁のスペースを表します。002 は 2 桁の小数位数の精度を指定します。
- 最大長の 25 文字の文字列フィールドには C025000 を使用します。文字列フィールドの末尾 3 桁は、必ず 000 を指定します。
テーブル(Table): 抽出フィールド名
以下を抽出できます。
- 図面に挿入するブロックのブロック属性の値。
- ブロック属性が属すブロックの定義済みプロパティ。
関連データの抽出に次の抽出フィールド名および形式仕様を使用します。
フィールド名 |
形式 |
抽出 |
ブロック属性名 |
Cwww000 または Nwwwppp |
ブロック属性値 |
BL:NAME |
Cwww000 |
ブロック名 |
BL:X |
Nwwwppp |
ブロックの挿入点の X 座標 |
BL:Y |
Nwwwppp |
ブロックの挿入点の Y 座標 |
BL:Z |
Nwwwppp |
ブロックの挿入点の Z 座標 |
BL:ORIENT |
Nwwwppp |
ブロックの回転角度 |
BL:XSCALE |
Nwwwppp |
ブロックの X 尺度係数 |
BL:YSCALE |
Nwwwppp |
ブロックの Y 尺度係数 |
BL:ZSCALE |
Nwwwppp |
ブロックの Z 尺度係数 |
BL:XEXTRUDE |
Nwwwppp |
X 方向のブロック抽出 |
BL:YEXTRUDE |
Nwwwppp |
Y 方向のブロック抽出 |
BL:ZEXTRUDE |
Nwwwppp |
Z 方向のブロック抽出 |
BL:LAYER |
Cwww000 |
ブロック挿入画層名 |
BL:HANDLE |
Cwww000 |
ブロック ハンドル |
BL:NUMBER |
Nwww000 |
ブロック カウンタ |
BL:LEVEL |
Nwww000 |
ブロック ネスト レベル |
例:
テンプレート ファイル:
BUILDINGTYPE C030000
ZONENAME C025000
ACTIVITY C020000
HVACSYSTEM C025000
AREA N006002
HEIGHT N004002
BL:NAME C012000
BL:NUMBER N002000
出力ファイル(.cdf 形式):
'作業場/メンテナンス倉庫','Z0/09 スタッフ ルーム','飲食エリア','床下暖房',31.79,2.55,'ゾーン',1
'作業場/メンテナンス倉庫','Z0/14 プラント ルーム','プラント ルーム','HVAC システムのないゾーン',15.84,4.10,'ゾーン',2
'倉庫および貯蔵庫','ZO/11 ロビー','保管場所','暖房',53.26,4.10,'ゾーン',3
...
コマンド:ExtractBlockAttribute