KML FAQ


KML이란 무엇인가요?

KML은 Google 어스, Google 지도 및 Google 모바일 지도와 같은 어스 브라우저에서 지리 데이터를 표시하는 데 사용되는 파일 형식입니다. KML 파일을 만들어 새로운 방식으로 위치를 지정하고 이미지 오버레이(Image Overlay)를 추가하며 풍부한 데이터를 표시할 수 있습니다. KML은 OGC(Open Geospatial Consortium, Inc.)에서 관리하는 국제 표준입니다.

KML은 누가 사용하나요?

Google 어스 커뮤니티 포럼을 방문해 보면 아시겠지만 KML 커뮤니티는 매우 크고 또 다양한 사람들이 모여있습니다. 일반 사용자는 KML 파일을 만들어 집을 위치표시하고 여행을 기록하며 국토 장정이나 자전거 여행을 계획할 수 있습니다. 과학자는 KML을 사용하여 화산 폭발, 기후 패턴, 지진 활동 및 광물 분포와 같은 자원, 모델 및 동향과 관련된 자세한 매핑 정보를 제공할 수 있습니다. 부동산 전문가, 건축가 및 도시 개발 대행사에서는 KML을 사용하여 사업 계획을 제안하고 시각화할 수 있습니다. 학생과 교사는 KML을 사용하여 과거와 현재의 인물, 장소 및 이벤트를 탐색할 수 있습니다. National Geographic, UNESCO 및 Smithsonian과 같은 조직에서도 모두 KML을 사용하여 전 세계의 풍부한 데이터세트를 표시하고 있습니다.

KML 파일은 어떻게 만드나요?

KML 파일을 만드는 데 사용되는 기본 도구로는 세 가지가 있습니다.

  • Google 어스: KML 파일을 만드는 데 사용하는 가장 중요한 도구입니다. Google 어스를 사용하면 다음과 같은 항목을 만들 수 있습니다.
    • 위치표시
    • 경로(Paths)
    • 다각형(Polygon)
    • 이미지 오버레이(Image Overlay)
    • 네트워크 링크(Network Link)
    • 장소(Place) 모델
    • 위에 나열된 항목을 포함하는 폴더(Folder)
    • 사진 오버레이(PhotoOverlay)
  • 이 중 하나의 개체를 만든 다음 '장소' 패널에서 오른쪽 클릭하여 '복사'를 선택합니다. 그런 다음에는 복사한 개체를 텍스트 편집기나 XML 편집기에 붙여넣은 후 수정하면 됩니다.

  • 텍스트 편집기: Google 어스에서 만든 개체를 텍스트 편집기에 붙여 넣은 후 수정할 수 있습니다.
  • XML 편집기: KML은 지리 콘텐츠를 표현하는 XML 언어입니다. XML 편집기는 고급 텍스트 편집기로서, XML 문서를 만들 때 활용할 수 있는 여러 도구를 제공합니다. 이러한 도구로는 올바른 닫기 태그로 KML 요소를 닫을 수 있게 해주는 태그 완료 도구가 있습니다.

이 외에도 Google 어스 커뮤니티의 사용자가 제작한 수많은 도구가 존재합니다. KML 개발자 지원 Google 그룹을 참조하세요.

KMZ 파일은 어떻게 실행하나요?

KMZ 파일은 Google 어스에서 볼 수 있는 하나 이상의 파일 모음을 압축해 놓은 파일입니다. 이 파일은 zip 형식을 사용하여 압축됩니다. Windows의 경우 'WinZip', '7-Zip' 또는 기본 Windows XP 압축 폴더 도구로, Mac OS의 경우 'Stuffit'과 같은 일반 압축 도구를 사용하여 열 수 있으며, 'zip'은 Mac OS나 Linux 모두에서 사용할 수 있습니다. 압축 도구에서 파일을 인식하도록 하려면 .kmz 확장자를 .zip으로 변경해야 하며, 파일을 다시 사용하려면 확장자를 .kmz로 다시 변경해야 합니다.

천문학 데이터를 KML로 만들려면 어떻게 해야 하나요?

KML을 사용하여 천체 데이터를 나타낼 수 있으며, KML을 Google 스카이나 Microsoft WorldWide Telescope에 로드할 수 있습니다. 자세한 내용은 KML 스카이 데이터 도움말을 참조하세요.

Google 어스에서는 어떤 KML 태그가 지원되나요?

Google 어스에서는 모든 KML 태그가 지원됩니다. 전체 태그 목록은 KML 사양을 참조하세요.

