문제

버튼과 클릭 이벤트를 기반으로 Google지도에서 특정 미국 주와 캐나다 지방을 동적으로 강조 할 웹 응용 프로그램을 작성하고 있습니다.

계획 a) 다각형

이것에 대한 나의 주요 아이디어는 다각형을 그리는 것이 었습니다. 이를 위해서는 모든 주 및 지방 개요 (시계 방향 또는 시계 반대 방향)의 좌표 (위도 + 경도) 목록이 필요합니다. 정부 웹 사이트에서 모든 종류의 다른 형식 (예 : E00)을 찾았지만 이러한 형식을 간단한 좌표 목록으로 변환하는 데 어려움이 있습니다. 이 좌표를 어디서 얻을 수있는 팁이 있습니까?

계획 b) 오버레이

AFAIK, Google지도에서 오버레이를 사용하면 더 확대 할 때 (또는 SVG를 오버레이 할 수 있습니까?) 최악의 경우 (모든 주 및 모든 지방)에서 50 + 11 오버레이가 필요합니다. Google지도에서 여전히 가능합니까?

나는 맵에 API를 사용하는 사람들에게 매우 일반적인 작업이라고 생각하기 때문에 주 또는 지방을 강조하는 직접적인 방법이 없다는 것이 약간 놀랍습니다.

미리 감사드립니다

도움이 되었습니까?

해결책

우리 주 다각형을위한 XML이 있습니다 여기. 나는 그들처럼 사용합니다 이것.

나는 로딩 시간을 줄이고 느린 브라우저에서 합리적으로 반응하는 맵으로 끝나기 위해 세부 사항을 상당히 가볍게 유지했습니다.

캐나다에는 아무것도 없습니다.

다른 팁

제공된 XML을 사용하여 50 개 주, 워싱턴 DC 및 캐나다 지방의 거친 개요와 Saltynuts의 의견을 다루는 사전과 캐나다에 대한 아무것도 없다는 메모를 포함하는 사전이 포함 된 JSON 파일을 만들었습니다. 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",
);

오래된 질문이지만 Google 웹 사이트에서 각 미국 주 국경에 대해 더 자세한 포인트를 얻을 수 있습니다. https://developers.google.com/kml/documentation/us_states.kml

그래도 XML의 약간의 구문 분석이 필요합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top