Placemark란..? 플레이스마크는 구글어스에서 가장 일반적으로 사용하는 요소중에 하나입니다. 이는 지표면 상의 어떤 위치를 표기하는데, 아이콘으로써 노랜색 핀 모양을 사용하여 표시합니다. 가장 단순한 플레이스마크는 오직 <Point> 엘리먼트만을 사용하는데.. 이 엘리먼트에서 플레이스마크의 위치를 나타냅니다. 이름과 다른 표시 아이콘을 지정할 수 있으며 이 엘리먼트에 다른 지오메트리 요소도 추가할 수 있습니다. 간단히 한가지 예를 들어 살펴 보겠습니다.
위의 코드는 다음과 같은 구조를 갖습니다.
- XML 헤더로써 모든 KML 파일에 1번 라인에 해당합니다. 빈공간이나 다른 문자가 이 라이 이전에 올수 없습니다.
- KML 네임스페이스 선언이며 모든 KML 2.2 파일에서 2번째 라인에 해당합니다.
- 다음으로 오는 엘리먼트가 바로 플레이스마크(Placemark)입니다.
- name은 플레이스마크의 라벨 표시에 사용됩니다.
- description은 플레이스마크에 붙은 풍선(ballon)에 나타납니다.
- Point는 지표면 상에 대한 플레이스마크의 위치를 나타냅니다. (위도(latitude)와 경도(longitude)로 표시되며 옵션으로 고도(altitude)도 명시할 수있습니다)
위의 코드를 구글어스에서 표시해 보면 다음과 같습니다.
구글어스에서 플레이스마크로써.. 사용자가 일반적으로 생각하는 것은 실제로 <Point>를 자식 엘리먼트를 갖는 <Placemark> 엘리먼트입니다. 포인트 플레이스마크는 구글어스의 3D 뷰에서 유일하게 아이콘과 라벨을 표시할 수 있는 방법입니다. 기본적으로, 아이콘은 친숙한 노란색 핀입니다. KML에서 <Placemark>는 한가지 이상의 지오메트리 요소를 가질 수 있는데... 예를 들면 라인스트링, 폴리곤 또는 모델이 될 수 있습니다. 그러나 오직 포인트를 가진 플레이스마크만이.. 아이콘과 라벨을 가질 수 있습니다.
여기까지가 플레이스마크의 일반적인 사용이고.. 좀더 응용도를 높이기 위해서 구글어스에서 플레이스 마크로 표시된 아이콘을 더블클릭했을때... 더욱 많은 정보를 표시하는 것에 대해 살펴보겠습니다.. 더욱 많은 정보를 융통성 있게 표기하는 방법으로 HTML을 활용하는 것만큼... 좋은 방법은 없을 것 같습니다.. 아래의 코드를 통해 플레이스 마크에 대한 정보를 HTML로 구성하는 방법을 살펴보겠습니다.
HTML 태그를 넣기 위해서 CDATA 구문을 사용하여 XML 구문의 영향을 받지 않도록 지정하는 것이 포인트입니다.
마지막으로 포인트에 대한 플레이스마크의 아이콘으로 표시되는 노란색 핀 대신... 직접 지정하는 것에 대해 알아보겠습니다. 코드를 통해 살펴보도록 하겠습니다.
즉, 먼저 Style 태그를 통해 아이콘 스타일을 지정해주면 됩니다. 아이콘 스타일은 IconStyle 태그를 통해 지정하며 여기에 색상과 크기.. 그리고 가장 중요한 아이콘에 대한 url을 지정해 주면 됩니다. 참고로의 위의 코드에는 라벨에 대한 스타일도 지정해주는 LabelStyle 태그도 존재합니다. 결과는 다음과 같습니다.
|