Google 지도에서는 어떤 KML 태그가 지원되나요?

Google 지도에서는 KML 태그의 하위 집합을 지원합니다. 여기에서 목록을 확인하세요.

개발자 가이드는 어디에서 찾을 수 있나요?

개발자 가이드는 https://developers.google.com/kml/documentation/topicsinkml.html에서 확인할 수 있습니다.


선이 사라지는 이유는 무엇인가요?

유도선이 지면에 고정(clampToGround)인 경우 지구의 곡선을 따라가는 데 아무런 문제가 없습니다 하지만 '지면 기준'(relativeToGround)인 경우 위치 지점을 더 추가해야 하며 그렇지 않으면 유도선이 지구본이나 지형을 관통하는 직선 경로의 연장된 선으로 그려집니다.

예를 들어 다음 예제의 유도선은 지면을 관통하게 되고, 이에 따라 사라지는 것처럼 보이게 됩니다.

<kml xmlns="http://www.opengis.net/kml/2.2">
  <Placemark>
    <name>Untitled Path</name>
    <LineString>
      <tessellate>0</tessellate>
      <altitudeMode>absolute</altitudeMode>
      <coordinates>-115.415105,40.669016 -37.752364,34.879979</coordinates>
    </LineString>
  </Placemark>
</kml>

위치 지점을 더 추가하면 지면 아래에 놓인 선의 길이가 줄어듭니다. 선이 지형을 따르도록 하려면 <tessellate> 또한 '1'로 설정해야 합니다.

<Placemark>
  <name>Untitled Path</name>
  <LineString>
    <tessellate>1</tessellate>
    <altitudeMode>relativeToGround</altitudeMode>
    <coordinates>
      -134.148103,37.752967 -128.917074,38.803008
      -125.166954,39.583592 -122.137625,39.656880
      -120.421783,40.036311 -118.298157,40.235316
      -114.348386,40.631532 -112.670431,40.761033
      -111.916045,40.681939 -110.177711,40.653055
      -109.544331,40.619327 -107.155697,40.642007
      -105.410526,40.421505 -103.192299,40.430138
      -102.853712,40.427904 -98.168302,40.363524
      -97.093391,40.308754 -94.831304,40.479175
      -93.760070,40.395392 -84.913828,39.466651
      -84.414888,39.387332 -81.380660,39.188551
      -80.276261,38.977744 -77.811560,38.872542
      -75.062267,38.521146 -72.006956,38.101733
      -66.67819,37.664687
    </coordinates>
  </LineString>
</Placemark>
KML에서 원을 그릴 수 있나요?

KML에는 원(Circle) 도형이 없지만 여러 개의 밀접한 좌표를 가지는 유도선을 사용하여 원에 가까운 도형을 만들 수 있습니다. 여기에서 예제를 확인하세요.

유도선(LineString)을 대시나 화살표로 변경할 수 있나요?

<LineStyle>을 사용하면 선의 색상, 투명도 및 길이를 변경할 수 있습니다. 하지만 KML의 선 유형을 변경하는 기능은 현재 KML에 지원되지 않습니다.

위치표시(Placemark) 라벨은 어떻게 숨기나요?

Google 어스에서 위치표시 옆에 표시되는 라벨은 <name> 요소에 기반합니다. 라벨 스타일에서 크기(scale) 요소를 0으로 설정하여 라벨을 숨길 수 있습니다.

<Style id="hideLabel">
  <LabelStyle>
    <scale>0</scale>
  </LabelStyle>
</Style>
파싱 오류가 표시되는 이유는 무엇인가요?

파싱 오류가 발생하는 두 가지의 주요 원인은 다음과 같습니다.

  1. 대소문자 구분: 다른 모든 XML 언어와 마찬가지로 KML은 대소문자를 구분하며, 모든 요소 이름에 올바른 대소문자가 사용되어야 합니다(예: <Placemark> (o) <PLACEMARK> (x), <href> (o) <Href> (x), <Link> (o) <lInk> (x)).
  2. 불완전한 태그: 모든 요소는 동일한 태그로 시작되고 종료되어야 합니다. 사용자가 실수로 태그를 닫지 않거나 꺾쇠 괄호(< 또는 >)를 포함하지 않는 경우가 가끔 발생합니다.

    예:
    <name>Atlanta</name> (o)
    <name>Atlanta (x)
    <nameAtlanta</name> (x)
    <nameAtlanta<name> (x)
