如何在任何开源地图(如 maptalks)上仅显示确切区域?

How to display only exact region on any open-source map (like maptalks)?

我只需要在地图上显示一个区域。例如阿拉斯加或纽约市。

您可以找到您的区域边界并设置地图以限制平移。 请看下面的示例:

var allowedBounds = new google.maps.LatLngBounds(
 new google.maps.LatLng(70.33956792419954, 178.01171875), 
 new google.maps.LatLng(83.86483689701898, -88.033203125)
);
var lastValidCenter = map.getCenter();

google.maps.event.addListener(map, 'center_changed', function() {
   if (allowedBounds.contains(map.getCenter())) {
       // still within valid bounds, so save the last valid position
       lastValidCenter = map.getCenter();
       return; 
   }

   // not valid anymore => return to last valid position
   map.panTo(lastValidCenter);
});

你也可以使用这个link:https://jsfiddle.net/cse_tushar/9d4jy4ye/

此解决方案与许多 js 库相关。 1. 通过nominatim.openstreetmap.org API 以geojson 格式获取边界。 2. 在 [base]layer

上设置 polygon/multipolygon mask