Fengmap JavaScript SDK

地图主题 使用Fengmap JavaScript SDK 显示地图时,不仅包含地图*.fmap文件,还同时需要主题文件。 本单元是针对加载在线、离线主题文件或者切换主题等操作的说明。

在线主题

调用代码中如不设置,Fengmap JavaScript SDK 默认加载Fengmap服务器上的名称为2001的主题数据。

//代码中未配置主题服务器地址,将默认读取Fengmap服务器上的2001主题。
var map = new fengmap.FMMap({
    container : document.getElementById("map") //设置显示地图容器
});
离线主题

您可以根据需求加载本地主题文件。请确保您已保存了自定义的主题在网站项目目录下。参考下图:

在初始化地图的js位置,配置本地主题路径,参考代码如下所示:

var fmapID = '10347';
var map = new fengmap.FMMap({
    container : document.getElementById("map"), //设置显示地图容器
    //设置本地主题数据的相对路径。设置后的主题路径为data/theme/2001/2001.theme.
    mapThemeURL : './data/theme'        //主题数据位置
});
配置初始化主题

默认的主题为2001主题,您可在地图初始化位置配置加载其他主题。设置如下所示:

//1.修改在线主题的初始主题文件
var map = new fengmap.FMMap({
    container : document.getElementById("map"), //设置显示地图容器
    //默认主题切换成在线2002主题
    defaultThemeName:'2002'
});

//2.修改离线主题的初始主题文件
var map = new fengmap.FMMap({
    container : document.getElementById("map"), //设置显示地图容器
    mapThemeURL : './data/theme',       //主题数据位置
    //默认主题切换成本地2002主题
    defaultThemeName:'2002'
});
切换主题

Fengmap JavaScript SDK 支持切换主题功能,地图主题切换需要在地图加载完成后进行。设置如下:

map.on('loadComplete',function(){
    //在地图加载完成后切换主题
    map.themeName = '2002'; //根据初始化的主题目录路径,切换地图主题
})

运行后效果如下: