admin管理员组

文章数量:1530891

2023年12月23日发(作者:)

Google Earth KML中文说明

基于Google Earth客户端版本3.0 的KML 版本2.0

本文来源于Google由翻译并整理,若有任何疑问,可到评论区留言

KML 2.0介绍

KML全称是Keyhole Markup Language KML,是一个基于XML语法和文件格式的文件,用来描述和保存地理信息如点、线、图片、折线并在Google

Earth客户端之中显示, (KML以前的版本能够被Google Earth读取并保存为KML 2.0) KML 2.0提供以下功能:

指定一个地点的图标和标注来区分每一个地点

为每一个视图指定明确的视角来创建不同的特写镜头

使用指定到屏幕或地理位置的图片标注

为特定种类的标注定义显示样式

为标注指定基于简单HTML语法的描述,支持超级链接和图片的显示

使用目录(folders)对标注进行树形的分类管理(为了便于理解和符合习惯,将"folder"翻译为"目录",实际上是代表一组地理标注,请谅解)

基于时间戳记的标注可以用来进行动态的播放

从本地或远程的网络地址动态的加载KML文件

当Google Earth客户端视图变化时,自动将视图信息发送给指定的源服务器并从服务器获取相关的标注信息

KML被Google Earth viewer显示的过程和HTML网页被浏览器处理差不多,而且和HTML一样,KML也使用一种基于标签(名称和属性)的语法格式来描述地里标注信息,可以说,Google Earth viewer是一个KML文件浏览器.

目录

KML 2.0 What's New

编写您自己的Google earth KML文件

KML基础

o

常用标签

o

地名标注(Placemarks)

o

几何图形(Geometry)

o

目录(Folders)

o

文档(Documents)

o

o

o

o

o

图片标注(Image Overlays)

地理图片标注(Ground Overlays)

屏幕图片标注(Screen Overlays)

时间

样式

Schemas

网络连接

o

Google Earth KML 2.0参考

KML语法规则

文档结构

标记类型

字符串

KML标签列表

normal

#normalPlacemark

highlight

#highlightPlacemark

Example Placemark

#exampleStyleMap

-122.5,37.42243077405461,0

Schemas

For elements in your KML that are not native to the default KML

schema, you can define your own schema as a set of named and

typed XML elements. For example, you can specify how KML should

interpret imported files such as from a GPS tracker. A schema

requires the following:

Parent entity

The KML entity that the new schema will inherit from. For example, if

you want the data in your KML document to inherit the elements of a

placemark, you would set Placemark as the parent. See the entry for

for more information.

Schema name

As with all other features, the name element identifies the schema.

See the entry for for more information.

Field declaration(s)

The field declaration specifies the individual fields in your KML data

and defines their name and type. The following example illustrates:

States

Placemark

FIPS

wstring

STATE

wstring

Here, the schema inherits all the attributes of the Placemark element.

It defines three simple fields -- FIPS, STATE, and NAME -- all of

which are wide string fields (unicode UCS2 encoding). Subsequent

use of those fields in the KML will be correctly interpreted by the

Google Earth client as elements similar in structure to Placemark

elements.

网络连接

Use network links to quickly and easily share KML files among

multiple users by sharing a link to the data rather than distributing the

data itself. In addition to the common features, a network link has the

following features:

Icon

Containes the information associated with the linked KML file.

Network links can reference the KML file either on remote servers

(..) or on local networks (myServer..). The Url tag is a parent to

several child tags which control various aspects of the link's behavior.

These are:

href

网络文件的路径

刷新间隔

指定网络文件的刷新间隔,如果该值大于0,网址每隔n秒刷新一回,如果小于0,网址则不会被加载,如果等于0,则会只下载一次. 查看标签获取更多信息.

可见性刷新Refresh Visibility

指定在Google Earth中的项变化时是否重置该项的可见性.例如,假设有一项在KML文件之中可见性设置为0,而且refreshVisibility设置为1,当文件第一次加载到Google Earth之中的时候,该项是不显示的如果用户通过点击该项的复选框而已经使该项显示出来,这种情况下该网络KML文件被刷新之后,该项又会重新变成不显示. 查看标签获取更多信息.

刷新模式

网络连接有三种动态加载方式:用户手动请求、文件被加载时,和周期性的刷新,查看标签获取更多信息.

视图刷新模式