작성한 KML 파일이 올바른지 확인하려면 어떻게 해야 하나요?

KML은 XML 마크업 언어이며, 다음과 같은 다양한 방식 중에서 하나를 선택하여 확인할 수 있습니다.

  • Oxygen 또는 Netbeans 등의 XML 편집기를 구하여 문서 확인 시 사용할 수 있습니다. XML 편집기의 설명서를 참조하세요. 확인 작업을 수행하려면 KML 스키마가 필요합니다.
  • FeedValidator.org 사이트 또는 Galdos의 KML Validator와 같은 온라인 검사 도구를 사용하여 확인할 수 있습니다. 이러한 도구를 사용하면 오류가 표시되며, 몇 가지 추천 스타일까지 제공됩니다.
  • 일부 텍스트 편집기를 사용하여 XML을 확인할 수 있습니다. 예를 들면 jEdit을 사용하여 KML을 확인할 수 있습니다. Google Earth 공익사업 팀의 가이드를 참조하세요.
사용자가 지면에 접근할 때 더 많은 세부정보가 보이도록 화면에 표시되는 항목을 관리할 수 있는 방법이 있나요?

지역(Region) 태그를 사용하여 사용자에게 표시할 기능을 관리할 수 있습니다. 지역에 대한 자세한 내용은 다음을 참조하세요.

다중 도형(MultiGeometry) 요소의 여러 도형에 각각 다른 색상이나 스타일을 지정할 수 있나요?

다중 도형 요소는 동일한 위치표시 요소로 도형을 그룹화합니다. 이를 통해 도형은 동일한 스타일을 공유하고 Google 어스의 내 장소와 같은 목록에 하나의 항목으로 표시될 수 있습니다.

스타일은 위치표시 수준에서 설정되며, 스타일 URL(styleURL) 요소 또는 스타일(Style) 요소 중 하나가 사용됩니다. 따라서 한 위치표시의 개별 도형은 서로 다른 스타일을 가질 수 없습니다.

흔히 사용되는 해결 방법은 도형별로 별도의 위치표시를 만들어 각 도형이 서로 다른 스타일을 가지도록 하는 것입니다. 목록의 항목이 늘어나는 것을 방지하려면, listItemType이 checkHideChildren로 설정된 ListStyle이 있는 폴더에 항목을 배치하면 됩니다. 예를 들어 Google 어스에서 이 방법을 사용하면 동일한 폴더 내의 모든 위치표시가 내 장소에 배치되며, 사용자가 폴더를 열어 많은 수의 요소가 표시되는 것을 방지할 수 있습니다.


KML 파일을 열 때 풍선이 열리도록 할 수 있나요?

현재 KML 파일 실행 시 풍선을 열 수 없습니다. 하지만 지점 앵커를 사용하면 두 번째 KML 파일이나 다른 풍선을 여는 링크를 풍선 내에 만들 수 있습니다.

네트워크 링크(NetworkLink)가 새로고침될 때 풍선이 계속 열려있게 할 수 있나요?

현재 KML에서는 네트워크 링크가 새로고침되어도 풍선 상태를 유지하는 기능을 지원하지 않습니다.

내 사용자가 만든 KML을 볼 수 있나요?

현재 네트워크 링크를 사용하여 사용자가 Google 어스나 지도에서 만든 KML을 캡처할 수 없습니다. 하지만 Earth API 또는 Google Maps API를 KML 작성 도구로 사용하면 관련 정보를 서버로 다시 캡처할 수 있습니다. 자세한 내용은 GeoDataStore를 참조하세요.

KML의 타임 슬라이더를 제어할 수 있나요?

KML의 타임 슬라이더는 타임 스탬프(TimeStamp) 또는 타임 스팬(TimeSpan) 요소가 포함된 KML 파일이 실행되는 즉시 열립니다. 타임 슬라이더는 현재 선택되어 있는 모든 타임 스탬프 및 타임 스팬 요소를 찾아낸 후 찾아낸 모든 날짜를 수용할 수 있도록 조정됩니다. 현재 KML에서는 선택한 현재 시간을 설정하거나 타임 스팬이 표시되는 범위를 선택하는 것과 같은 타임 슬라이더의 추가 제어 기능이 지원되지 않습니다. 시간(Time) 사용에 대한 자세한 내용은 시간 및 애니메이션 도움말을 참조하세요.

KML에 상호작용 기능을 구축하려면 어떻게 해야 하나요? KML 설명 풍선의 HTML에 양식을 넣을 수 있나요?

