質問

ボタンとクリックイベントに基づいて、Googleマップで特定の米国の州とカナダの州を動的に強調表示するWebアプリケーションを作成しています。

プランA)ポリゴン

これに対する私の第一のアイデアは、ポリゴンを描くことでした。そのためには、州と県のすべてのアウトライン(時計回りまたは反時計回り)の座標(緯度+経度)のリストが必要です。政府のウェブサイトでは、あらゆる種類のフォーマット(つまりE00)を見つけましたが、これらのフォーマットを座標の単純なリストに変換するのに苦労しています。これを使用して、マーカーやマップ上のポリゴンを作成できます。これらの座標を取得するヒントはありますか?

プランB)オーバーレイ

AFAIK、Googleマップでオーバーレイを使用すると、さらにズームインするとピクセル化されます(またはSVGをオーバーレイできますか?) )。 Googleマップでもそれは可能ですか、それとも遅くなりますか?

これは地図用のAPIを使用する人々にとって非常に一般的なタスクだと思うので、州や県を強調表示する簡単な方法がないことに少し驚いています。

事前に感謝

役に立ちましたか?

解決

米国の州のポリゴンのXMLをこちらで取得しています。 this のように使用します。

ロード時間を短縮し、遅いブラウザーで合理的に応答するマップを作成するために、意図的に細部をかなり軽くしました。

カナダには何もありません。

他のヒント

提供されたXMLを使用して、50州、ワシントンDC、カナダの州の大まかな概要を含む辞書でJSONファイルを作成し、SaltyNutsのコメントに加えて、カナダには何も持たないというマイクウィリアムズのメモに対処しました< href = "https://drive.google.com/file/d/0BwI7t2lr3BAjTFhhaWVvaWZ0WFU/view?usp=sharing" rel = "nofollow"> json 。

BirdThemeのこの便利なオンラインツールは、さまざまな詳細レベルを必要とする、または独自の座標セットを作成する必要がある他の人のための州。

カナダの州の情報です。 Googleマップリンクから最初のGPS座標のみをコピーしました。

/**
 * 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",
);

古い質問ですが、 https://developers.google.com/kml/documentation/us_states.kml

ただし、xmlを少し解析する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top