Я сделал несколько пользовательских наложений для проекта Google Maps, над которым работаю. Проблема, с которой я сталкиваюсь, заключается в том, что когда я позиционирую наложение, он позиционирует его на основе верхнего левого угла наложения, поэтому при увеличении и уменьшении масштаба кажется, что наложение постепенно перемещается вправо и вниз. Мне нужно, чтобы он располагался от центра, поэтому я попробовал:
var point = this.getProjection().fromLatLngToDivPixel(this.latlng_);
if (point) {
div.style.left = point.x - $(this.content).outerWidth(true)/2 + 'px';
div.style.top = point.y - $(this.content).outerHeight(true)/2 + 'px';
}
где div - это наложение, point.x и point.y составляют верхний левый угол наложения. Я думал, что если бы я вычел ширину / 2 и высоту / 2 наложения, он бы центрировал его. Кажется, это отлично работает с шириной для x, но для y позиция все еще постепенно смещается вниз, когда я уменьшаю масштаб карты.