현재 Google 어스의 KML은 상호작용이 아닌 프리젠테이션을 설명하는 HTML의 하위 집합만 지원합니다. 양식이 포함된 KML은 Google 지도에서 작동합니다.

하지만 Google 어스에서 사용되는 KML에 플래시 양식을 제작해 넣을 수 있습니다. 이렇게 하려면 플래시 애플리케이션을 KML 설명 풍선의 HTML에 삽입합니다. 이 방식은 Google 지도에서는 작동하지 않습니다.


스프레드시트에서 KML을 자동으로 생성할 수 있나요?

기본적인 몇 가지 방법으로 생성할 수 있습니다.

  • 프로그래밍 방식으로 직접 생성합니다. 본인의 애플리케이션을 사용하여 CSV 파일을 파싱하고, 이 파일에서 KML을 생성합니다. CSV 파일을 KML로 변환에서 예제를 확인하세요.
  • 온라인 스프레드시트를 사용합니다. 예를 들어 Google Earth 공익사업 팀에서 Google 스프레드시트에 기반하여 만든 스프레드시트 매핑 도구를 사용할 수 있습니다.
  • Excel 파일에서 KML 파일을 생성하는 도구(예: [link to tek's thread])를 사용합니다.
  • Google 어스 플러스 또는 프로를 사용하여 파일을 로드한 다음 이를 KML 또는 KMZ 파일로 저장합니다.
웹 서버에서 내 KML 파일이 정상적으로 다운로드되지 않는 이유는 무엇인가요?

제공하는 파일의 종류를 웹 서버에 알려야 합니다. Firefox와 같은 일부 브라우저는 파일 유형에 따라 이를 추측하며, Internet Explorer와 같은 다른 브라우저는 웹 서버의 MIME 유형 설정에 의존합니다.

Apache 서버의 경우 아래 두 행을 httpd.conf에 추가합니다.

AddType application/vnd.google-earth.kml+xml .kml
AddType application/vnd.google-earth.kmz .kmz

Microsoft 인터넷 정보 서버의 경우 다음과 같은 지침을 따릅니다.

IIS 6.0 버전

http://support.microsoft.com/kb/326965

IIS 4.0 및 5.0

http://www.microsoft.com/technet/prodtechnol/windows2000serv/technologies/iis/maintain/featusability/mimeiis.mspx

본인의 웹 서버를 관리하는 경우 자체적으로 설정을 변경하거나 서비스를 호스팅하는 웹사이트에 문의하여 변경을 요청합니다.


풍선 콘텐츠에서 형식이 잘못 지정된 이미지 URL을 사용 중일 수 있다는 메시지가 표시되는 이유는 무엇인가요?

최근 Google 어스에 적용된 변경사항으로 인해 지점 풍선 내 콘텐츠에서 링크가 처리되는 방식이 변경되었고, 이에 따라 이전에 지정되지 않았던 동작이 더 명확하게 표시됩니다. 따라서 잘못된 링크 구조를 가진 KMZ 내의 링크를 클릭하면 '클릭한 링크 형식이 잘못 지정되었을 수 있습니다. 기존 모드를 사용해 시도하려면 아래 링크를 클릭하세요.'라는 메시지가 표시되는 페이지로 이동합니다. 이 메시지가 표시되는 경우 KML/KMZ 콘텐츠의 구조를 변경하여 Google 어스의 향후 버전과 완벽히 호환되도록 해야 합니다.

자세한 정보는 이 도움말을 참조하세요. 여기에는 KMZ 콘텐츠의 구조를 올바르게 다시 구성하는 방법이 포함되어 있습니다.

새로운 상대 경로 규칙에 의해 영향을 받는 콘텐츠는 어떤 것이 있나요?

현재는 지점 풍선 콘텐츠 내에 있는 URL 링크만 영향을 받습니다. 여기에는 <BallonStyles> 내에 있는 <description> 및 <text>도 포함됩니다. 하지만 Google 어스의 향후 버전에서는 일관성이 더 개선될 예정이므로 KMZ 콘텐츠의 상대 링크를 위한 기본 URL로 상위 디렉토리를 사용하지 마시기 바랍니다.


Google 어스의 내 장소에 있는 KML은 Google 서버로 전송되나요?

아니요. Google 어스에서 생성되었거나 사용자가 Google 어스에서 로드한 KML은 Google에 전송되지 않습니다. 이 데이터의 처리와 보관은 모두 로컬 시스템에서 이루어집니다.

맨위로