在iObjects.java里可以通过
m_MapControl.getMap().setVisibleScales(new double[]{(double) 1 /250000, (double) 1 /100000, (double) 1 /50000, (double) 1 /25000, (double) 1/10000, (double) 1/5000, (double) 1/2500, (double) 1/1250});
设置地图的比例尺,请问在iClient for Openlayers里应该如何设置?
var scales = [50000, 20000, 10000, 5000, 2500, 1500, 1000, 500, 250, 100, 50];
var dpi = 96;
var inchesPerMeter = 39.37;
var resolutions = scales.map(scale => {
const resolution = scale / (dpi * inchesPerMeter);
return resolution;
});
......
ol.supermap.initMap(url, {
mapOptions: {
target: 'map',
view: new ol.View({
center: [10000000, 4000000],
zoom: 6,
resolutions: resolutions,
minResolution: resolutions[resolutions.length - 1],
maxResolution: resolutions[0],
constrainResolution: true
}),
controls: [
new ol.supermap.control.ScaleLine(),
new ol.control.Zoom({ target: 'zoomDiv' })
]
}
})
我通过以上代码对比例尺进行设置,然后设置在地图上移动时会显示当前状态,但这个现实的状态和ol.supermap.control.ScaleLine()控件显示的比例尺似乎不一致
