ESRI JSAPI 3.x -- 如何设置 min/max 缩放级别?
ESRI JSAPI 3.x -- how to set min/max zoom levels?
我有这个 codepen 可以在初始化地图时设置 min/max 缩放级别,但这些值不可用。总是调用 map.getZoom() returns -1,我可以无限制地放大和缩小。
var bounds = new Extent({
"xmin":-16045622,
"ymin":-811556,
"xmax":7297718,
"ymax":11142818,
"spatialReference":{"wkid":102100}
});
var map = new Map("map", {
extent: bounds,
minZoom: 5,
maxZoom: 8
});
我在 samples 页面上找不到与“minzoom”或“maxzoom”相关的样本。
如何限制此地图的缩放级别?
问题是地图没有预定义的缩放级别,这就是为什么 getZoom
是 -1
。
通常在底图中设置缩放级别。只是为了测试,尝试在您的代码中使用底图,您会发现它按预期工作,
var map = new Map("map", {
basemap: "topo",
extent: bounds,
minZoom: 5,
maxZoom: 8
});
如果您没有缩放级别,您可以使用比例而不是缩放,这将在您的代码中起作用。可以使用的简化计算,
zoom level 5 ~ 1:15.000.000
zoom Level 8 ~ 1:2.000.000
所以它会是这样的,
var map = new Map("map", {
extent: bounds,
minScale: 15000000,
maxScale: 2000000
});
我有这个 codepen 可以在初始化地图时设置 min/max 缩放级别,但这些值不可用。总是调用 map.getZoom() returns -1,我可以无限制地放大和缩小。
var bounds = new Extent({
"xmin":-16045622,
"ymin":-811556,
"xmax":7297718,
"ymax":11142818,
"spatialReference":{"wkid":102100}
});
var map = new Map("map", {
extent: bounds,
minZoom: 5,
maxZoom: 8
});
我在 samples 页面上找不到与“minzoom”或“maxzoom”相关的样本。
如何限制此地图的缩放级别?
问题是地图没有预定义的缩放级别,这就是为什么 getZoom
是 -1
。
通常在底图中设置缩放级别。只是为了测试,尝试在您的代码中使用底图,您会发现它按预期工作,
var map = new Map("map", {
basemap: "topo",
extent: bounds,
minZoom: 5,
maxZoom: 8
});
如果您没有缩放级别,您可以使用比例而不是缩放,这将在您的代码中起作用。可以使用的简化计算,
zoom level 5 ~ 1:15.000.000
zoom Level 8 ~ 1:2.000.000
所以它会是这样的,
var map = new Map("map", {
extent: bounds,
minScale: 15000000,
maxScale: 2000000
});