Использование mapbox-gl-native в Node.js Мне нужно выяснить фактические границы карты после рендеринга. Я рендеринга карты, как указано в README.md проекта:mapbox-gl: вычислить границы границ от центральной точки, уровня масштабирования и размеров
var fs = require('fs');
var path = require('path');
var mbgl = require('mapbox-gl-native');
var sharp = require('sharp');
var options = {
request: function(req, callback) {
fs.readFile(path.join(__dirname, 'test', req.url), function(err, data) {
callback(err, { data: data });
});
},
ratio: 1
};
var map = new mbgl.Map(options);
map.load(require('./test/fixtures/style.json'));
map.render({zoom: 12.25, center: [-122.67, 45.52]}, function(err, buffer) {
if (err) throw err;
// TODO: get map extent
// var extent = map.extent();
// extent is {minX: ..., maxX: ..., minY: ..., maxY: ...} or similar...
map.release();
var image = sharp(buffer, {
raw: {
width: 512,
height: 512,
channels: 4
}
});
// Convert raw image buffer to PNG
image.toFile('image.png', function(err) {
if (err) throw err;
});
});
После того, как карта оказывается, я хотел бы узнать, каковы границы оказанной карты являются. Кто-нибудь знает, возможно ли это с mapbox-gl-native
или если это что-то, что можно добавить в API в будущей версии? Или есть другой способ рассчитать фактические границы карты просто с уровня масштабирования, центра карты и размеров карты?
Я использовал и немного скорректировал excellent answer @JohnS на аналогичный вопрос, чтобы рассчитать уровень масштабирования с заданной протяженности. Может быть, есть способ вернуть этот расчет, чтобы получить реальную степень?
спасибо, большая находка! Я проверю это... – forrert