You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GMap.NET使用咨询:能否移除地图上的山峰名称、高度及标记

是否可以移除GMap地图上的山峰名称、对应高度数值以及相关标记?

可以实现,具体方案根据你的使用场景选择即可。

你当前使用的是捷克旅游地图提供器(CzechTuristMapProvider),这类面向徒步场景的地图源默认会在底图瓦片内置山峰名称、海拔数值、登山路径等专属标注,部分标注也有可能是你后续代码添加的自定义图层内容,对应解决方法如下:


方案1:清除自定义标记图层

如果标注是你自己代码中添加的Overlay图层内容,直接调用清除方法即可:

// 清除所有自定义覆盖图层
gmap.Overlays.Clear();

// 若要保留其他图层只删标记图层,可指定删除
// var markerOverlay = gmap.Overlays.FirstOrDefault(o => o.Id == "你的标记图层ID");
// if(markerOverlay != null) gmap.Overlays.Remove(markerOverlay);

方案2:替换无标注地图源(最简单推荐)

如果不需要捷克旅游地图的专属徒步内容,直接替换为普通地图源即可,默认不会内置山峰相关标注,修改初始化代码如下:

private void Form1_Load(object sender, EventArgs e)
{
    // 示例替换为OpenStreetMap普通道路图,可按需换为谷歌、必应等其他通用地图源
    gmap.MapProvider = GMap.NET.MapProviders.OpenStreetMapProvider.Instance;
    GMap.NET.GMaps.Instance.Mode = GMap.NET.AccessMode.ServerOnly;
    // 可选关闭控件自带的默认标记
    gmap.ShowCenter = false;
}

方案3:自定义瓦片源(必须保留捷克旅游地图底图时用)

如果必须使用CzechTuristMapProvider的底图内容,可以自定义继承该提供器,修改瓦片请求的URL参数,请求无标注版本的瓦片,或者在本地对返回的瓦片做标注擦除处理(该方案需要对应瓦片源支持无标注版本的请求)。


标注效果示例:
山峰标注示例


内容的提问来源于stack exchange,提问作者NewHorse

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 23:24:04