Leaflet: Polígonos superpuestos GeoJSON MultiPolygon no llenos

Creado en 21 ago. 2015  ·  3Comentarios  ·  Fuente: Leaflet/Leaflet

No estoy seguro de si esto está relacionado con # 3498, pero aquí vamos:

Si tiene dos polígonos parcialmente superpuestos en un GeoJSON MultiPolygon en Leaflet 0.7.3, el área superpuesta se rellena. Pero en el maestro, el área superpuesta no se llena mientras que el área no superpuesta sí lo está.

Aquí hay un ejemplo de GeoJSON:

{
  "geometry": {
    "type": "MultiPolygon", 
    "coordinates": [
      [
        [
          [
            11.96485, 
            55.8434
          ], 
          [
            11.868584, 
            55.8284
          ], 
          [
            11.837216, 
            55.8925
          ], 
          [
            11.863167, 
            55.915432
          ], 
          [
            11.936167, 
            55.896618
          ], 
          [
            11.964784, 
            55.858032
          ]
        ]
      ], 
      [
        [
          [
            11.868584, 
            55.8284
          ], 
          [
            11.761567, 
            55.81378
          ], 
          [
            11.726833, 
            55.896
          ], 
          [
            11.782117, 
            55.928215
          ], 
          [
            11.8749, 
            55.92655
          ], 
          [
            11.863167, 
            55.915432
          ], 
          [
            11.936167, 
            55.896618
          ], 
          [
            11.964784, 
            55.858032
          ], 
          [
            11.96485, 
            55.8434
          ]
        ]
      ]
    ]
  }, 
  "type": "Feature", 
  "properties": {}
}

Atentamente,
Jesper

bug

Comentario más útil

Intente configurar fillRule: 'nonzero' en sus opciones de estilo de polígono. Consulte también https://github.com/Leaflet/Leaflet/pull/2834 , https://developer.mozilla.org/docs/Web/SVG/Attribute/fill-rule y https://mourner.github.io/ Leaflet / reference.html # path -fillrule

Responda aquí después de intentarlo.

Todos 3 comentarios

Intente configurar fillRule: 'nonzero' en sus opciones de estilo de polígono. Consulte también https://github.com/Leaflet/Leaflet/pull/2834 , https://developer.mozilla.org/docs/Web/SVG/Attribute/fill-rule y https://mourner.github.io/ Leaflet / reference.html # path -fillrule

Responda aquí después de intentarlo.

Gracias por la ayuda Iván. Agregar fillRule: 'distinto de cero' solucionó el problema.

Probablemente también debería mencionar que tampoco es posible hacer clic en las áreas superpuestas cuando fillRule no es 'distinto de cero' (asumiendo que un detector de eventos está adjunto a la capa).

No he cerrado el problema ya que es posible que desee considerar si fillRule: 'nonzero' es un valor predeterminado mejor que 'evenodd' para características de tipo "multipolygon".

Atentamente,
Jesper

Dejaremos 'evenodd' como predeterminado por ahora.

¿Fue útil esta página
0 / 5 - 0 calificaciones