Как рассчитать пиксели в листовке
Я работаю с плагинами листовок, вычисляю расстояние между двумя точками полилинии или все расстояние соединения / нескольких линий
Работа: я настроил скрипт для измерения расстояния в метрах при использовании изображения в качестве карты...
скрипт
function showPolygonArea(e) {
featureGroup.addLayer(e.layer);
var tempLatLng = null;
var totalDistance = 0.00000;
$.each(e.layer._latlngs, function (i, latlng) {
if (tempLatLng == null) {
tempLatLng = latlng;
return;
}
//transformation experiment
totalDistance += tempLatLng.distanceTo(latlng);
tempLatLng = latlng;
userDistanceVal = totalDistance / 100000;
});
e.layer.bindPopup((totalDistance / 100000).toFixed(2) + ' meters');
e.layer.openPopup();
}
Проблема:
здесь (1) я хочу вернуть totalDistance в пикселях вместо метров....
(2) и здесь, как я могу использовать функцию layerPoint или containerPoint? (как я борюсь за понимание использования)
У меня так мало опыта в javascript, если вы делаете или спрашиваете что-то глупое, пожалуйста, игнорируйте... Если это возможно, помогите...
Любая ссылка или помощь будут оценены.. спасибо за ваше время
1 ответ
To (1): Вы можете использовать что-то вроде map.crs.latLngToPoint(latlng, map.getZoom());
чтобы получить точечно-пиксельное представление latlng
-точка на текущем уровне масштабирования.