[英]Is there any way to add label or marker inside layer of a google map?
我是google map API的新手。 我需要在Google Map Datalayer中放置标签。 我需要了解是否可以编写任何JavaScript代码来解决此问题?
new google.maps.Marker({
position: e.latLng,
map: map,
icon: {
path: resultPath,
fillColor: resultColor,
fillOpacity: .2,
strokeColor: 'white',
strokeWeight: .5,
scale: 10
}
});
从上面的代码而不是'map:map'可以使用任何图层吗?
google.maps.Data
图层不接收常见的叠加层对象(标记,折线,多边形,圆形,矩形)。 它显示google.maps.Data.Feature
对象或GeoJSON有效文字。
例如,您可以通过执行以下操作将标记添加到数据层
var geoJsonFeature = {
type:'Feature',
geometry:{
type:'Point',
coordinates:[e.latLng.lng(), e.latLng.lat()]
}
}
google.maps.data.addGeoJson(geoJsonFeature);
关于标记的样式,可以将数据层样式设置为
google.maps.data.setStyle(function(Feature) {
return {
icon: {
path: Feature.getProperty('resultPath'),
fillColor: Feature.getProperty('resultColor'),
fillOpacity: .2,
strokeColor: 'white',
strokeWeight: .5,
scale: 10
}
};
});
因此,对于您添加的每个数据层google.maps.data.Feature
,如果希望标记具有不同的样式,则应事先将其路径和fillColor设置为
var geoJsonFeature = {
type:'Feature',
properties: {
path: resultPath,
fillColor: resultColor
},
geometry:{
type:'Point',
coordinates:[e.latLng.lng(), e.latLng.lat()]
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.