フロア ガイド ウェイファインディング サービス (プレビュー)

Azure Maps Creator のウェイファインディング サービスを使用すると、フロア ガイド内の任意の場所に移動できます。 このサービスでは、フロア間を移動するために階段とエレベーターが利用され、物理的な障害物を避けて移動するのに役立つガイダンスが提供されます。 この記事では、サンプルのフロア ガイドで出発点から目的地までのパスを生成する方法について説明します。

前提条件

重要

  • この記事では、地理的な URL us.atlas.microsoft.comを使用します。 Creator サービスが米国内で作成されていない場合は、別の地理的 URL を使用する必要があります。 詳細については、「Creator サービスにアクセスする」を参照してください。
  • この記事の URL の例では、次の操作を行う必要があります。
    • {Your-Azure-Maps-Subscription-key} を実際の Azure Maps サブスクリプション キーに置き換えます。
    • {datasetId} を実際の datasetId に置き換える。 詳細については、「Creator を使用して屋内マップを作成する」というチュートリアルの「データセットの作成状態を確認する」セクションを参照してください。

ルートセットを作成する

ルートセットは、ウェイファインディング サービスで使用されるフロア ガイド データのコレクションです。

ルートセットはデータセットから作成されます。 ルートセットからデータセットから独立しています。つまり、データセットが削除されても、ルートセットは引き続き存在します。

ルートセットを作成した後、ウェイファインディング API を使用して、出発点から施設内の目的地までのパスを取得できます。

ルートセットを作成するには:

  1. 次の HTTP POST 要求を実行します。

    https://us.atlas.microsoft.com/routesets?api-version=2023-03-01-preview&datasetID={datasetId}&subscription-key={Your-Azure-Maps-Subscription-key} 
    
    
  2. 応答ヘッダーから Operation-Location キーの値をコピーします。

Operation-Location キーは、次のセクションに示されているように、ルートセット作成の状態を確認するために使用される状態 URL です。

ルートセット作成の状態を確認し、routesetId を取得する

ルートセット作成処理の状態を確認し、routesetId を取得するには:

  1. 次の HTTP GET 要求を実行します。

    https://us.atlas.microsoft.com/routesets/operations/{operationId}?api-version=2023-03-01-preview&subscription-key={Your-Azure-Maps-Subscription-key} 
    
    

    注意

    新しいルートセットを作成するとき、応答ヘッダーの Operation-Location キーから operationId を取得します。

  2. 応答ヘッダーから Resource-Location キーの値をコピーします。 これはリソースの場所の URL であり、routesetId が含まれています。

    https://us.atlas.microsoft.com/routesets/**675ce646-f405-03be-302e-0d22bcfe17e8**?api-version=2023-03-01-preview

routesetId を書き留めておきます。 これは、すべてのウェイファインディング要求で、施設 ID を取得するときに必要になります。

施設 ID を取得する

ルートセットのプロパティである facilityId は、ウェイファインディング パスを検索するときに必要なパラメーターです。 ルートセットに対してクエリを実行して facilityId を取得します。

  1. 次の HTTP GET 要求を実行します。

    https://us.atlas.microsoft.com/routesets/{routesetId}?api-version=2023-03-01-preview&subscription-key={Your-Azure-Maps-Subscription-key} 
    
    
  2. facilityIdfacilityDetails オブジェクトのプロパティです。これは、ルートセット要求の応答本文で見つけることができます。これは、次の例では FCL43 です。

{
    "routeSetId": "675ce646-f405-03be-302e-0d22bcfe17e8",
    "dataSetId": "eec3825c-620f-13e1-b469-85d2767c8a41",
    "created": "10/10/2022 6:58:32 PM +00:00",
    "facilityDetails": [
        {
            "facilityId": "FCL43",
            "levelOrdinals": [
                0,
                1
            ]
        }
    ],
    "creationMode": "Wall",
    "ontology": "facility-2.0"
}

ウェイファインディング パスを取得する

ウェイファインディング API を使用して、前のセクションで作成したルートセットからパスを生成します。 ウェイファインディング API には、フロア レベルの序数に加えて、フロア ガイド内の始点と終点を含むクエリが必要です。 Creator のウェイファインディングについて詳しくは、概念に関する記事のウェイファインディングに関する項目を参照してください。

ウェイファインディング クエリを作成するには:

  1. 次の HTTP GET 要求を実行します ({routesetId} は、ルートセット作成状態の確認に関するセクションで所得した routesetId に置き換え、{facilityId} は、「施設 ID を取得する」セクションで取得した facilityId に置き換えてください)。

    https://us.atlas.microsoft.com/wayfinding/path?api-version=2023-03-01-preview&subscription-key={Your-Azure-Maps-Subscription-key}&routesetid={routeset-ID}&facilityid={facility-ID}&fromPoint={lat,lon}&fromLevel={from-level}&toPoint={lat,lon}&toLevel={to-level}&minWidth={minimun-width}
    

    ヒント

    AvoidFeatures パラメーターを使用すると、ウェイファインディング サービスがパスを決定するときに回避する対象 (エレベーターや階段など) を指定できます。

  2. パスと区間の詳細が応答の本文に表示されます。

概要には、経路全体の推定移動時間が秒単位で表示されます。 さらに、経路の各セクションの推定時間が、各区間の開始部分に表示されます。

ウェイファインディング サービスでは、特定の経由地点を通るパスが計算されます。 各地点は、緯度と経度の詳細と共に表示されます。