Google Maps API – 标记图像的偏移量 – replace标记 – 不在GeoPosition

我有一个图像(一个圆圈),应该指出一个特定的大都市区。 我也有我所有相关领域的GeoPosition

如果我放置我的标记,我的图像的底部中心是在标记的GeoPosition 。 但是因为它的鸟瞰图,我想给图像一个偏移量,所以我的圆形图像的中心在那个GeoPosition

任何想法如何实现这一目标?

谢谢!

感谢LeJared,我find了解决scheme。 我的问题是,我认为MarkerImage取代了Marker 。 但是你必须首先定义图像,然后将其插入到Marker

例:

首先定义图像:

 var image = new google.maps.MarkerImage("some/path/image.png", // This marker is 20 pixels wide by 32 pixels tall. null, // The origin for this image is 0,0. new google.maps.Point(0,0), // The anchor for this image is the base of the flagpole at 0,32. new google.maps.Point(75, 35) ); 

然后将其插入常规标记中:

  var myMarker = new google.maps.Marker({ position: myLatLng, map: map, icon: image, title: "My Title", }); 

从Google API版本3.11开始, MarkerImageIcon取代 。 所以这里是将标记缩放到50px的新方法,并将其放置在地理位置上:

 var image = { url: '/some/path/image.png', origin: new google.maps.Point(0, 0), anchor: new google.maps.Point(25, 25), scaledSize: new google.maps.Size(50, 50) }; var myMarker = new google.maps.Marker({ position: position, icon: image, title: 'title', map: map }); 

您必须指定markerImage中的锚点的位置。 查看文档: https : //developers.google.com/maps/documentation/javascript/reference?hl = de | MarkerImage

如果没有指定,Google假定markerImage的底边的中心为定位点。

以下是API文档中如何使用正确的markerImage构build复杂标记的示例: https ://google-developers.appspot.com/maps/documentation/javascript/examples/icon-complex ?hl = zh_CN

这是我的承担。

 new google.maps.Marker({ position: pos, map: map, icon: { url: src, anchor: new google.maps.Point(25, 25), origin: new google.maps.Point(0, 0), scaledSize: new google.maps.Size(50, 50) } });