Rumah  >  Artikel  >  hujung hadapan web  >  Cara menggunakan Peta JS dan Baidu untuk melaksanakan fungsi lukisan sempadan daerah pentadbiran peta

Cara menggunakan Peta JS dan Baidu untuk melaksanakan fungsi lukisan sempadan daerah pentadbiran peta

王林
王林asal
2023-11-21 09:05:161622semak imbas

Cara menggunakan Peta JS dan Baidu untuk melaksanakan fungsi lukisan sempadan daerah pentadbiran peta

Cara menggunakan Peta JS dan Baidu untuk melaksanakan fungsi lukisan sempadan kawasan pentadbiran peta diperlukan

Kata Pengantar:
Dalam pembangunan web, jika anda perlu memaparkan sempadan kawasan pentadbiran pada peta, anda. boleh menggunakan JavaScript dan API Peta Baidu untuk melakukannya. Artikel ini akan memperkenalkan cara menggunakan Peta JS dan Baidu untuk melukis sempadan daerah pentadbiran dan memberikan contoh kod khusus.

Langkah 1: Import Baidu Map API
Mula-mula, import skrip Baidu Map API ke dalam halaman HTML. Anda boleh memohon akaun pembangun pada platform terbuka Peta Baidu dan mendapatkan kunci API anda sendiri. Kemudian tambahkan kod berikut di dalam teg

pada halaman HTML:
<script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=你的API密钥"></script>

Dalam contoh ini, anda perlu menggantikan "kunci API anda" dengan kunci API anda sendiri.

Langkah 2: Buat bekas peta
Buat bekas untuk memaparkan peta dalam halaman HTML. Tambahkan kod berikut di dalam teg

:
<div id="map" style="width: 100%; height: 400px;"></div>

Dalam contoh ini, id bekas peta ialah "peta", lebarnya ialah 100% dan ketinggian ialah 400px.

Langkah 3: Lukis sempadan daerah pentadbiran
Seterusnya, laksanakan fungsi melukis sempadan daerah pentadbiran dalam kod JavaScript. Tambahkan kod berikut dalam kod JavaScript:

// 创建地图实例
var map = new BMap.Map("map");

// 设置地图中心点和缩放级别
var point = new BMap.Point(116.404, 39.915);
map.centerAndZoom(point, 12);

// 行政区划实例化
var district = new BMap.Boundary();

// 获取行政区域
district.get("北京市", function (rs) {
  var count = rs.boundaries.length;
  if (count === 0) {
    alert("未能获取当前输入行政区域");
    return;
  }
  var pointArray = [];
  for (var i = 0; i < count; i++) {
    var ply = new BMap.Polygon(rs.boundaries[i], { strokeWeight: 2, strokeColor: "#ff0000" }); // 创建多边形
    map.addOverlay(ply); // 添加覆盖物
    pointArray = pointArray.concat(ply.getPath());
  }
  map.setViewport(pointArray); // 调整视野
})

Dalam kod ini, kami mencipta contoh peta dan memaparkannya dalam bekas peta yang ditentukan. Kemudian, kami menetapkan titik tengah peta dan tahap zum. Seterusnya, melalui contoh kelas BMap.Boundary, kita boleh mendapatkan sempadan wilayah pentadbiran berdasarkan nama wilayah pentadbiran. Dalam contoh ini, kami memperoleh sempadan "Bandar Beijing" dan menggunakan garis merah untuk melukis sempadan daerah pentadbiran.

Akhir sekali, kami menambah sempadan yang dilukis pada peta dan melaraskan paparan peta supaya semua sempadan kelihatan sepenuhnya.

Langkah 4: Jalankan kod
Selepas melengkapkan kod di atas, simpan fail HTML dan bukanya dalam penyemak imbas. Anda akan melihat halaman web dengan peta di mana sempadan daerah pentadbiran "Bandar Beijing" telah dilukis.

Ringkasan:
Artikel ini memperkenalkan cara menggunakan JavaScript dan API Peta Baidu untuk melaksanakan fungsi melukis sempadan daerah pentadbiran pada peta. Dengan memanggil antara muka yang disediakan oleh API Peta Baidu, kami boleh mendapatkan data sempadan wilayah pentadbiran dan melukisnya pada peta. Ini membolehkan kami memaparkan dan mengendalikan maklumat wilayah pentadbiran secara fleksibel dalam pembangunan web. Saya harap contoh kod dalam artikel ini boleh membantu semua orang!

Atas ialah kandungan terperinci Cara menggunakan Peta JS dan Baidu untuk melaksanakan fungsi lukisan sempadan daerah pentadbiran 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