CAD フロア プランのマッピングとメタデータの構成

Indoors エクステンションのライセンスが付与された ArcGIS 組織で利用できます。

[フロアプランを Indoors ジオデータベースにインポート (Import Floorplans To Indoors Geodatabase)] ツールは、構成ファイルを入力として使用します。 構成ファイルは、CAD ファイルの特定、CAD フロア プラン データのインポート、インポートされたデータの Indoor フィーチャクラス内のフィーチャと属性への変換を行うためにツールが必要とする情報を含む Microsoft Excel ワークブックです。

テンプレート構成ファイルは、ArcGIS Pro インストールに付属し、<installation location>\Program Files\ArcGIS\Pro\Resources\Indoors\MappingFile\Config_CAD_Indoors_Template.xlsx にあります。 プロジェクトで使用するためのテンプレート構成ファイルのコピーを作成します。

ヒント:

構成スプレッドシートを更新する前に、CAD ドローイングをマップに追加し、CAD レイヤーの名前とコンテンツを理解しておくと役に立つ場合があります。

構成ファイルを設定するには、各シートを次のように完成させます。

フィーチャクラスへの CAD レイヤーのマッピング

[Layer to Feature Class] ワークシートでは、CAD ファイル内の CAD レイヤーを Indoor フィーチャクラスの対応するフィーチャにマッピングします。

注意:

ArcGIS Pro 2.8 以前では、このワークシートは「CAD Layer to FC Mapping」という名前でした。

[フロアプランを Indoors ジオデータベースにインポート (Import Floorplans To Indoors Geodatabase)] ツールは、CAD ポリゴン レイヤーまたは CAD ポリライン レイヤーからポリゴン フィーチャを生成できます。 たとえば、CAD ドローイングがユニット (執務室、廊下、その他のナビゲーション可能なスペース) を定義するポリゴン レイヤーを含んでいる場合は、CAD ポリゴン レイヤーの名前を UNITS 列に設定します。

UNITS 列

または、CAD ドローイングがユニットの境界エッジを一緒に定義する複数のポリライン レイヤーを含んでいる場合は、CAD ポリライン レイヤーの名前を UNIT_LINES 列に入力します。

DOOR エントリを持つ UNIT_LINES 列

次のように [Layer to Feature Class] シートを設定します。

注意:

ゾーンとセクションに関連する列は、Indoors ジオデータベース ([Indoors データベースの作成 (Create Indoors Database)] ツールで作成) のユーザーにのみ適用されます。 Indoors ジオデータベースを使用している場合は、[フロアプランの Indoors ジオデータベースへのインポート (Import Floorplans To Indoors Geodatabase)] ツールを使用して、これらの列を設定することができます。

  1. FACILITIES 列に、施設の形状と範囲を定義する CAD ポリゴン レイヤーをリストします。

    また、CAD レイヤーが施設の範囲とエッジを定義するポリラインを含んでいる場合は、FACILITY_LINES 列にリストします。

    注意:

    構成の後半で、レベル ポリゴンをマージして、施設の形状と範囲を定義することができます。 このオプションを選択した場合でも、FACILITIES または FACILITY_LINES のいずれかの列を設定する必要があります。 マージされたレベル ポリゴンを使用して施設の形状と範囲を定義すると、この列は無視されます。

  2. LEVELS 列に、各レベルの範囲を定義する CAD ポリライン レイヤーをリストします。

    これには、グラウンド フロア、地下階、中二階、建物内で同じ Z 値を持つその他のスペースなどが含まれます。 また、CAD レイヤーがポリラインを含んでいる場合は、LEVEL_LINES 列にリストします。

  3. UNITS 列に、個々のユニット (部屋、廊下、その他のナビゲーション可能なスペースなど) を定義する CAD ポリゴン レイヤーをリストします。

    また、個々のユニット スペース (内壁や外壁など) が CAD ポリライン レイヤーで定義されている場合は、UNIT_LINES 列にリストします。

  4. DETAILS 列に、インポートする内部の詳細 (壁、扉、窓など) を定義する CAD ポリライン レイヤーをリストします。
    注意:

    インポートする内部の詳細を選択するときは屋内 GIS の使い方を検討してください。 たとえば、HVAC または電気設備は、施設管理で使用する場合は重要ですが、オフィス ホテリングの管理の場合は重要ではありません。

  5. 必要に応じて、ユニット ポリゴンの生成時に閉じる必要があるドア開口部を定義します。

    ここに示すような開閉を表す円弧を使用して開いた状態のドアが描画された CAD ポリライン レイヤーを UNIT_LINES 列にリストすると、よりシンプルなポリゴンが生成されるため、これをお勧めします。

    さまざまな色で定義された開き戸付きのユニット境界

    1. OPENINGS 列に、出力ユニット ポリゴンでドアを表し閉じる必要がある CAD ポリライン レイヤーをリストします。
    2. [Level Properties] シートの CLOSE_DOORS 列に Y を設定します。
  6. ファイルを保存します。

