RsD0p9BK
4/1/2016 - 10:52 AM

PolygonOpenBaloon.js

// открыть балун в центре полигона

var polygon = new ymaps.Polygon(
  coords, 
  {
      hintContent: hint
  }, 
  {
      fillColor: fill,
      strokeColor: color,
      strokeWidth: 0.2,
      fillOpacity: 0.01,
  }
);

// добавляем полигон на карту
myMap.geoObjects.add(polygon);

// вычислить центр полигона
var pixelBounds = polygon.geometry.getBounds();
var pixelCenter = [pixelBounds[0][0] + (pixelBounds[1][0] - pixelBounds[0][0]) / 2, (pixelBounds[1][1] - pixelBounds[0][1]) / 2 + pixelBounds[0][1]];

// открыть балун в центре полигона
polygon.events.add('click', function () {
  // polygon.balloon.open(pixelCenter);
  myMap.balloon.open(pixelCenter, hint);
});

// https://yandex.ru/blog/mapsapi/46168
// http://jsfiddle.net/B7FtM/2/