KML(ケイエムエル)は、アプリケーション・プログラムにおける三次元地理空間情報の表示の管理などを目的とした情報をXMLで記述するものである。2008年4月にKML2.2版は、そのままOpen Geospatial Consortium (OGC) という地理情報システムオープンソース化を目指す団体の規格にOGC KMLとして取り入れられた[1]

名称の由来

編集

KMLという名称は、もともとKeyhole Markup Language頭字語だったが、OGCに採用された時点で略語ではない語という扱いになった。Keyholeは現在のGoogle Earthの旧名称であり、その開発元がGoogle社と合併するまでの会社名でもある。Keyholeという名称は偵察衛星コロナの型名(KH)にちなむ。

KML文書

編集

XMLで、Google EarthGoogle MapsGoogle Mobileで表示する要素(目印、イメージ、ポリゴン、3次元モデル、説明など)を記述する。3次元モデルはCOLLADA形式で記述することができる。各地点は、常に右手系経緯度情報を持つ。それ以外に、“カメラ・ビュー”を構成するのに必要なティルト、カメラの向き、高度など、より詳細なデータを記述することもできる。KMLはGMLと同様の文法構造を持つ[1]。ただしGoogle MapsやGoogle MobileではKMLで記述された情報の一部は表示することができない[2]。Google Maps(およびそのAPI)では公開ウェブサイトに置いたKMLファイルの記述情報を表示できる。

ファイルとしては、プレーンなXMLの場合は .kml という拡張子を付ける他、ZIPで圧縮した .kmz という拡張子を付けるKMZファイルがある。KMZファイルは内容に、本体である "doc.kml" というファイル一つと、そのファイル中から参照するオーバレイ用のイメージ・ファイルやアイコン用のイメージファイルを含む。

KML文書の例:

 <?xml version="1.0" encoding="UTF-8"?>
 <kml xmlns="http://earth.google.com/kml/2.0">
 <Placemark>
   <description>New York City</description>
   <name>New York City</name>
   <Point>
     <coordinates>-74.006393,40.714172,0</coordinates>
   </Point>
 </Placemark>
 </kml>

KMLのMIMEタイプapplication/vnd.google-earth.kml+xmlであり、KMZはapplication/vnd.google-earth.kmzである。

KMLにおける測地規準系

編集

KMLは、座標の前提となる測地基準系の定義をサポートしていない。したがって、Geomatics(地理情報学?)測地学などの専門的な用途には用いることができない。

パーサー

編集

KMLおよびKMZをパース(解釈)し地図上に表示する機能がアプリケーションなどに備わっている。

KMLを使用するアプリケーション

編集

脚注

編集
  1. ^ OGC KML

関連項目

編集

外部リンク

編集


📚 Artikel Terkait di Wikipedia

Python

Python(パイソン)は、主としてインタープリタ的に実行される高水準汎用プログラミング言語であり、スクリプト言語としても使われる場合もある。 Pythonは1990年代初頭にグイド・ヴァン・ロッサムが開発し、1991年2月に0.9.0として公開された。 最初にリリースされたPython

C言語

ウィキブックスにC言語関連の解説書・教科書があります。 C言語(シーげんご、英: C programming language)は、1972年にAT&Tベル研究所のデニス・リッチーが主体となって開発した汎用プログラミング言語である。英語圏では「C language」または単に「C」と呼ばれることが多い。日本でも文書や文脈によっては同様

Go (プログラミング言語)

Programming Language That’s Python Meets C++”. TechCrunch. https://techcrunch.com/2009/11/10/google-go-language/ 2010年1月18日閲覧。  ^ “Language Design FAQ”

プログラミング言語

プログラミング言語(プログラミングげんご、英語: programming language)とは、コンピュータに対して命令を行うために考案された、正確に定義された記号と規則からなるコンピュータ言語である。以前は、しばしばプログラム言語と表記された。プログラミング言語を使って行う作業のことを「プログラ

CPython

の拡張”. Python 3.13.4 documentation. 2025年6月11日閲覧。 ^ [Cython] is a programming language that makes writing C extensions for the Python language“Cython

Anaconda (Pythonディストリビューション)

Anacondaは、科学計算(データサイエンス、機械学習アプリケーション、大規模データ処理、予測分析など)のためのPythonおよびR言語の自由なオープンソースディストリビューションであり、パッケージ管理とデプロイメントを簡略化することを狙ったものである。パッケージのバージョンは、パッケージ管理システム

軽量プログラミング言語

軽量プログラミング言語(英: lightweight language)は、2001年にMITで開催されたワークショップ「LL1: Lightweight Languages Workshop」のCFPによれば、何らかの実際の機能によるカテゴライズではなく、習得・学習・使用が容易なプログラミング言語

Julia (プログラミング言語)

multi-dimensional Arrays · The Julia Language”. docs.julialang.org. 2024年6月14日閲覧。 ^ “The Julia module PythonCall - Guide · PythonCall & JuliaCall”. juliapy.github