Google Earth能够向网络服务器发送基于视图的查询请求,这种请求可以是周期性(根据视图刷新时间的设置)的,也可以是当视图停顿一段时间后. 一旦触发后,Google Earth向服务器发送一个包含当前视图坐标的请求,服务器根据坐标返回相应的信息内容,查看标签获取更多信息.

视图刷新时间View Refresh Time

和刷新间隔差不多,但是该项的值控制试图坐标的值每隔多长时间发送到服务器,查看标签获取更多信息

注意: 当使用本地网络路径的时候,路径之中的分隔符应该使用(//)而不是().

Google Earth KML 2.0 参考

这一节包含KML标签的语法结构和参考信息.

KML语法规则

和任何程序和脚本语言一样,KML有一些必须遵循的语法规则.

文档结构

一个KML文档应该完全遵循KML格式,文档也和基本的XML语法规则差不多,有以下几点要特别注意的地方.

o

o

o

o

o

o

o

o

o

XML标签必须关闭

XML标签是大小写敏感的

对于KML语法,首字母大写的标签是复合标签,否则就是单一标签,在实体和标签介绍之中有更多相关信息.

XML标签必须正确嵌套

XML文档必须只有一个根标签

对于KML文件,这意味着你可以使用,

甚至

作为根标签

属性必须用引号包围起来

CR/LF(回车符)被认为是插入一个新行(在HTML描述之中,被转化为

)

XML的注释方法和HTML是一样的

要了解更多信息,可以去查阅XML参考文档或语法向导.如果你的KML文档结构不符合XML文档规范,将会在Google Earth中产生一个解析错误的对话框 (查看/XML/ 了解根多关于XML的信息.)

注意: XML Schema 验证还没有被Google Earth支持.

标记类型

有两种基本的KML标记类型: 单一标签和复合标签.复合标签的标签名首字母是大写的,而单一标签都是小写的,复合标签能够作为其他标签(单一标签或复合标签)的父元素, ,而单一标签只能是其他复合标签的子元素,而自身不能包含其他元素.

字符串

在KML文件中的任何字符串,例如 name 和 description标签中的值,都可以是utf-8或者Unicode编码的字符串.

KML标签列表

这一节包含所有能用的KML标签的参考,按字母顺序排列,每一段列出了该标签正确的大小写格式,类型、值和层次.

单一标签.是的子元素,包含按照标准填写的地址:街道,城市,州,或邮政编码.

值:

代表一个点所在位置或邮政编码的字符串.

父元素:

被以下元素包含:

子元素:

无.

值:

clampedToGround、relativeToGround或absolute.

父元素:

被以下元素包含:

子元素:

无.

单一标签.是的子元素.指定一个时间区域的开始点.如果没有指定,则代表无限小的时间.

1876-08-01

值:

使用UTC(Coordinated Universal Time)格式的日期时间 .查看了解更多关于时间格式的信息.

父元素:

被以下元素包含:

子元素:

包含:

单一标签,代表一个32位的16进制颜色值.

值:

The standard range from 00000000 to ffffffff

父元素:

被以下元素包含:

子元素:

无.

单一标签,可以是是任何几何形状的子元素,定义每一个点的经度、纬度和高度(按照严格的顺序). 多个点使用空格隔开,经纬度按照WGS84标准.

-111.661,33.2212,0

值:

由点的坐标决定,经纬度的单位是度,而高度的单位是米(海拔).

注意:应该按照 经度,纬度,高度 这样的格式和顺序来设置,否则坐标可能会不准确.

父元素:

Contained by any geometry.

子元素:

无.

单一标签.提供描述信息.描述显示在用户点击该目录或标注时的弹出窗口中.

支持纯文本和HTML语法,如果其中包含有效的网址,则Google Earth会自动显示为一个连接T(例如).而不需要使用任何标签

如果你使用任何的HTML语法,就必须使用字符实体引用或者CDATA来防止HTML字符如><被当作XML解析,下面的例子说明了description标签的用法:

href=":8888/">Google Search!]]>

CDATA元素让KML解析器忽略其内部的特殊字符.按以下方式使用该元素:

如果你不喜欢使用CDATA元素,你也可以使用实体引用来替换所有的特殊字符.

值:

任意字符串

注意: description标签只是支持HTML格式化,并不支持其他的网络性能,比如脚本语言和Iframe.

父元素:

被以下元素包含:

子元素:

无.

kml文档的根元素.同时也是一个目录,可是它不是必需的,如果你的kml文件使用到了schemas和样式表,就一定要使用该标签.