等時線 API のベスト プラクティス

平滑化と忠実度

polygon_fidelity パラメータと enable_smoothing パラメータを使用して、出力ポリゴンの外観と精度をカスタマイズできます。これらのオプションは独立していますが、連携して最終的な形状を決定します。

  • polygon_fidelity: 解像度。到達可能エリアの計算に使用される基盤となるグリッド セル(S2 セル)のサイズを制御します。
    • LOW: 大きなグリッド セルを使用します。ギャップのない広いエリアをカバーするのに最適で、一般的な形状になります。
    • MEDIUM: バランスの取れた精度。
    • HIGH: 小さなグリッド セルを使用します。道路網にぴったりとフィットしますが、道路網がまばらな場所では空のエリアや「穴」が生じる可能性があります。
    • デフォルト: 指定しない場合、サービスはリクエストされた移動時間に基づいて忠実度を動的に選択します。
  • enable_smoothing: 美しさ。忠実度で定義されたグリッド セルの鋭いエッジを丸めるかどうかを制御します。
    • false(未加工): 正確な幾何学的計算を返します。エッジはギザギザまたは階段状になり、グリッド セルを反映します。厳密なポイントインポリゴン テストなど、分析の精度を高めるのに最適です。
    • true (平滑化): 後処理アルゴリズムを適用して角を丸めます。地図に視覚的に表示するのに最適です。

相互作用: 忠実度は、平滑化 アルゴリズムが作用するベースラインの詳細を設定します。

  • 高忠実度 + 平滑化: 道路の終点に沿った、詳細で自然な形状になります。
  • 低忠実度 + 平滑化: 広範囲の一般的な「ブロブ」形状になります。

ペイロード サイズとレンダリング

大きなアイソクロンには数千の座標が含まれることがあり、ペイロードは 300 ~ 500 キロバイトになることがあります。

  • 帯域幅: 最大期間のリクエストでは、JSON レスポンスのサイズが重要になります。
  • レンダリング: 非常に詳細なポリゴンをレンダリングすると、パフォーマンスに影響します。 表示する頂点数を減らすには、enable_smoothing パラメータまたはクライアントサイドの簡略化ライブラリの使用を検討してください。

エラー処理

5xx サーバーエラーに対して、指数バックオフを使用した再試行ロジックを実装します。ただし、パラメータを変更せずに 4xx クライアント エラーを再試行しないでください 。

  • INVALID_ARGUMENT (400): 期間が正の値であり、選択したモードの制限内であることを確認します。DRIVE と TWO_WHEELER の場合は最大 3,600 秒、他のモードの場合は 7,200 秒です。
  • NOT_FOUND (404): 起点ポイントが道路に自動整列できませんでした。座標を既知の道路に近づけるか、リージョンがサポートされていることを確認してください。