コンテンツにスキップ

地点ポリゴン内外一括判定

/polygon_inclusion [POST]

基本情報

概要

指定された地点ポリゴン(到達圏など)と複数の地点リストを受け取り、各地点がポリゴンの内側か外側かを判定します。
境界線上にある点は「内側」として判定されます。

URL

https://{HOST}/{CID}/v1/polygon_inclusion

※APIマーケットでは提供しておりません

出力形式

  • json

対応言語

  • ja

出力順

  • 判定対象の地点リスト順

パラメータ

パラメータ名 必須 概要 型名 デフォルト値 上下限/選択値 備考
polygon_format 地点ポリゴンデータの形式 文字列 reachable_point reachable_point:到達圏探索APIのレスポンス(ReachablePoint オブジェクト)で指定
coord:緯度経度で指定
リクエストボディで指定する地点ポリゴン頂点データの形式を指定します

リクエストボディ

パラメータ名 必須 概要 型名 上下限/選択値 備考
points ✔ 判定対象の地点リスト 配列 最小地点数:1
最大地点数:100
地点ポリゴンの内外を判定したい地点のリストです。
各要素の形式は Point オブジェクトを参照してください。
polygon ✔ 地点ポリゴンの頂点リスト 配列 最小地点数:3
最大地点数:90
地点ポリゴンを構成する頂点のリストです。
各要素の形式は、クエリパラメータ polygon_format の指定により異なります。

Pointオブジェクト

名称 キー名 型名 必須 説明
地点名称 name 文字列 任意の地点名
緯度 lat 数値 ✔
経度 lon 数値 ✔

ReachablePointオブジェクト (polygon_format=reachable_point指定時)

名称 キー名 型名 必須 説明
所要時間 time 数値 その地点へ到達するまでの時間
緯度経度 coord Coordinateオブジェクト ✔ 地点の緯度経度

 

ReachablePointオブジェクトにつきましては、到達圏探索APIのレスポンス「到達圏結果情報(items)」も併せてご覧ください。
・到達圏探索(車)APIドキュメント
・到達圏探索(自転車)APIドキュメント
・到達圏探索(徒歩)APIドキュメント
・到達圏探索(バイク)APIドキュメント
・到達圏探索(トータルナビ)APIドキュメント

Coordinateオブジェクト (polygon_format=coord指定時)

名称 キー名 型名 必須 説明
緯度 lat 数値 ✔
経度 lon 数値 ✔

リクエスト例 (表参道駅から車で5分到達圏のポリゴンにおける、地点A・Bの内外判定)

polygon_format=reachable_point 指定例

・パラメータ

/polygon_inclusion?polygon_format=reachable_point

・リクエストボディ

{
  "points": [
    {
      "name": "地点A", "lat": 35.674669, "lon": 139.717152
    },
    {
      "name": "地点B", "lat": 35.675431, "lon": 139.699362
    }
  ],
  "polygon": [
    {
      "time": 5,
      "coord": {"lat": 35.662369, "lon": 139.712069}
    },
    {
      "time": 5,
      "coord": {"lat": 35.662114, "lon": 139.711096}
    },
    {
      "time": 5,
      "coord": {"lat": 35.663091, "lon": 139.710737}
    },
    {
      ・・・
    }
  ]
}

polygon_format=coord 指定例

・パラメータ

/polygon_inclusion?polygon_format=coord

・リクエストボディ

{
  "points": [
    {
      "name": "地点A", "lat": 35.674669, "lon": 139.717152
    },
    {
      "name": "地点B", "lat": 35.675431, "lon": 139.699362
    }
  ],
  "polygon": [
    {
      "lat": 35.662369, "lon": 139.712069
    },
    {
      "lat": 35.662114, "lon": 139.711096
    },
    {
      "lat": 35.663091, "lon": 139.710737
    },
    {
      ・・・
    }
  ]
}

レスポンス

名称 レスポンス名 型名 配列 説明
内外判定結果情報 items InclusionResultオブジェクト 〇 各地点の判定結果

InclusionResultオブジェクト

名称 レスポンス名 型名 配列 説明
対象地点情報 coord Pointオブジェクト リクエストされた地点情報(name, lat, lon)をそのまま返却します
内外判定結果 included 真偽値 地点ポリゴンに含まれるかどうか
true:内側(または境界上)
false:外側

レスポンス例

{
  "items": [
    {
      "coord": {
        "name": "地点A",
        "lat": 35.674669,
        "lon": 139.717152
      },
      "included": true
    },
    {
      "coord": {
        "name": "地点B",
        "lat": 35.675431,
        "lon": 139.699362
      },
      "included": false
    }
  ]
}

エラー情報

エラーハンドリングについて

エラーメッセージは追加/変更/削除されることがあります。
エラーハンドリングされる場合はHTTPステータスコードをもとにご対応ください。
共通エラーについてはこちらをご参照ください。

HTTPステータス エラーメッセージ 発生理由
405 "This http method is invalid : GET"(等) 許可されていないHTTPメソッドでアクセスされた場合に発生します。当APIはPOSTのみ利用可能です。
400 "request body is required" リクエストボディが指定されていない場合に発生します。
400 "invalid body" リクエストボディのデコードに失敗した場合に発生します。
400 "Invalid JSON string" リクエストボディがJSONとして解析できない場合に発生します。
400 "request body must be JSON object or JSON string" リクエストボディがJSON形式でない場合に発生します。
400 parameter error: polygon_format: "unallowed value {value}" polygon_format に reachable_point, coord 以外の不正な値を指定した場合に発生します。
400 parameter error: points: "required field" 必須パラメータである points が指定されていない場合に発生します。
400 parameter error: points: "must be of list type" points が配列でない場合に発生します。
400 parameter error: points: "min length is 1" points が空の配列の場合に発生します。
400 parameter error: points: "max length is 100" points に101地点以上を指定した場合に発生します。
400 parameter error: points: "{0: [{'lat': ['required field']}]}" (等、要素番号ごとの内容) points の要素に lat, lon が指定されていない場合に発生します。
400 parameter error: points: "{0: [{'lat': ['must be of float type']}]}" (等、要素番号ごとの内容) points の要素の lat, lon が数値でない場合に発生します。
400 parameter error: points: "{0: [{'name': ['must be of string type']}]}" (等、要素番号ごとの内容) points の要素の name が文字列でない場合に発生します。
400 parameter error: polygon: "required field" 必須パラメータである polygon が指定されていない場合に発生します。
400 parameter error: polygon: "must be of list type" polygon が配列でない場合に発生します。
400 parameter error: polygon: "min length is 3" polygon に2地点以下を指定した場合に発生します。
400 parameter error: polygon: "max length is 90" polygon に91地点以上を指定した場合に発生します。
400 "polygon_format=reachable_point requires polygon elements with "coord":{"lat":..,"lon":..}" polygon_format=reachable_point を指定しているが、polygon の要素が ReachablePointオブジェクトの形式でない場合に発生します。
400 "polygon_format=coord requires polygon elements with "lat" and "lon"" polygon_format=coord を指定しているが、polygon の要素が Coordinateオブジェクトの形式でない場合に発生します。