2017-03-05 2 views
1

Ich habe eine einfache Frage. Ich wollte ein google.maps.Polygon um google.maps.Polyline zeichnen. Ich implementierte es durch Mischen von Lösungen, die in How to draw a polygon around a polyline in JavaScript? erwähnt werden. Meine Frage betrifft die Breite des Puffers. Wenn Sie sich das Beispiel in https://coderwall.com/p/zb_zdw/buffered-polyline ansehen, können Sie sehen, dass der Puffer breiter ist, wenn die Polylinie horizontal ist. Wenn die Linie vertikal ist, ist der Puffer kleiner. Warum das? Ist das korrekt? Beispiel aus meinem Programm: https://ibb.co/i2m2BFWarum variiert die Breite einer mit JSTS gepufferten Polylinie mit dem Breitengrad?

+0

Hallo, gleiche Frage/Frage auf meiner Seite Haben Sie eine Antwort/Lösung gefunden? Danke –

+0

Ich wechselte TurfJS http://turfjs.org/docs/#buffer, die vor kurzem (was für ein Glück) ein ähnliches Problem in ihrer Bibliothek behoben. Es funktioniert gut und akzeptiert auch Meilen und Kilometer, als Distanzeinheiten –

Antwort

1

Die Breite des Polygons wird in Grad angegeben. Aus dem Code:

var distance = 10/111.12, // Roughly 10km) 

Die Länge eines Längengrads variiert mit dem Breitengrad.

+1

Danke, es macht jetzt Sinn, aber leider ist es ein Problem für mich. Ich sollte eine Fläche von 5 Meilen um die Polylinie machen und diese Lösung ist nicht präzise. Weißt du eine Lösung, die mir helfen würde? Weil das bedeutet, dass wenn Sie eine horizontale Linie haben, der Puffer 2 mal größer ist als in der vertikalen Linie. (90 vs 180 Grad) –

+1

Ich implementierte mein ganzes Programm und alle anderen Funktionen funktionieren perfekt. Dieser stört mich, aber ich weiß nicht, wie ich es ändern könnte und immer noch ein Polygon als Puffer um Polylinie haben. –

Verwandte Themen