CAD アノテーションの属性フィールドへのマッピング

CAD データには、一意識別子、一般名、その他の重要な情報のアノテーションが含まれる場合もあります。 [フロアプランを Indoors ジオデータベースにインポート (Import Floorplans To Indoors Geodatabase)] ツールは、CAD アンカー ポイントと [Annotation to Field] シートの構成に基づき、この情報を属性データとしてインポートされたフィーチャに追加します。 ツールは、CAD アノテーションのカスタム属性へのマッピング、区切り文字で区切られたアノテーション値の解析、ブロック アノテーションの抽出などに対応しています。 Indoors モデルに準拠している場合、CAD アノテーションは、Units、Levels、Facilities、Sections、Zones の各フィーチャクラスにマッピングできます。

注意:

[Annotation to Field] シートが ArcGIS Pro 2.9 に追加されたので、CAD アノテーションをカスタム属性フィールドにインポートできます。 以前のバージョンの構成ファイルにはこのシートが含まれていなかったので、CAD アノテーション レイヤーは [CAD Layer to FC Mapping] に直接格納されました。 どちらのバージョンの構成ファイルも、ArcGIS Pro 2.9 で使用できます。

[Annotation to Field] シートには 3 つの列があります。

  • SOURCE_ANNOTATION- アノテーションを含む CAD レイヤーを指定します。
  • TARGET_FEATURE_CLASS- アノテーションを格納するフィーチャクラスを指定します。
  • TARGET_FIELD_NAME- アノテーションを格納するターゲット フィーチャクラスの属性フィールドを指定します。

ワークシートの一部の行は、Indoors ターゲット フィーチャクラスおよび属性フィールドを使用して、部分的に準備が済んでいます。 たとえば、行 2 は、Units フィーチャクラスの UNIT_ID 属性フィールドをターゲットにしています。 SOURCE_ANNOTATION 列に入力して、CAD アノテーション レイヤーがある行を完成できます。 属性フィールドに属性を追加する必要がない場合は、この列を空白のままにするか、その行を削除できます。 CAD アノテーションを追加したい場合は、[Annotation to Field] シートの追加行に、情報を入力します。

以下は、完成した [Annotation to Field] シートの例です。

[Annotation to Field] シートの完成例

この例では、[Annotation to Field] シートに対して以下の更新が行われました。

  • SOURCE_ANNOTATION 列は、適切な CAD アノテーションがないので、行 2 と行 3 を空白のままにします。 [フロアプランを Indoors ジオデータベースにインポート (Import Floorplans To Indoors Geodatabase)] ツールは、Units フィーチャに対して一意の ID と名前を自動的に生成します。
  • 行 4 の SOURCE_ANNOTATION 列は、部屋の用途を説明した CAD アノテーションを含む「A-AREA-TYPE」という CAD レイヤーに設定されています。
  • Zones および Sections に関連する行は使用されていなかったので、削除しました。
  • A-ADMIN-NAME という名前の CAD レイヤーから Levels フィーチャクラスのカスタム ADMIN_NAME 属性フィールドにアノテーションをマッピングするための行が追加されました。 カスタム ADMIN_NAME フィールドは、フロアプランを Indoors ジオデータベースにインポート (Import Floorplans To Indoors Geodatabase) ツールの実行前に、Levels フィーチャクラスに存在している必要があります。

