Rumah  >  Artikel  >  Java  >  Cara memanggil API Amap melalui kod Java untuk melaksanakan pengiraan jarak laluan

Cara memanggil API Amap melalui kod Java untuk melaksanakan pengiraan jarak laluan

PHPz
PHPzasal
2023-07-29 13:17:122394semak imbas

Cara memanggil API Amap melalui kod Java untuk melaksanakan pengiraan jarak laluan

Apabila permintaan orang ramai untuk keadaan trafik masa nyata dan navigasi meningkat, perancangan laluan peta menjadi semakin penting. Sebagai penyedia perkhidmatan peta terkemuka di China, fungsi perancangan laluan Amap digemari oleh majoriti pembangun. Artikel ini akan memperkenalkan cara memanggil API Amap melalui kod Java untuk melaksanakan pengiraan jarak laluan.

Amap API menyediakan satu siri antara muka yang kaya, termasuk pengekodan geo, pengekodan geo terbalik, perancangan laluan dan fungsi lain. Dalam artikel ini, kami akan memberi tumpuan kepada cara menggunakan API Amap untuk mengira jarak laluan.

Sebelum kita mula, kita perlu menyediakan beberapa kerja yang diperlukan:

  1. Dapatkan akaun pembangun Amap dan buat aplikasi.
  2. Dapatkan kunci API Amap untuk pengesahan kebenaran.
  3. Import alatan pembangunan Java yang sepadan, seperti Eclipse atau IntelliJ IDEA.

Selepas kerja penyediaan selesai, kita boleh mula menulis kod Java. Pertama, kita perlu mencipta projek Java dan memperkenalkan pakej balang API Peta Amap ke dalam projek.

Seterusnya, kita boleh mencipta kelas, seperti PathDistanceCalculator, sebagai kelas alat untuk pengiraan jarak laluan. Kelas alat ini akan menyediakan kaedah untuk menerima koordinat latitud dan longitud bagi titik permulaan dan titik akhir, mengira jarak laluan antara dua titik melalui API Amap dan mengembalikan hasilnya. PathDistanceCalculator,作为路径距离计算的工具类。该工具类将提供一个方法,接收起始点和终点经纬度坐标,通过高德地图API计算两点之间的路径距离,并返回结果。

示例代码如下所示:

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方法计算两点之间的路径距离,并打印结果。

需要注意的是,示例代码中的AMAP_API_KEY需要替换成你自己的高德地图API的key。

编译并运行示例代码,你将会得到两点之间的路径距离。

通过上述步骤,我们成功地使用Java代码调用高德地图API实现了路径距离的计算。你可以根据自己的需要,将其应用在具体的项目中。

总结:
本文介绍了如何通过Java代码调用高德地图API实现路径距离的计算。首先,我们为读者提供了准备工作,包括获取高德地图开发者账号及API的key,并导入必要的开发工具。然后,我们编写了一个PathDistanceCalculator

Kod sampel adalah seperti berikut: 🎜rrreee🎜Dalam kod sampel, kami mula-mula menetapkan koordinat latitud dan longitud bagi titik permulaan dan titik akhir, dan kemudian panggil kaedah calculateDistance untuk mengira jarak laluan antara dua titik dan cetak hasilnya. 🎜🎜Perlu diambil perhatian bahawa AMAP_API_KEY dalam kod sampel perlu diganti dengan kunci API Peta Amap anda sendiri. 🎜🎜Kompil dan jalankan kod contoh, anda akan mendapat jarak laluan antara dua titik. 🎜🎜Melalui langkah di atas, kami berjaya menggunakan kod Java untuk memanggil API Amap untuk mengira jarak laluan. Anda boleh menggunakannya untuk projek tertentu mengikut keperluan anda. 🎜🎜Ringkasan:
Artikel ini memperkenalkan cara memanggil API Amap melalui kod Java untuk mengira jarak laluan. Pertama, kami menyediakan pembaca kerja penyediaan, termasuk mendapatkan akaun pembangun Amap dan kunci API, dan mengimport alatan pembangunan yang diperlukan. Kemudian, kami menulis kelas alat PathDistanceCalculator untuk mengira jarak laluan antara dua titik menggunakan API Amap. Akhir sekali, kami memberikan contoh kod lengkap dan menerangkannya. Saya berharap artikel ini dapat membantu pembaca, dan pembaca boleh membangunkan aplikasi peta yang lebih kaya dan praktikal melalui pengetahuan yang dipelajari dalam artikel ini. 🎜

Atas ialah kandungan terperinci Cara memanggil API Amap melalui kod Java untuk melaksanakan pengiraan jarak laluan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn