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

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

前提条件

重要

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

ルートセットを作成する

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

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

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

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

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

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

これは状態 URL であり、次のセクションでルートセット作成の状態を確認するために使用します。

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

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

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

    https://us.atlas.microsoft.com/routsets/operations/{operationId}?api-version=2022-09-01-preview0&subscription-key={Azure-Maps-Primary-Subscription-key} 
    
    

    注意

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

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

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

routesetId をメモします。これは、すべてのウェイファインディング要求で必要なパラメーターであり、また施設 ID を取得するときに必要なパラメーターです。

施設 ID を取得する

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

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

    https://us.atlas.microsoft.com/routsets/{routesetId}?api-version=2022-09-01-preview0&subscription-key={Azure-Maps-Primary-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=2022-09-01-preview&subscription-key={Azure-Maps-Primary-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. パスと区間の詳細が応答の本文に表示されます。

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

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