ソース アノテーションの構文

SOURCE_ANNOTATION 列では、区切り文字で区切られた CAD アノテーションやブロック アノテーションを解析して一部を抽出する特殊構文を使用できます。 CAD アノテーションが文字または改行によって区切られた長い文字列で構成される場合は、SOURCE_ANNOTATION 列で次の構文を使用して特定の値を抽出できます。

<レイヤー名>|<位置>|<区切り文字>

例 1 - A-ANNO-LYR という CAD アノテーション レイヤーには、次のようにピリオドで区切られた文字列があります。

CAMPUS.A.A-210

文字列の 3 番目の部分「A-210」を返すには、SOURCE_ANNOTATION 列に以下を入力します。

A-ANNO-LYR|3|.

例 2 - CAD アノテーション レイヤーには、次のように改行が入った 2 つの部分から成る文字列があります。

CAMPUS

H360

文字列の 2 番目の部分 (「H360」) を返すには、次のように「\P」を区切り文字として使用します。

A-ANNO-LYR|2|\P

CAD データにブロック アノテーションが含まれている場合は、SOURCE_ANNOTATION 列で次の構文を使用して特定の値を抽出できます。

<レイヤー名>|1|{<FIELD_NAME>}

この構文で、<FIELD_NAME> はアノテーション内で参照しているカスタム フィールドを示します。 たとえば、OFFICE_ID というカスタム フィールドを持つブロック アノテーションを含む A-ANNO-LYR という CAD レイヤーから一意の識別子を抽出するには、次の構文を使用します。

A-ANNO-LYR|1|{OFFICE_ID}

[Annotation to Field] シートへの入力

[Annotation to Field] シートに、次のように入力します。

  1. L1w205」や「A-101」などの一意の部屋識別子を含む CAD レイヤーの名前を、行 2 の SOURCE_ANNOTATION 列に入力します。 適切な CAD アノテーションを利用できない場合、この列を空白のままにすることができます。[フロアプランを Indoors ジオデータベースにインポート (Import Floorplans To Indoors Geodatabase)] ツールが UNIT_ID の一意の値を自動的に生成します。

    フロア プランの更新や、空間プランニングやワークスペースの予約に使用するフィールドの予約に対応するため、各ユニット フィーチャに、一意の値を含む CAD アノテーション レイヤーを指定する必要があります。

    注意:

    [フロアプランを Indoors ジオデータベースにインポート (Import Floorplans To Indoors Geodatabase)] ツールは、CAD アノテーションのアンカー ポイントを使用して、関連するユニット フィーチャを特定します。 アノテーションをマッピングする CAD レイヤーを指定する前に、CAD アノテーションを調べてアンカー ポイントが関連する空間内に配置されていることを確認します。

  2. 行 3 の SOURCE_ANNOTATION 列に「Davies Hall」や「Server Room #4」など、一般的な部屋名を含む CAD レイヤーの名前を入力します。 適切な CAD アノテーションを利用できない場合、この列を空白のままにすることができます。ツールは UNIT_NAME 値を自動的に生成します。
  3. 行 4 の SOURCE_ANNOTATION 列に、「Office」、「Stairway」、「Conference Room」など、用途を説明する文字列を含む CAD アノテーション レイヤーの名前を入力します。 適切な CAD アノテーションを利用できない場合、この列を空白のままにすることができます。ツールは、Units の USE_TYPE 属性に Null 値を割り当てます。

    USE_TYPE 属性は Units には必要ありませんが、この属性を追加すると屋内のマップおよびシーンに用途別のユニットをシンボル表示することができます。

  4. 屋内 GIS の一部に Zones および Sections フィーチャクラスがある場合は、それらを含むよう必要に応じて行 5 ~ 8 の SOURCE_ANNOTATION 列に値を入力します。

    適切な CAD アノテーションを利用できない場合、この列を空白のままにすることができます。ツールは、Zones および Sections フィーチャの ID と名前の値を生成します。 Zones フィーチャと Sections フィーチャについて一意の値を持つ CAD アノテーションを指定すると、ID フィールド値と、ArcGIS Pro で作成するカスタム フィールドが正しく更新されます。

    注意:

    Zones および Sections フィーチャクラスは、[Indoors データベースの作成 (Create Indoors Database)] ツールで作成されます。 屋内 GIS に Zones および Sections フィーチャクラスが含まれていない場合は、それらの行を削除するか、空のままにしてください。

  5. 必要に応じて追加の行を作成して値を入力し、他の CAD アノテーションを Indoors 属性にマッピングします。
    1. SOURCE_ANNOTATION 列に、アノテーションを含む CAD レイヤーの名前を入力します。
    2. TARGET_FEATURE_CLASS 列に、アノテーションを格納する Indoors フィーチャクラスの名前を入力します。
      注意:

      Indoors モデルに準拠している場合、CAD アノテーションは、Units、Levels、Facilities、Sections、Zones の各フィーチャクラスにマッピングできます。

    3. TARGET_FIELD_NAME 列に、アノテーションを格納する属性フィールドの名前を入力します。

      属性フィールドはターゲット フィーチャクラスにすでに存在している必要があります。 Text、Short、Long、Float、Double の各フィールド データ タイプを使用できます。

      注意:

      ターゲット フィールドが、構成ファイルの他の場所の情報に基づいて入力される場合、そのフィールドについては、[Annotation to Field] のマッピングは無視されます。

  6. ファイルを保存します。

