GetSegmentData

説明

GetSegmentData サービスは、ポイントまたはセグメント ID のセグメント情報を返します。ポイントを指定すると、最も近いルート セグメントが返されます。セグメント ID を指定すると、指定されたルート セグメントのルート データが返されます。

注: REST サービスからの応答は JSON 形式です。要求の GET URL に無効なクエリ パラメータが含まれていたり、POST のペイロードが無効である場合は、累積的なエラー応答が JSON 配列に返されます。応答 JSON の value ノードは非推奨です。エラーの確認には、errors ノードを使用してください。

HTTP GET URL 形式

HTTP GET 要求には次の形式を使用します。HTTP GET 要求は、ポイントにおけるセグメント データを返す場合と、セグメント ID のセグメント データを返す場合で異なります。

指定されたポイントにおけるセグメントのデータを返す:


HTTP GET /rest/Spatial/erm/databases/dbsource/segments.json?point=x,y,srsName&query_parameters
			

指定されたセグメントのデータを返す:


HTTP GET /rest/Spatial/erm/databases/dbsource/segments/segmentID.json?query_parameters
			

ここで、dbsource は、ルート用のデータを含むデータベースの名前です。Spatial モジュールのルーティング データベース リソース ツールで指定されたデータベース名を使用してください。segmentID は、データを返すセグメント識別子です。

クエリ パラメータ

この操作には、以下のクエリ パラメータが使用できます。

パラメータ タイプ 必須 説明
destinationSrs 文字列 いいえ セグメント データと結果のジオメトリを返す座標系。既定値は使用するデータの座標系です。
distanceUnit 文字列 いいえ 距離を返すときの単位。既定値は m (メートル) です。使用可能な値: m (メートル)、km (キロメートル)、yd (ヤード)、ft (フィート)、mi (マイル)。
時間単位 文字列 いいえ 時間を返すときの単位。既定値は min (分) です。使用可能な値: min (分)、msec (ミリ秒)、s (秒)、h (時間)。
velocityUnit 文字列 いいえ 速度を返すときの単位。既定値は mph (マイル/時) です。使用可能な値: mph (マイル/時) および kph (キロメートル/時)。
angularUnit 文字列 いいえ 回転角度を返すときの単位。既定値は deg (度) です。使用可能な値: deg (度)、rad (ラジアン)、minute (分)、sec (秒)、grad (グラード)。
segmentGeometryStyle 文字列 いいえ

ルートのセグメントを表すジオメトリの形式。デフォルトは None です。セグメント ジオメトリを返す必要がある場合は、このパラメータを指定します。道順を指定するときのオプションは次のとおりです。

None
セグメントのジオメトリ表現を返します。指定されない場合の既定値です。
End
ルートの各セグメントと終点を LineString で返します。
All
各セグメントとすべての形状ポイントを LineString で返します。LineString はマップ上でオーバーレイとして使用できます。
バージョン 文字列 いいえ GetSegmentData REST サービスのバージョンを指定します。有効な値は 1 と 2 です。version のデフォルト値は 1 です。

ポイントを指定するセグメント データを返します。

http://www.pb.com/rest/Spatial/erm/databases/usroutedatabase/segments.json?​point=-77,38,epsg:4326&segmentGeometryStyle=all

応答


[{
	"segmentID": "aa18eb33:1b7bbe",
	"primaryName": "VA-631",
	"primaryNameLanguage": "en",
	"alternateNames": [{
		"alternateName": "Lloyds Rd",
		"language": "en"
	},
	{
		"alternateName": "VA-631",
		"language": "en"
	}],
	"segmentLength": 4.954,
	"segmentLengthUnit": "mi",
	"timeTaken": 5.9333,
	"timeUnit": "min",
	"turnAngle": 0.0,
	"turnAngleUnit": "deg",
	"compassDirection": "",
	"speedOfTravel": 49.9955,
	"speedOfTravelUnit": "mph",
	"roadType": "major road rural",
	"segmentDirection": "bidirectional",
	"startJunctionType": "",
	"endJunctionType": "Other",
	"isRoundabout": false,
	"isTollRoad": false,
	"geometry": {
		"type": "LineString",
		"crs": {
			"type": "name",
			"properties": {
				"name": "epsg:4326"
			}
		},
		"coordinates": [[…]]
	}
},
{
	"segmentID": "46ed0e49:d9a7dc",
	"primaryName": "VA-631",
	"primaryNameLanguage": "en",
	"alternateNameList": [{
		"alternateName": "Lloyds Rd",
		"language": "en"
	}],
	"segmentLength": 1.198,
	"segmentLengtUnit": "mi",
	"timeTaken": 1.433,
	"timeUnit": "min",
	"turnAngle": 0.0,
	"turnAngleUnit": "degree",
	"compassDirection": "",
	"speedOfTravel": 49.9955,
	"speedOfTravelUnit": "mph",
	"roadType": "major road rural",
	"segmentDirection": "bidirectional",
	"startJunctionType": "Other",
	"endJunctionType": "",
	"isRoundabout": false,
	"isTollRoad": false,
	"pointsInSegment": {
		"type": "LineString",
		"crs": {
			"type": "name",
			"properties": {
				"name": "epsg:4326"
			}
		},
		"coordinates": [[…]]
	}
}]			
			

セグメント ID を指定するセグメント データを返します。

http://www.pb.com/rest/Spatial/erm/databases/usroutedatabase/segments/aa18eb33:1b7bbe.json?​distanceUnits=mi

応答


[{
	"segmentID": "aa18eb33:1b7bbe",
	"primaryName": "VA-631",
	"primaryNameLanguage": "en",
	"alternateNames": [{
		"alternateName": "Lloyds Rd",
		"language": "en"
	},
	{
		"alternateName": "VA-631",
		"language": "en"
	}],
	"segmentLength": 4.954,
	"segmentLengthUnit": "mi",
	"timeTaken": 5.9333,
	"timeUnit": "min",
	"turnAngle": 0.0,
	"turnAngleUnit": "deg",
	"compassDirection": "",
	"speedOfTravel": 49.9955,
	"speedOfTravelUnit": "mph",
	"roadType": "major road rural",
	"segmentDirection": "bidirectional",
	"startJunctionType": "",
	"endJunctionType": "Other",
	"isRoundabout": false,
	"isTollRoad": false
}	
			

バージョン固有のエラー応答

リクエストに無効なパラメータ値 (ポイントの欠落など) を入力すると、入力したバージョンによって異なるエラー応答が返ります。バージョンが 1 の場合、値とエラーが返りますが、バージョンが 2 の場合、応答にはエラーのみが含まれます。

  • version1 の場合のリクエスト:
    http://www.pb.com/rest/Spatial/erm/databases/usroutedatabase.json?version=1
  • レスポンス:
    {
       "value": "Point cannot be empty.",
       "errors": [   
    {
          "errorCode": 4139,
          "userMessage": "Point cannot be empty."
                                    }
    ]
    }
  • version2 の場合のリクエスト:
    http://www.pb.com/rest/Spatial/erm/databases/usroutedatabase.json?version=2
  • レスポンス:
    {"errors": [
    {
       "errorCode": 4139,
       "userMessage": "Point cannot be empty."
    }
    ]
    }