Cómo obtener los límites de las regiones administrativas
2. Agregar eventos y controles del mapa
Control: control de espina de pescado, yo usé mini control;
map.events: Zoom de rueda agregado.
map.addControl(new BMap.NavigationControl({type: BMAP_NAVIGATION_CONTROL_SMALL}));
map.enableScrollWheelZoom()
III.
Límite del constructor;
obtener método para obtener los límites de las regiones administrativas.
rs es el resultado obtenido.
var bdary = new BMap.Boundary();
bdary.get(name, function(rs){ // Obtener la región administrativa
// aquí Es la función del usuario.
});
Cuarto, agregue superposición
Después de obtener la matriz de puntos del límite, agregue superposición de polígonos.
var count = rs.boundaries.length; //Cuántos puntos hay en el área de gestión
for(var i = 0; i lt; count; i ){
var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 2, StrokeColor: "#ff0000"}); //Crear superposición de polígonos
map.addOverlay (ply ); //Agregar superposición
}
V.
V. Ajustar el campo de visión
puntos es una matriz de puntos, el sistema muestra automáticamente todos los puntos en puntos.
map.setViewport(points); //Ajustar la ventana gráfica
Imágenes válidas:
Todos los códigos fuente:
Copiar código
lt;!DOCTYPE html PUBLIC "-/W3C//DTD XHTML 1.0 Transicional//EN" "/api?v=1.3"gt;
lt;/scriptgt; p>
lt; p>
lt; estilo tipo="text/css"gt;
cuerpo{font-size: 13px; margen: 10px}
#container{ ancho: 800px; alto: 500px; borde: 1px gris sólido}
lt;/stylegt;
lt;/headgt;
lt;bodygt;
lt; cuerpo id="contenedor"gt;
lt; estilo tipo="text/css"gt; lt; div id="container "gt;lt;/divgt;
lt;br /gt;
Ingrese el nombre de la provincia, ciudad o condado: lt; ="text" id="districtName" style="width:80px" value="Ciudad de Chongqing"gt;
lt; input type="button" onclick="getBoundary()" value="Obtener línea límite"gt;
lt;script type="text/javascript"gt;
var map = new BMap.NavigationControl({type: BMAP_NAVIGATION_CONTROL_SMALL}));
map.enableScrollWheelZoom() ;
función getBoundary(){
var bdary = new BMap.Boundary();
var nombre = documento .getElementById("districtName").value ;
bdary.get(name, function(rs){ //obtiene las áreas administrativas
map.clearOverlays(); //clear la superposición del mapa
var count = rs.boundaries.length; //Cuántos puntos hay en el área administrativa
for(var i = 0; i lt; count; i ){
var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 2,strokeColor: "#ff0000"}); //crear superposición de polígonos
map.addOverlay(ply); //agregar superposición
> map.setViewport(ply.getPath()); //ajustar la vistap
ort
}).
});
}
lt;/scriptgt;
lt; /bodygt;
lt;/htmlgt;
Copiar código