施設のプロパティの構成

[Facility Properties] シートには、インポートする 1 つまたは複数の施設に関するメタデータ (各施設の名前や高さなど) が保存されます。 このメタデータは、インポート プロセス中に Indoor データセットのフィーチャと属性に適用されます。

*_ID 列は、Indoor データセットにインポートされたフィーチャごとに一意の ID 文字列を生成するために使用されます。 各フィーチャの一意識別子には、関連するフィーチャの ID が含まれているので、フィーチャを関連する位置にリンクできます。 たとえば、レベル ID には、そのレベルがある施設の施設 ID が含まれます。

注意:

[フロアプランを Indoors ジオデータベースにインポート (Import Floorplans To Indoors Geodatabase)] ツールを実行すると、一意の ID 文字列内のキー値を分割するために使用される区切り文字を選択できます。

たとえば、ABCXYZ 大学にメイン キャンパスとブランチ キャンパスがあるシナリオを検討します。 大学の施設は、有名な科学者の名前が付けられています。 CAD データで、部屋番号の一部にハイフンが含まれているので、区切り文字にピリオド (.) を使用することにします。 このシナリオの *_ID 値は次のようになります。

列の名前値の例

SITE_ID

ABCXYZ.MAIN

ABCXYZ.BRANCH

FACILITY_ID

ABCXYZ.MAIN.GALILEO

ABCXYZ.MAIN.CURIE

ABCXYZ.BRANCH.FEYNMAN

LEVEL_ID

ABCXYZ.MAIN.CURIE.1

ABCXYZ.MAIN.CURIE.2

ABCXYZ.MAIN.CURIE.3

注意:

フロア対応マップとシーンをサポートするために、選択した [一意の ID の区切り文字] で分割され正しい順番で、すべての関連するフィーチャの ID の前に *_ID 列の値が付加されます。

次のように [Facility Properties] シートを設定します。

注意:

