by-nc-sa     개발자, DBA가 함께 만들어가는 구루비 지식창고!

KML (Keyhole Markup Language)




개요

  • KML은 Google 어스, Google 지도 및 Google 모바일 지도와 같은 어스 브라우저에서 지리 데이터를 표시하는 데 사용되는 파일 포맷
  • 모든 태그는 대소문자를 구분하며 KML 참조에 나열된 대로 정확하게 표시되어야 함

주요항목

Placemarks (위치표시)

  • 지구상의 어떤 지점을 아이콘(일반적으로 노란색 핀)으로 사용하여 표시
  • 가장 간단한 위치표시에는 <Point> 요소만 들어가는데, 이 경우 해당 위치만 지정 함
  • Placemark의 주요 항목
    • name(이름) : 해당 위치표시의 레이블
    • description(설명문) - 위치표시 풍선에 나타나는 설명
    • Point(점) - 해당 위치표시의 위치를 지정(경도, 위도, 높이는 옵션)
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Placemark>
  <name>New York City</name>
  <description>New York City</description>
  <Point>
    <coordinates>-74.006393,40.714172,0</coordinates>
  </Point>
</Placemark>
</kml>

Ground Overlays (지면 오버레이)

  • 지면 오버레이를 사용하면 지구의 지형 위에 이미지를 '배치'할 수 있음
  • GroundOverlay의 주요 항목
    • Icon : Overlay 이미지 링크
    • LatLonBox : 중첩되는 위치를 지정
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Folder>
    <name>Ground Overlays</name>
    <description>Examples of ground overlays</description>
    <GroundOverlay>
      <name>Large-scale overlay on terrain</name>
      <description>Overlay shows Mount Etna erupting on July 13th, 2001.</description>
      <Icon>
        <href>http://developers.google.com/kml/documentation/images/etna.jpg</href>
      </Icon>
      <LatLonBox>
        <north>37.91904192681665</north>
        <south>37.46543388598137</south>
        <east>15.35832653742206</east>
        <west>14.60128369746704</west>
        <rotation>-0.1556640799496235</rotation>
      </LatLonBox>
    </GroundOverlay>
  </Folder>
</kml>

Paths (경로)

  • `<LineString>` 을 사용해서 생성
<LineString>
  <extrude>1</extrude>
  <tessellate>1</tessellate>
  <altitudeMode>absolute</altitudeMode>
  <coordinates>
    -112.2550785337791,36.07954952145647,2357
    -112.2549277039738,36.08117083492122,2357
    -112.2552505069063,36.08260761307279,2357
    -112.2564540158376,36.08395660588506,2357
    -112.2580238976449,36.08511401044813,2357
    -112.2595218489022,36.08584355239394,2357
    -112.2608216347552,36.08612634548589,2357
    -112.262073428656,36.08626019085147,2357
    -112.2633204928495,36.08621519860091,2357
    -112.2644963846444,36.08627897945274,2357
    -112.2656969554589,36.08649599090644,2357
  </coordinates>
</LineString

Polygon (다각형)

  • Polygon을 사용하여 간단한 건물 및 기타 도형을 만들 수 있다.
<Polygon>
  <extrude>1</extrude>
  <altitudeMode>relativeToGround</altitudeMode>
  <outerBoundaryIs>
    <LinearRing>
      <coordinates>
         -77.05788457660967,38.87253259892824,100
         -77.05465973756702,38.87291016281703,100
         -77.05315536854791,38.87053267794386,100
         -77.05552622493516,38.868757801256,100
         -77.05844056290393,38.86996206506943,100
         -77.05788457660967,38.87253259892824,100
      </coordinates>
    </LinearRing>
  </outerBoundaryIs>
  <innerBoundaryIs>
    <LinearRing>
      <coordinates>
       -77.05668055019126,38.87154239798456,100
       -77.05542625960818,38.87167890344077,100
       -77.05485125901024,38.87076535397792,100
       -77.05577677433152,38.87008686581446,100
       -77.05691162017543,38.87054446963351,100
       -77.05668055019126,38.87154239798456,100
      </coordinates>
    </LinearRing>
  </innerBoundaryIs>
</Polygon>

참고문서

문서정보

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.