KML文件格式和支持添加的内容

KML(Keyhole Markup Language)是一种用于表示地理数据的 XML 格式,除了颜色,KML 还支持许多其他属性和元素。以下是一些常见的属性和元素,可以在 KML 文件中使用:

1. 名称和描述

  • name: 用于指定地标的名称。
  • description: 用于提供地标的详细描述,可以包含 HTML 格式的内容。

2. 位置和几何

  • coordinates: 指定地理坐标,通常是经度、纬度和高度。
  • Point: 用于表示单个点的位置。
  • LineString: 用于表示一系列连接的点形成的线。
  • Polygon: 用于表示封闭的多边形区域。

3. 样式

  • Style : 定义点、线和多边形的样式,包括颜色、宽度、透明度等。
    • IconStyle: 用于定义点的图标样式。
    • LineStyle: 用于定义线的样式(颜色和宽度)。
    • PolyStyle: 用于定义多边形的填充样式(颜色和透明度)。

4. 时间

  • TimeStamp: 用于指定某个地标的时间戳。
  • TimeSpan: 用于定义一个时间段,包含开始和结束时间。

5. 图标和标记

  • Icon: 定义要用于标记的图标,包括图标的 URL 和尺寸。
  • HotSpot: 指定图标的热点位置,通常用于定义用户点击图标时的响应区域。

6. 网络链接

  • NetworkLink: 允许 KML 文件链接到其他 KML 文件或网络资源。
  • refreshInterval: 指定 KML 文件的刷新间隔。

7. 视角

  • Camera: 定义视角的位置、朝向和视野。
  • LookAt: 定义观察点的经纬度、范围和朝向。

8. 地面覆盖

  • GroundOverlay: 用于在地面上覆盖图像,例如卫星图像。
  • ScreenOverlay: 用于在屏幕上覆盖图像,例如标记或图标。

9. 多媒体

  • gx:Track: 用于表示运动轨迹,包含时间、位置和速度等信息。

示例 KML 片段

以下是一个 KML 文件的示例片段,展示了如何使用这些属性:

xml 复制代码
<Placemark>
    <name>Sample Point</name>
    <description><![CDATA[This is a sample point with <b>HTML formatting</b>.]]></description>
    <Point>
        <coordinates>-122.0838,37.421999,0</coordinates>
    </Point>
    <Style>
        <IconStyle>
            <color>ff0000ff</color>
            <scale>1.1</scale>
            <Icon>
                <href>http://example.com/icon.png</href>
            </Icon>
        </IconStyle>
    </Style>
</Placemark>

以下是一个标准的 KML 文件示例和一个包含常见属性和元素的 KML 示例文件。

标准 KML 文件示例

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
    <Document>
        <name>Standard KML Example</name>
        <description>This is a basic KML example.</description>

        <Placemark>
            <name>Sample Point</name>
            <description>This is a sample point.</description>
            <Point>
                <coordinates>-122.0838,37.421999,0</coordinates>
            </Point>
        </Placemark>

    </Document>
</kml>

