2016-06-28 6 views
2

Ich denke, die gezeichneten Formen zu speichern und bei Bedarf in die Karte zu laden. Wenn ich point und circle zeichne, gibt es dasselbe geoJSON. Art der beiden Formen sind point. Ich kann den Unterschied nicht unterscheiden. Wenn ich den circle geoJSON auf die Karte lade, wird es als point geladen.eckig-Prospekt: ​​Zeichenkontrolle: GeoJSON von Kreis und Punkt sind gleich. Wie unterscheidet man?

demo

Kasse des Konsolenprotokoll aus dem Screenshot.

leaflet

is't einen Fehler oder ich etwas falsch? Bitte Beratung.

Antwort

1

Sie sind die gleichen, weil sie mit den gleichen Informationen dargestellt werden können, aber symbolisiert anders.

Denken Sie an Folgendes: Was ist die GeoJSON-Darstellung einer blauen Linie gegenüber einer roten Linie? Sie sind gleich, aber eins ist blau und das andere ist rot dargestellt.

Das Gleiche gilt für Punkte: Sie können einen Punkt mit einem blauen Kreis oder einem gelben Quadrat oder einem blauen Pfeil oder einem Wort symbolisieren. Ihr Datenmodell ist das gleiche, ihre Symbolisierung ist anders.

+0

gespeichert habe Ich habe ein Problem beim Speichern des GeoJSON. In der Karte können wir zeigen, wie Sie vorgeschlagen haben. Aber sobald du es gespeichert und wieder zurückgeholt hast. Wie unterscheidet man? Bze-Geometrie-Typ von beiden ist "Point", Wie kann ich das erkennen, das ist "Kreis" und "Punkt". –

+0

Sie verwenden 'layer.asGeoJSON()'. Benutze Dinge wie 'layer instanceof L.Point' und greife auf' layer.options'. – IvanSanchez

1

GeoJSON unterstützt keine Kreise. Es macht das Beste, was es mit dem Punkt kann. Ich habe es umgangen, indem ich den Radius als eine Eigenschaft des Merkmals

Verwandte Themen