我正在尝试使用APIv3.exp构建一个定制的google地图。我也想定制建筑物的颜色,但是如果我改变了landscape.man_made的颜色,我就会失去建筑物中美丽的阴影效果(不同的色调)。
默认颜色 定制颜色
用于StyledMapType对象的json是
var mapStyle = [{
"featureType": "landscape.man_made",
"elementType": "geometry.fill",
"stylers": [{
"color": "#808080"
}]
}];是否有可能改变建筑物的颜色和保持阴影的效果?
发布于 2015-10-14 22:31:35
是。这是有可能的。简单地使用色调和饱和度
{ stylers: [ { hue: "#00ffe6" }, { saturation: -20 } ] }更详细的示例可以在这里找到https://developers.google.com/maps/documentation/javascript/styling。
下面是我的google地图样式和完整代码的示例

var map;
function initialize() {
var lat="53.89076";
var long="27.57156";
var myLatLng=new google.maps.LatLng(lat, long);
var mapOptions = {
zoom: 17,
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: myLatLng,
styles: [
{ "stylers": [ { "hue": "#3d535b" }, { "saturation": -20 } ] },
{ "elementType": "labels.text.fill", "stylers": [ { "color": "#3d535b" } ] },
{ "elementType": "labels.text.stroke", "stylers": [ { "color": "##e8eeef" } ] },
{ "featureType": "road", "elementType": "geometry.fill", "stylers": [ { "color": "#e8eeef" } ] },
{ "featureType": "road", "elementType": "geometry.stroke", "stylers": [ { "color": "#b1bcbf" } ] },
{ "featureType": "water", "stylers": [ { "color": "#adb9bc" } ] },
{ "featureType": "water", "elementType": "labels.text.fill", "stylers": [ { "color": "#3d535b" } ] },
{ "featureType": "water", "elementType": "labels.text.stroke", "stylers": [ { "color": "#d1d9db" } ] },
{ "featureType": "poi", "elementType": "geometry", "stylers": [ { "visibility": "off" } ] },
{ "featureType": "poi.park", "elementType": "geometry", "stylers": [ { "color": "#bfc9cc" }, { "visibility": "on" } ] },
{ "featureType": "poi.business", "elementType": "geometry", "stylers": [ { "color": "#cdd6d8" }, { "visibility": "on" } ] },
{ "featureType": "poi.school", "elementType": "geometry", "stylers": [ { "color": "#cdd6d8" }, { "visibility": "on" } ] },
{ "featureType": "poi.medical", "elementType": "geometry", "stylers": [ { "color": "#cdd6d8" }, { "visibility": "on" } ] },
{ "featureType": "poi.government", "elementType": "geometry", "stylers": [ { "color": "#cdd6d8" }, { "visibility": "on" } ] },
{ "featureType": "landscape.natural", "elementType": "geometry", "stylers": [ { "color": "#dee5e8" } ] }
]
};
map = new google.maps.Map(document.getElementById('map'), mapOptions);
var iconBase = 'images/pin.png';
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
icon:iconBase,
title: 'Moby Dick'
});
marker.setMap(map);
}
google.maps.event.addDomListener(window, 'load', initialize);
google.maps.event.addDomListener(window, "resize", function() {
var center = map.getCenter();
google.maps.event.trigger(map, "resize");
map.setCenter(center);
});https://stackoverflow.com/questions/19358022
复制相似问题