包含常见属性和元素的 KML 示例文件

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
    <Document>
        <name>Comprehensive KML Example</name>
        <description>This KML file demonstrates various features.</description>

        <!-- 定义样式 -->
        <Style id="pointStyle">
            <IconStyle>
                <color>ff0000ff</color> <!-- 红色 -->
                <scale>1.2</scale>
                <Icon>
                    <href>http://example.com/icon.png</href> <!-- 图标 URL -->
                </Icon>
            </IconStyle>
        </Style>

        <Style id="lineStyle">
            <LineStyle>
                <color>ff00ff00</color> <!-- 绿色 -->
                <width>2</width>
            </LineStyle>
        </Style>

        <Style id="polygonStyle">
            <PolyStyle>
                <color>7f0000ff</color> <!-- 半透明蓝色 -->
            </PolyStyle>
        </Style>

        <!-- 添加一个点 -->
        <Placemark>
            <name>Sample Point</name>
            <description><![CDATA[This is a sample point with <b>HTML formatting</b>.]]></description>
            <styleUrl>#pointStyle</styleUrl>
            <Point>
                <coordinates>-122.0838,37.421999,0</coordinates>
            </Point>
        </Placemark>

        <!-- 添加一条线 -->
        <Placemark>
            <name>Sample Line</name>
            <description>A simple line example.</description>
            <styleUrl>#lineStyle</styleUrl>
            <LineString>
                <coordinates>
                    -122.0838,37.421999,0
                    -122.0840,37.4220,0
                    -122.0842,37.4221,0
                </coordinates>
            </LineString>
        </Placemark>

        <!-- 添加一个多边形 -->
        <Placemark>
            <name>Sample Polygon</name>
            <description>A simple polygon example.</description>
            <styleUrl>#polygonStyle</styleUrl>
            <Polygon>
                <outerBoundaryIs>
                    <LinearRing>
                        <coordinates>
                            -122.0840,37.4210,0
                            -122.0840,37.4230,0
                            -122.0820,37.4230,0
                            -122.0820,37.4210,0
                            -122.0840,37.4210,0
                        </coordinates>
                    </LinearRing>
                </outerBoundaryIs>
            </Polygon>
        </Placemark>

        <!-- 添加时间戳 -->
        <Placemark>
            <name>Sample TimeStamp</name>
            <description>This placemark has a timestamp.</description>
            <TimeStamp>
                <when>2023-10-01T12:00:00Z</when>
            </TimeStamp>
            <Point>
                <coordinates>-122.0850,37.4215,0</coordinates>
            </Point>
        </Placemark>

        <!-- 添加网络链接 -->
        <NetworkLink>
            <name>External KML</name>
            <description>A link to an external KML file.</description>
            <refreshInterval>1</refreshInterval>
            <Link>
                <href>http://example.com/external.kml</href>
            </Link>
        </NetworkLink>

    </Document>
</kml>

总结说明

  1. 标准 KML 文件示例:

    • 包含基本的 KML 结构,定义了一个文档和一个地标(点)。
  2. 包含常见属性和元素的 KML 示例文件:

    • 包含多个地标(点、线、多边形)。
    • 定义了样式(点、线、多边形的颜色和图标)。
    • 使用了 HTML 格式的描述。
    • 包含时间戳示例。
    • 包含网络链接,指向外部 KML 文件。
相关推荐
总要学点什么2 小时前
第97篇:三维数据加载-城市建筑白模自定义着色器——让一条光带沿高度扫上去,快慢却由帧率说了算
前端·gis·webgl·cesium·着色器·空间分析·白模
总要学点什么20 小时前
第98篇:三维特效-材质线效果——给一条线换十种材质,虚线的图案只填了一半
开发语言·前端·javascript·ecmascript·gis·webgl·材质
我喜欢就喜欢2 天前
倾斜摄影 OSGB 进 Cesium 对不齐?先核 SRS、原点偏移和瓦片路径
gis·cesium·倾斜摄影·osgb·3d tiles
vjmap3 天前
MCP 实战:在 WorkBuddy 里一句话让 AI 生成红军长征地图动画(唯杰 AI 地图动画 MCP 接入教程)
aigc·gis·mcp
我才是银古4 天前
6 小时做一部 10 分钟纪录片:DeepSeek 4.1 Flash + DeepSeek Harness 的完整制片记录
gis·deepseek·dsh
vjmap5 天前
AI 智能体调用绘图工具画矢量地图:唯杰 AI 地图绘制上线,支持 MCP 接入 Cursor、Claude Code
gis·agent·mcp
我喜欢就喜欢5 天前
点云 LAS/LAZ 按 shp 范围裁剪:PDAL pipeline、坐标系对齐与空洞检查
gis·点云·测绘·las·pdal
阿琳a_6 天前
b-map-viewer:面向 Vue 3 的地图可视化 SDK,从接入到展示再到交互分析
前端·javascript·vue.js·gis·数据可视化·地图
总要学点什么8 天前
第92篇:三维特效-圆(逐渐消逝)——从圆心开始,让一个洞把整片光啃到只剩外圈
gis·webgl·cesium·空间分析·1024程序员节
vjmap8 天前
AI 地图动画-以真实地图为画布的 AI 视频编辑器-唯杰 AI 地图动画正式上线
人工智能·编辑器·音视频·gis·cad