このシートの FACILITY_NUMBERDESCRIPTION、その他の列は、Indoors ジオデータベース ([Indoors データベースの作成 (Create Indoors Database)] ツールで作成) のユーザーにのみ適用されます。 Indoors ジオデータベースを使用している場合は、[フロアプランの Indoors ジオデータベースへのインポート (Import Floorplans To Indoors Geodatabase)] ツールを使用して、これらの列を設定することができます。

  1. SITE_ID 列に、各サイトの一意識別子をリストします。

    必要に応じて、使用可能な一意の ID の区切り文字のいずれかの前に付加して、追加情報 (組織や国など) を含めます。

  2. 必要に応じて、SITE_NAME 列に、各サイトの一般的な名前をリストします。
  3. 必要に応じてコピーおよび貼り付けて、そのサイトの施設ごとに 1 つの行で、各サイトに追加の行を作成します。
  4. SITE_ID 列の値をコピーして、FACILITY_ID 列に貼り付けます。
  5. FACILITY_ID 列に、区切り文字と各施設の一意の ID の文字列を追加します。
    注意:

    必ずすべての *_ID 列で同じ区切り文字を使用するようにしてください。

  6. NAME 列に、マップ ラベルとして使用する一般的な施設名をリストします。

    この列の値は 100 文字以内にする必要があります。

  7. 必要に応じて、NAME_LONG 列に、完全な施設名をリストします。

    この列の値は最大は 255 文字です。

  8. Indoors ジオデータベースを使用している場合、ELEVATION_RELATIVE 列に、テレイン サーフェスを基準とする施設の最下部の標高をリストします。

    ほとんどの場合、施設の最下部の相対標高は 0 です。

    注意:

    Indoor データセットを使用する場合、このフィールドをスキップできます。

  9. HEIGHT_RELATIVE 列に、施設があるテレイン サーフェスを基準とする各施設の高さをリストします。
    注意:

    正確な高さと Z 値は、フロア対応マップでの 3D ビジュアライゼーションといくつかの機能 (フロア間のルート検索など) に重要です。

  10. MERGE_LEVELS 列に、Y または N を入力して、[フロアプランの Indoors ジオデータベースへのインポート (Import Floorplans To Indoors Geodatabase)] ツールがその施設のポリゴン フィーチャを生成する方法を構成します。
    • Y - 施設のポリゴン フィーチャは施設のレベル ポリゴンを結合して生成されます。
    • N - 施設のポリゴン フィーチャは、[Layer to Feature Class] シートの FACILITIES 列または FACILITY_LINES 列にリストされている CAD レイヤーから生成されます。
  11. ファイルを保存します。

レベル プロパティの構成

[Level Properties] シートには、インポートするフロアのメタデータと構成オプションが格納されます。

次のように [Level Properties] シートを設定します。

注意:

