代码之家  ›  专栏  ›  技术社区  ›  Simon

如何在谷歌地图中更改Gmarker的颜色?

  •  3
  • Simon  · 技术社区  · 14 年前

    很简单的请求,但似乎没有一种方法可以做到。我只想我的Gmarkers是绿色而不是红色。

    我真的要自己做图标吗?

    4 回复  |  直到 11 年前
        1
  •  4
  •   Chris B    14 年前

    这是最简单的方法:

    var greenIcon = new GIcon(G_DEFAULT_ICON);
    greenIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green-dot.png";
    var markerOptions = { icon:greenIcon };
    
    var marker = new GMarker(point, markerOptions);
    

    标记图片是谷歌的,但你也可以使用自己的。

    如果您需要在运行中生成唯一的标记,那么mapiconmaker非常好。

        2
  •  1
  •   Simon    14 年前

    我找到的最佳方法是使用以下脚本…

    labeledmarker.js

    mapiconmaker.js

    然后需要以下代码段:

    var iconOptions = {};
    iconOptions.width = 32;
    iconOptions.height = 32;
    iconOptions.primaryColor = "#66CC6600";
    iconOptions.cornerColor = "#66CC6600";
    iconOptions.strokeColor = "#000000FF";
    var iconSeller = MapIconMaker.createMarkerIcon(iconOptions);
    
    function createMarker(icon, point,html,label) 
    {
        opts = 
        { 
            "icon": icon,
            "labelText": label,      
            "labelClass": "markerLabel",
            "labelOffset": new GSize(-4, -31)
        };
        var marker = new LabeledMarker(point, opts);
        GEvent.addListener(marker, "click", 
            function() 
            {
                marker.openInfoWindowHtml(html);
            });
        return marker;
    }
    

    确保在样式表中有一个名为 markerLabel 因此,可以设置包含标签的DIV的样式。我从优秀的 econym 教程站点中有许多清晰的示例和代码示例。

        3
  •  0
  •   artlung    14 年前

    看到这个: Map Overlays > Markers > Icons

    图标

    标记可以定义要显示的图标 默认图标的位置。定义一个 图标因数字而复杂 组成一个 地图API中的单个图标。在一 至少,图标必须定义 前景图像,类型大小 GSize ,图标偏移到 放置图标。

    最简单的图标基于 G_DEFAULT_ICON 类型。创建一个 基于此类型的图标允许您 快速更改默认图标 只修改一些属性。

    看起来这是最简单的情况。你使用 GyDebug图标 作为基础 GIcon ,然后通过更改 .image 新对象的属性。这个 simple example 很简单。

        4
  •  0
  •   Nazim Ali    11 年前

    我需要在地图中添加gmarker并从Web服务获取数据的项目