PDF からのフロア プラン フィーチャの抽出 (Extract Floor Plan Features From PDF) (Indoors)

サマリー

.pdf ファイルからポリライン フィーチャを作成します。

このツールの出力ポリラインは編集ツールで修正でき、[フィーチャを Indoor データセットにインポート (Import Features To Indoor Dataset)] ツールへの入力として使用して、フロア対応マップおよびやシーンで利用する Indoors ワークスペースに設定できます。

使用法

  • このツールは、.pdf ファイルを入力として受け入れ、PDF のラインワークに基づいてポリラインを作成します。 このツールを大規模なワークフローの一部として使い、PDF ファイルからフロア プランを抽出できます。

  • 編集ツールを使用して出力ポリライン フィーチャを修正し、不要な線や頂点の削除、ギャップの解消、PDF に含まれない詳細の追加を行い、その出力を [フィーチャを Indoor データセットにインポート (Import Features To Indoor Dataset)] ツールの入力として使用します。

  • 入力された .pdf ファイルがジオリファレンスされている場合、そのジオリファレンス情報が使用されます。 入力された .pdf ファイルがジオリファレンスされていない場合、作成されるポリラインは WGS 1984 Web メルカトルの座標 (0,0) に配置されます。

  • 複数ページの PDF の場合、[ページ番号] パラメーターを使用してインポートするページを指定します。

  • このツールは、出力に次のフィールドを作成します。

    • PDF_NAME- 入力された .pdf のファイル名。
    • PDF_NUMBER- [ページ番号] パラメーター値。
    • USE_TYPE- ツールはドア フィーチャを識別し、それに対応する USE_TYPE フィールドを入力します。 これらのフィーチャは、[フィーチャを Indoor データセットにインポート (Import Features To Indoor Dataset)] ツールを使用してユニット フィーチャの作成時に閉じることができます。
  • [出力ライン フィーチャ] パラメーターの値では、新しいフィーチャクラスを作成するか、既存レイヤーに新しいポリライン フィーチャを追加できます。 入力 PDF に一致する PDF_NAME および PDF_NUMBER フィールド値を持つフィーチャを含む既存レイヤーが指定された場合、それらのポリライン フィーチャは削除され、新しいポリライン フィーチャが追加されます。

  • 出力ライン フィーチャは Z 値 0 で作成されます。 [フィーチャを Indoor データセットにインポート (Import Features To Indoor Dataset)] ツールを実行するときに、レベルの Z 値を設定します。

  • [範囲] パラメーターを使用して処理範囲を制限し、凡例、テキストボックス、引出し線などの PDF 要素を除外します。

パラメーター

ラベル説明データ タイプ
入力 PDF

ポリライン フィーチャを抽出する入力 .pdf ファイル。

File
出力ライン フィーチャ

抽出されたポリラインが書き込まれる出力ポリライン フィーチャ レイヤー。

Feature Layer
ページ番号
(オプション)

ポリライン データに変換される入力 .pdf ファイルのページ番号。 デフォルトは 1 です。

String
範囲
(オプション)

評価されるデータの範囲。

  • [現在の表示範囲] マップ ビュー - 範囲は、アクティブなマップまたはシーンに基づきます。
  • [範囲の描画] 直角化して終了 - 範囲は、マップまたはシーンに描画された四角形に基づきます。
  • [レイヤーの範囲] レイヤー - 範囲は、アクティブなマップ レイヤーに基づきます。 使用可能なレイヤーを選択するか、[すべてのレイヤーのデータの範囲] オプションを使用します。 各マップ レイヤーには、次のオプションがあります。

    • [すべてのフィーチャ] すべて選択 - すべてのフィーチャの範囲。
    • [選択フィーチャ] 選択フィーチャからのエリア - 選択したフィーチャの範囲。
    • [表示フィーチャ] Extent Indicator - 表示フィーチャの範囲。

  • [参照] 参照 - 範囲はデータセットに基づきます。
  • [入力データの共通領域] 交差する - 範囲は、すべての入力データの共通範囲になります。
  • [入力データのすべての領域] ユニオン - 範囲は、すべての入力データの結合された範囲になります。
  • [クリップボード] 貼り付け - 範囲をクリップボードにコピーしたり、クリップボードから貼り付けたりできます。
    • [範囲をコピー] コピー - 範囲と座標系をクリップボードにコピーします。
    • [範囲を貼り付け] 貼り付け - 範囲と座標系をクリップボードから貼り付けます。 クリップボードに座標系が含まれていない場合、マップの座標系が範囲に使用されます。
  • [範囲をリセット] リセット - 範囲はデフォルト値にリセットされます。

座標を手動で入力する場合、アクティブなマップの座標系の座標を数値で指定する必要があります。 マップで、入力した座標と異なる表示単位が使用されることがあります。 南と西の座標にはマイナス値の記号を使用します。

Extent

arcpy.indoors.ExtractFloorPlanFeaturesFromPDF(in_pdf, out_line_features, {page_number}, {extent})
名前説明データ タイプ
in_pdf

ポリライン フィーチャを抽出する入力 .pdf ファイル。

File
out_line_features

抽出されたポリラインが書き込まれる出力ポリライン フィーチャ レイヤー。

Feature Layer
page_number
(オプション)

ポリライン データに変換される入力 .pdf ファイルのページ番号。 デフォルトは 1 です。

String
extent
(オプション)

評価されるデータの範囲。

  • MAXOF - すべての入力データの最大範囲が使用されます。
  • MINOF - すべての入力データに共通する最小領域が使用されます。
  • DISPLAY - 範囲は、表示範囲と同じになります。
  • レイヤー名 - 指定したレイヤーの範囲が使用されます。
  • Extent オブジェクト - 指定したオブジェクトの範囲が使用されます。
  • 座標のスペース区切りの文字列 - 指定した文字列の範囲が使用されます。 座標は、x-min、y-min、x-max、y-max の順序で表されます。
Extent

コードのサンプル

ExtractFloorPlanFeaturesFromPDF の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで ExtractFloorPlanFeaturesFromPDF 関数を使用する方法を示しています。

import arcpy
arcpy.indoors.ExtractFloorPlanFeaturesFromPDF(r"C:\Indoors\PDFs\Floor1-Blueprint.PDF",
                                       r"C:\IndoorsDB\FloorPlanData\Floor1_ExtractedLines", 
                                       "1", 
                                       "-107.0 38.0 -104.0 40.0")
ExtractFloorPlanFeaturesFromPDF の例 2 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトで、ExtractFloorPlanFeaturesFromPDF 関数を使用する方法を示します。

#Name: Indoors_ExtractFloorPlanFeaturesFromPDF_example2.py
#Description: Extracts polyline floor plan features from an input PDF

import arcpy

# Check Out Extensions
arcpy.CheckOutExtension('Indoors')

# Set Local Variables
in_pdf=r"C:\Indoors\PDFs\Floor1-Blueprint.PDF"
out_line_features=r"C:\IndoorsDB\FloorPlanData\Floor1_ExtractedLines"
page_number="1"
extent="-107.0 38.0 -104.0 40.0"

# Call the function
arcpy.gp.ExtractFloorPlanFeaturesFromPDF(
    in_pdf,
    out_line_features,
    page_number,
    extent
)

# Check In Extensions
arcpy.CheckInExtension('Indoors')

環境

ライセンス情報

  • Basic: No
  • Standard: No
  • Advanced: 次のものが必要 ArcGIS Indoors Pro または ArcGIS Indoors Maps。

関連トピック