我对使用谷歌地图有点困惑。
我想用国家和省线绘制地图。我使用手写笔来创建这一行。我想要创建这样的东西(我已经在将屏幕从7放大到6):

但我只能做到这一点:

要获得省线,我必须放大7级(我不能看到整个波兰),但我想显示在所有级别的缩放(以上7-6,5等)。
我的手写笔片段:
styles:[
{
"featureType": "administrative",
"elementType": "labels.text",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "administrative.province",
"elementType": "geometry.stroke",
"stylers": [
{
"invert_lightness": true
},
{
"visibility": "on"
}
]
},
{
"featureType": "landscape",
"elementType": "geometry",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "landscape",
"elementType": "labels",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "landscape.man_made",
"elementType": "geometry",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "landscape.natural.landcover",
"elementType": "geometry",
"stylers": [
{
"visibility": "on"
}
]
},
{
"featureType": "poi",
"elementType": "geometry",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "poi",
"elementType": "labels",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "road",
"elementType": "all",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "transit",
"elementType": "geometry",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "transit",
"elementType": "labels",
"stylers": [
{
"visibility": "off"
}
]
},
{
"featureType": "water",
"elementType": "geometry",
"stylers": [
{
"visibility": "on"
}
]
},
{
"featureType": "water",
"elementType": "labels",
"stylers": [
{
"visibility": "on"
}
]
}
]小提琴演示当前行为
发布于 2016-08-17 13:32:36
你不能用造型来改变瓷砖的行为。如果省边界不在缩放级别6的瓷砖上,则不能对其进行样式设计。最好的选择是从其他数据源(如这)获取缩放级别6的省边界,然后将它们隐藏在缩放级别6之上。
相关问题:谷歌地图V3:绘制德国国家多边形?
概念小提琴的证明

代码片段:
var geocoder;
var map;
function initialize() {
map = new google.maps.Map(
document.getElementById("map_canvas"), {
center: new google.maps.LatLng(37.4419, -122.1419),
zoom: 5,
mapTypeId: google.maps.MapTypeId.ROADMAP,
styles: styles
});
var FT_TableID = 420419;
var FT_Query = "SELECT 'kml_4326' FROM " + FT_TableID + " WHERE 'name_0' = 'Poland';";
var FT_Options = {
suppressInfoWindows: true,
query: FT_Query
};
var boundaries = new google.maps.FusionTablesLayer(FT_TableID, FT_Options);
boundaries.setMap(map);
google.maps.event.addListener(map, 'zoom_changed', function() {
if ((map.getZoom() > 6) || (map.getZoom() < 2)) {
boundaries.setMap(null);
} else {
boundaries.setMap(map);
}
document.getElementById('zoom').innerHTML = "zoom= " + map.getZoom();
});
geocoder = new google.maps.Geocoder();
geocoder.geocode({
'address': "Poland"
}, function(results, status) {
if (status === 'OK') {
map.fitBounds(results[0].geometry.viewport);
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}
google.maps.event.addDomListener(window, "load", initialize);
var styles = [{
"featureType": "administrative",
"elementType": "labels.text",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "administrative.province",
"elementType": "geometry.stroke",
"stylers": [{
"invert_lightness": true
}, {
"visibility": "on"
}]
}, {
"featureType": "landscape",
"elementType": "geometry",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "landscape",
"elementType": "labels",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "landscape.man_made",
"elementType": "geometry",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "landscape.natural.landcover",
"elementType": "geometry",
"stylers": [{
"visibility": "on"
}]
}, {
"featureType": "poi",
"elementType": "geometry",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "poi",
"elementType": "labels",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "road",
"elementType": "all",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "transit",
"elementType": "geometry",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "transit",
"elementType": "labels",
"stylers": [{
"visibility": "off"
}]
}, {
"featureType": "water",
"elementType": "geometry",
"stylers": [{
"visibility": "on"
}]
}, {
"featureType": "water",
"elementType": "labels",
"stylers": [{
"visibility": "on"
}]
}];html,
body,
#map_canvas {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}<script src="https://maps.googleapis.com/maps/api/js?libraries=geometry,places&ext=.js"></script>
<div id="zoom"></div>
<div id="map_canvas"></div>
https://stackoverflow.com/questions/38995193
复制相似问题