Trouver le centre de la Foliole polygone?

J'ai un tas de notice de polygones sur une carte que j'ai créée. Chaque polygone représente quelque chose de différent. Un ensemble spécifique de l'information est affichée dans une fenêtre en fonction de la page que l'utilisateur est sur. J'ai besoin de trouver un moyen de faire de la "popup" bulle ouvert dans le centre du polygone qu'il représente.

Chaque polygone est dessiné à l'aide du code suivant:

var L20 = [
    [74.0995, -99.92615],
    [74.14008, -99.4043],
    [74.07691, -99.33838],
    [74.03617, -99.86023]
];



var L19 = [
    [74.02559, -99.84924],
    [74.06636, -99.32739],
    [74.0029, -99.26147],
    [73.96197, -99.77783]
];

var L18 = [
    [73.95142, -99.76684],
    [73.99235, -99.25048],
    [73.92889, -99.18456],
    [73.8878, -99.69543]
];

var set1 = L.polygon([L20, L19, L18], {
    color: "#fff",
    weight: 1,
    stroke: true,
    opacity: 0.05,
    fillColor: "#346B1F",

}).addTo(map);

Le popup est dessiné à l'aide du code suivant:

var popup = L.popup({})
    .setLatLng([73.64017, -100.32715])
    .setContent(content).openOn(map);
    var popup = L.popup();

Donc j'ai besoin de trouver un moyen pour .setLatLang pour déterminer ou le centre du polygone.

Je suis venu avec 3 solutions qui peuvent travailler, vous ne savez pas comment vous y prendre.

  1. trouver un moyen d'utiliser les coordonnées d'un polygone à déterminer le centre du polygone où la popup s'ouvre.
  2. appel un point du polygone, puis décaler la position de la fenêtre contextuelle.
  3. Utiliser un id pour chaque polygone, de sorte que chaque popup sait la zone de la boîte (polygone), il peut être ouvert en.

Quelqu'un peut m'aider s'il vous plaît?

OriginalL'auteur Nxlevel | 2014-04-01