このシートの DESCRIPTIONACCESS_TYPE、その他の列は、Indoors ジオデータベース ([Indoors データベースの作成 (Create Indoors Database)] ツールで作成) のユーザーにのみ適用されます。 Indoors ジオデータベースを使用している場合は、[フロアプランの Indoors ジオデータベースへのインポート (Import Floorplans To Indoors Geodatabase)] ツールを使用して、これらの列を設定することができます。

  1. [Facility Properties] シートの FACILITY_ID 列の値をコピーして、[Level Properties] シートの FACILITY_ID 列に貼り付けます。
  2. 必要に応じてコピーおよび貼り付けて、施設ごとに追加の行を作成します。 その施設のレベルごとに 1 つの行にする必要があります。
  3. FACILITY_ID 列の値をコピーして、LEVEL_ID 列に貼り付けます。
  4. LEVEL_ID 列に、区切り文字と各レベルの一意の ID の文字列を追加します。

    通常、これはレベル番号です。

    注意:

    必ずすべての *_ID 列で同じ区切り文字を使用するようにしてください。

  5. NAME 列に、一般的なフロア名をリストします。

    ツールはこれらの値を使用して、Units および Details フィーチャクラスの LEVEL_NAME 属性を設定します。

  6. NAME_SHORT 列に、フロアのショート ネームをリストします。

    この列の値は 4 文字以内にする必要があります。 これらの値は、ArcGIS Pro またはモバイルおよび Web アプリ版 ArcGIS Indoorsフロア対応マップおよびシーンを操作するときに、フロア フィルターで使用されます。

  7. LEVEL_NUMBER 列に、各フロアの番号を示す整数 (施設のエレベーターに表示されるなど) をリストします。
    ヒント:

    施設によってはフロア番号がない場合があります。 たとえば、13 という数字は、多くの人が縁起の悪い番号と見なしているため、高い建物によってはこの数字のフロアがない場合があります。

  8. VERTICAL_ORDER 列に、同じ施設内にある他のレベルを基準とした各フロアの垂直方向の順番を示す整数をリストします。

    各施設のグラウンド フロアにゼロ (0)、グラウンド フロアよりも上のレベルに正の連続した整数、グラウンド フロアよりも下のレベルに負の連続した整数を使用します。

  9. ELEVATION_RELATIVE 列に、地表を基準とした各レベルの最下部の高度をリストします。

    ほとんどの場合、施設のグラウンド フロアの相対高度は 0 メートル、地上のフロアは正の相対高度値、地下のフロアは負の値を持ちます。

    注意:

    Indoor データセットを使用する場合、このフィールドをスキップできます。

  10. HEIGHT_RELATIVE 列に、レベルの最下部を基準とする各レベルの最上部の高さをリストします。
    ヒント:

    ほとんどの施設の HEIGHT_RELATIVE 値を検査する方法の 1 つは、HEIGHT_RELATIVE 列にある施設の地上レベルの値を合計し、その合計値を施設の HEIGHT_RELATIVE 値と比較することです。

  11. CLOSE_DOORS 列に、Y または N を入力して、CAD ポリラインからユニット フィーチャを生成するときに [フロアプランの Indoors ジオデータベースへのインポート (Import Floorplans To Indoors Geodatabase)] ツールがレベルのドアを閉じたドアとして処理するかどうかを構成します。
    • Y - ドアは、ユニット フィーチャの生成時に閉じたドアとして処理されます。
    • N - ドアは、閉じたドアとして処理されません。
    注意:

    CLOSE_DOORS 列は、[Layer to Feature Class] シートの UNIT_LINES 列と OPENINGS 列の両方が入力されているときにのみ有効です。

  12. PROCESS 列に、Y または N を入力して、[フロアプランの Indoors ジオデータベースへのインポート (Import Floorplans To Indoors Geodatabase)] ツールが処理するレベルを構成します。 この列を使用して、テストまたは更新の目的で個々のレベルを処理できます。
    • Y - レベルはツールにより処理されます。
    • N - レベルは処理されません。
  13. ファイルを保存します。

ソース ファイルの構成

[Source Files] シートには CAD ドローイングへのファイル パスが保存され、各ドローイングは [Level Properties] シートで定義されたレベルと関連付けられます。 1 つのレベルの CAD データが、相互にオーバーレイする複数のドローイングに置かれている場合、各ドローイング ファイルのソース パスを定義して、それらを 1 つのレベルに関連付けられます。

注意:

レベルごとに複数の CAD ドローイングからデータをインポートするための [Source Files] シートが ArcGIS Pro 2.7 で追加されました。 ArcGIS Pro 2.7 以前は、構成ファイルには [Source Files] が含まれておらず、CAD ファイル ソース パスは [Level Properties] シートに直接格納されていました。 ArcGIS Pro 2.9 では両方の構成ファイルがサポートされています。

次のように [Source Files] シートを設定します。

  1. [Level Properties] シートの LEVEL_ID 列の値をコピーして、[Source Files] シートの LEVEL_ID 列に貼り付けます。
  2. 必要に応じてコピーおよび貼り付けて、レベルごとに追加の行を作成します。

    その施設のデータを含むソース CAD ファイルごとに 1 つの行にする必要があります。

    注意:

    あるレベルのすべての CAD レイヤーが 1 つの CAD ドローイングにある場合、そのレベルの追加の行をコピーおよびペーストする必要はありません。

  3. SOURCE_PATH 列に、各ソース CAD ファイルへの完全なネットワークまたはローカル ファイル パスをリストします。
  4. ファイルを保存します。

構成スプレッドシートを完了したら、Indoor データセットに CAD フロア プランをインポートできます。

関連トピック