Frage

Ich baue eine Web-Anwendung, die dynamisch wird auf bestimmte US-Bundesstaaten und kanadischen Provinzen auf einer Google Map markieren, basierend auf Schaltflächen und klicken Sie auf Ereignisse.

Plan A) Polygonen

Meine primäre Idee dazu war Polygonen zu zeichnen. Dazu muss ich Listen von Koordinaten (Breitengrad + Breite) aller staatlichen und Provinz Umrisse (im Uhrzeigersinn oder gegen den Uhrzeigersinn). Auf Websites der Regierung fand ich alle Arten von verschiedenen Formaten (d E00), aber ich habe Probleme diese Formate in eine einfache Liste von Koordinaten umzuwandeln, die ich Marker erstellen verwenden könnte oder einen Polygon auf einer Karte. Haben Sie irgendwelche Tipps, wo diese Koordinaten bekommen?

Plan B) Overlays

AFAIK, wenn Sie Overlays auf Google Maps verwenden, werden sie pixelig, wie Sie weiter vergrößern (oder können Sie SVGs überlagern?) In meinem Fall würde ich brauche 50 + 11 Overlays im schlimmsten Fall (alle Staaten und alle Provinzen ). Ist das immer noch möglich, mit Google Maps oder wird es unsuably langsam bekommen?

Ich bin ein wenig überrascht, dass es keine geradlinige Art und Weise ist es, einen Staat oder Provinz zu markieren, als würde ich denke, dies ist eine sehr häufigen Aufgaben für die Menschen ist eine API für Karten verwendet wird.

Vielen Dank im Voraus

War es hilfreich?

Lösung

Ich habe XML für US-Bundesstaat Polygonen hier . Ich benutze sie wie dieser .

Ich hielt absichtlich das Detail ziemlich leicht, die Ladezeit zu reduzieren und mit einer Karte am Ende, die in langsamen Browsern vernünftig ansprechbar ist.

Ich habe nichts für Kanada.

Andere Tipps

Mit der XML zur Verfügung gestellt, habe ich eine JSON-Datei mit einem Wörterbuch, das die 50 Staaten, Washington DC und einen groben Überblick der kanadischen Provinzen umfasst SaltyNuts' Kommentar sowie Mike Williams zur Kenntnis, nicht mit irgendetwas für Kanada zu adressieren < a href = "https://drive.google.com/file/d/0BwI7t2lr3BAjTFhhaWVvaWZ0WFU/view?usp=sharing" rel = "nofollow"> json .

Dieses praktische Online-Tool von BirdTheme war, was ich verwendet, um die Polygone für die ziehen Provinzen für alle anderen, die verschiedenen Detailstufen benötigt oder ihren eigenen Satz von Koordinaten zu erstellen.

Hier ist die Info für kanadische Provinzen. Ich habe nur die erste GPS aus der Google Map Link koordinieren kopiert.

/**
 * Searched for Alberta, Canada and copied the first thing after the @ sign
 * @see https://www.google.bg/maps/place/Yukon+Territory,+Canada/@64.5610006,-141.332713,5z/data=!3m1!4b1!4m5!3m4!1s0x51178198b4528b89:0x2e149cd561cc96ea!8m2!3d64.2823274!4d-135?hl=en
 * @var array
 */
$provinces_gps = array(
    "AB" => "54.1784838,-123.9541477",
    "BC" => "53.8348151,-135.5103986",
    "MB" => "54.1798816,-104.4465713",
    "NB" => "46.2679312,-68.6551949",
    "NL" => "53.1668149,-69.1783083",
    "NT" => "68.4817407,-136.7732486",
    "NS" => "45.2906308,-65.2759181",
    "NU" => "63.5954344,-124.1555502",
    "ON" => "48.9347914,-93.7155729",
    "PE" => "46.5031512,-63.7525627",
    "QC" => "53.4650568,-77.3895206",
    "SK" => "54.1797758,-114.6389862",
    "YT" => "64.5610006,-141.332713",
);

Alte Frage, aber Sie können eine detailliertere Reihe von Punkten für jede US-Staatsgrenze von der Google-Website unter https://developers.google.com/kml/documentation/us_states.kml

Es braucht ein wenig Parsen der XML-though.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top