Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Gunakan PHP dan API Amap untuk membuat perancangan laluan peta

Gunakan PHP dan API Amap untuk membuat perancangan laluan peta

PHPz
PHPzasal
2023-07-29 19:18:191867semak imbas

Gunakan PHP dan API Amap untuk mencipta perancangan laluan peta

Pengenalan: Dengan perkembangan Internet dan peranti mudah alih, aplikasi peta telah menjadi bahagian yang amat diperlukan dalam kehidupan orang ramai. Sebagai penyedia perkhidmatan peta terkemuka di China, Amap menyediakan antara muka API yang kaya untuk memudahkan pembangun menyepadukan fungsi peta dalam aplikasi mereka. Dalam artikel ini, kami akan menggunakan PHP sebagai contoh untuk memperkenalkan cara menggunakan API Amap untuk mencipta fungsi perancangan laluan peta.

  1. Persediaan

Sebelum kita mula, kita perlu menyediakan perkara berikut:

  • Pelayan atau mesin tempatan yang dilengkapi dengan persekitaran PHP
  • Akaun pembangun Amap, anda boleh memohonnya di platform terbuka Amap
  • Alat pembangunan, seperti Teks Sublime, PHPStorm, dll.
  1. Pengenalan API

Pertama sekali, pada permulaan fail PHP, kita perlu memperkenalkan API Amap. Ia boleh diperkenalkan dengan cara berikut:

<script type="text/javascript" src="https://webapi.amap.com/maps?v=1.4.15&key=您的API_KEY"></script>

Antaranya, anda perlu menggantikan "API_KEY" anda dengan kunci API yang anda mohon pada platform terbuka Amap.

  1. Buat bekas peta

Seterusnya, kita perlu mencipta bekas dalam HTML untuk memaparkan peta. Unsur DIV boleh dibuat sebagai bekas peta menggunakan kod berikut:

<div id="mapContainer" style="width: 100%; height: 500px;"></div>

Dalam CSS, kita boleh menetapkan lebar dan tinggi bekas peta. Di sini lebar ditetapkan kepada 100% dan ketinggian kepada 500px.

  1. Inisialisasikan peta

Dalam PHP, kami boleh menggunakan kod berikut untuk memulakan peta:

<script type="text/javascript">
    var map = new AMap.Map("mapContainer", {
        zoom: 15, // 地图缩放级别
        center: [116.397428, 39.90923] // 地图中心点坐标
    });
</script>

Dalam kod di atas, kami mencipta contoh peta baharu melalui kaedah AMap.Map() dan menjadikannya In elemen DIV yang idnya ialah mapContainer. Aras zum peta ditetapkan kepada 15 dan koordinat titik tengah ialah [116.397428, 39.90923].

  1. Tambah titik mula dan tamat

Sebelum melakukan perancangan laluan, kita perlu menambah penanda titik mula dan tamat pada peta. Berikut ialah contoh kod:

<script type="text/javascript">
    var startPoint = new AMap.Marker({
        position: [116.407394, 39.904211], // 起点坐标
        title: '起点'
    });

    var endPoint = new AMap.Marker({
        position: [116.412416, 39.896366], // 终点坐标
        title: '终点'
    });

    map.add([startPoint, endPoint]);
</script>

Dalam kod di atas, kami menggunakan kaedah AMap.Marker() untuk mencipta objek Penanda untuk titik permulaan dan titik akhir, dan menetapkan kedudukan dan maklumat tajuknya masing-masing. Akhir sekali, kami menambah titik mula dan tamat pada peta menggunakan kaedah map.add().

  1. Perancangan laluan

Akhir sekali, kami menggunakan API perancangan laluan Amap untuk mendapatkan laluan yang dirancang antara titik permulaan dan destinasi. Berikut ialah contoh kod:

<script type="text/javascript">
    var driving = new AMap.Driving({
        policy: AMap.DrivingPolicy.LEAST_TIME // 规划策略(最短时间)
    });

    driving.search(new AMap.LngLat(116.407394, 39.904211), new AMap.LngLat(116.412416, 39.896366), function(status, result) {
        if (status === 'complete' && result.info === 'OK') {
            var route = result.routes[0];
            var path = [];
            
            // 遍历路线上的每个步骤
            for (var i = 0, l = route.steps.length; i < l; i++) {
                var step = route.steps[i];
                path.push(step.path);
            }

            var polyline = new AMap.Polyline({
                path: path,
                strokeColor: '#00FF00',
                strokeWeight: 4,
                strokeOpacity: 1
            });

            map.add(polyline);
        }
    });
</script>

Dalam kod di atas, kami menggunakan kaedah AMap.Driving() untuk mencipta contoh perancangan laluan pemanduan dan menetapkan strategi perancangan kepada masa yang paling singkat. Seterusnya, kami menggunakan kaedah driving.search() untuk menanyakan laluan yang dirancang antara titik permulaan dan titik akhir, dan meneruskan fungsi panggil balik untuk memproses hasil yang dikembalikan. Dalam fungsi panggil balik, kita boleh mengulangi setiap langkah pada laluan dan menambahkannya pada peta. Akhir sekali, kami menggunakan kaedah AMap.Polyline() untuk mencipta objek polyline, menetapkan sifatnya seperti laluan, warna dan lebar garisan, dan kemudian menambahnya pada peta melalui kaedah map.add().

Ringkasan:

Di atas ialah contoh mudah perancangan laluan menggunakan PHP dan API Amap untuk mencipta peta. Melalui contoh ini, kita boleh belajar cara memperkenalkan API, mencipta bekas peta, memulakan peta, menambah titik permulaan dan titik penamat serta melaksanakan operasi asas seperti perancangan laluan. Saya percaya bahawa dalam pembangunan sebenar, kita boleh mengembangkan dan menyesuaikan dengan sewajarnya mengikut keperluan khusus dan logik perniagaan untuk mencapai fungsi peta yang lebih diperibadikan. Saya harap artikel ini berguna kepada anda, terima kasih kerana membaca!

Atas ialah kandungan terperinci Gunakan PHP dan API Amap untuk membuat perancangan laluan peta. 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