Google マップ マーカーは、次のような複雑な svg パスをアイコンとして使用できます。
var baseSvg = {
x1 : "m 0,0 l45,0 l 190,225 l -45,0 l -190,-225 z",
x2 : "m 225,0 l -45,0 l -190,225 l 45,0 l 190,-225 z"
};
var baseIcon = {
path: "M0,0 " + baseSvg["x1"] + baseSvg["x2"],
fillColor: "#000000",
fillOpacity: 1,
scale: .2,
strokeColor: "black",
strokeWeight: 0,
rotation: 15
};
次に、マーカーに供給されます。
var marker = new google.maps.Marker({
position: new google.maps.LatLng(somelat, somelng),
icon: baseIcon
});
すべて良い。ただし、単一の色 (この例では黒) でのみ描画されます。では、それらは単一の色しか持たないのでしょうか、それとも多色のシンボルを持つ方法はありますか? サンプル コードを使用すると、x1 は赤、x2 は緑になります。
この構造はここから借用されていることに注意してください: Google Maps API v3 で SVG パスの透過性を示すにはどうすればよいですか? そしてそれはうまく機能します。