当我在折线中添加箭头时,当箭头位于 map 图块的边缘时,它会被切除。可以使用docs(https://developers.google.com/maps/documentation/javascript/examples/overlay-symbol-arrow)中的示例代码来复制此代码,只需使其可拖动并稍微移动一下即可。
以下是不在边缘时的外观:
这是它的外观:
此问题在发行版(3.16)和实验版(3.17)中均存在。我已经在google's bugtracker上报告了它,但是他们可能需要几年的时间才能对其进行修复。那么,有人知道解决方法吗?
编辑:哦,我可能应该补充一点,它不会在小strokeWeight时发生,它必须像图像上的一样大一些。
最佳答案
问题:
使用预定义的符号路径时会发生错误。
// Define a symbol using a predefined path (an arrow)
// supplied by the Google Maps JavaScript API.
var lineSymbol = {
path: google.maps.SymbolPath.FORWARD_CLOSED_ARROW
};
JSFiddle demo
解决方案:
创建您自己的符号路径,问题将不再出现。
// Define your custom symbol path
var lineSymbol = {
path: 'M -2,0 0,-2 2,0 z',
strokeColor: '#F00',
fillColor: '#F00',
fillOpacity: 1
};
JSFiddle demo
很简单的修复程序,但它仍然是一个错误,因此我认为创建错误报告是一件好事。
编辑:
我们收到了Google的反馈。