ホームページ  >  記事  >  Java  >  Java コードを通じて Amap API を呼び出してパス距離計算を実装する方法

Java コードを通じて Amap API を呼び出してパス距離計算を実装する方法

PHPz
PHPzオリジナル
2023-07-29 13:17:122393ブラウズ

Java コードを通じて Amap API を呼び出して経路距離計算を実装する方法

リアルタイムの交通状況とナビゲーションに対する人々の需要が高まるにつれて、地図によるルート計画の重要性がますます高まっています。中国の大手地図サービスプロバイダーとして、Amap のルート計画機能は大多数の開発者に好まれています。この記事では、Java コードを通じて Amap API を呼び出してパス距離計算を実装する方法を紹介します。

Amap API は、ジオコーディング、リバース ジオコーディング、ルート計画、その他の機能を含む一連の豊富なインターフェイスを提供します。この記事では、Amap API を使用してパスの距離を計算する方法に焦点を当てます。

始める前に、いくつかの必要な作業を準備する必要があります:

  1. Amap 開発者アカウントを取得し、アプリケーションを作成します。
  2. 権限確認のためにAmap APIのキーを取得します。
  3. Eclipse や IntelliJ IDEA など、対応する Java 開発ツールをインポートします。

準備作業が完了したら、Java コードの記述を開始できます。まず、Java プロジェクトを作成し、Amap API jar パッケージをプロジェクトに導入する必要があります。

次に、パス距離計算用のツール クラスとして PathDistanceCalculator などのクラスを作成します。このツール クラスは、始点と終点の緯度と経度の座標を受け取り、Amap API を通じて 2 点間の経路距離を計算し、結果を返すメソッドを提供します。

サンプル コードは次のとおりです。

import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;

import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class PathDistanceCalculator {
    private static final String AMAP_API_KEY = "your_amap_key";

    public static double calculateDistance(double startLng, double startLat, double endLng, double endLat) {
        String apiUrl = "https://restapi.amap.com/v3/distance";
        String url = String.format("%s?key=%s&origins=%f,%f&destination=%f,%f", apiUrl, AMAP_API_KEY, startLng, startLat, endLng, endLat);

        try (CloseableHttpClient httpClient = HttpClientBuilder.create().build()) {
            HttpGet request = new HttpGet(url);
            HttpResponse response = httpClient.execute(request);
            String resultJson = EntityUtils.toString(response.getEntity());

            JSONObject jsonObject = JSONObject.parseObject(resultJson);
            List<Map<String, Object>> results = jsonObject.getJSONArray("results").toJavaList(HashMap.class);
            Map<String, Object> distanceInfo = results.get(0);
            return Double.parseDouble(distanceInfo.get("distance").toString());
        } catch (IOException e) {
            e.printStackTrace();
            return -1;
        }
    }

    public static void main(String[] args) {
        double startLng = 116.397477;
        double startLat = 39.908692;
        double endLng = 121.472644;
        double endLat = 31.231706;

        double distance = calculateDistance(startLng, startLat, endLng, endLat);
        System.out.println("距离:" + distance + "米");
    }
}

サンプル コードでは、まず開始点と終了点の緯度と経度の座標を設定し、次に calculateDistance を呼び出します。 2 点間の距離を計算し、その結果を出力するメソッド。

サンプル コードの AMAP_API_KEY は、独自の AMAP API キーに置き換える必要があることに注意してください。

サンプル コードをコンパイルして実行すると、2 点間のパス距離が取得されます。

上記の手順により、Java コードを使用して Amap API を呼び出し、パスの距離を計算することができました。ニーズに応じて特定のプロジェクトに適用できます。

概要:
この記事では、Java コードを通じて Amap API を呼び出してパスの距離を計算する方法を紹介します。まず、Amap 開発者アカウントと API キーの取得、必要な開発ツールのインポートなどの準備作業を読者に提供します。次に、Amap API を使用して 2 点間のパス距離を計算する PathDistanceCalculator ツール クラスを作成しました。最後に、完全なコード例を示して説明します。この記事が読者にとって役立つこと、そして読者がこの記事で学んだ知識を通じてより豊富で実用的な地図アプリケーションを開発できることを願っています。

以上がJava コードを通じて Amap API を呼び出してパス距離計算を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。