类:KML

ol/format/KML~KML文件


import KML from 'ol/format/KML.js';

用于读写 KML 格式数据的要素格式。

readFeature 将从 KML 源中读取第一个要素。

若 MultiGeometries 为混合几何类型,则转换为 GeometryCollections;若均为同一类型,则转换为 MultiPoint/MultiLineString/MultiPolygon。

new KML(options)

Name Type 描述
extractStyles boolean (defaults to true)

从KML中提取样式。

showPointNames boolean (defaults to true)

为点要素显示名称标签。

defaultStyle Array<Style> | undefined

默认样式。默认样式与Google Earth相同。

writeStyles boolean (defaults to true)

将样式写入KML。

crossOrigin null | string (defaults to 'anonymous')

crossOrigin已加载图像的属性。请注意,您必须提供crossOrigin若需使用 Canvas 渲染器访问像素数据,请采用此值。

iconUrlFunction IconUrlFunction | undefined

一个接受URL字符串并返回URL字符串的函数,可能用于更改图标路径或替换从KMZ数组缓冲区获取的数据URL。

继承

方法

readCamera(source){Array<KMLCamera>}

读取KML中的相机。

Name Type 描述
source Document | Element | string

数据源.

返回:
相机。

readCameraFromNode(node){Array<KMLCamera>}

Name Type 描述
node Element

节点。

返回:
相机。

readFeature(source, options){Feature} inherited

读取单个要素。

Name Type 描述
source Document | Element | Object | string

数据源.

options

Read options.

Name Type 描述
dataProjection ProjectionLike | undefined

所读取数据的投影。如果未提供,投影将从数据中推导(如果可能)或dataProjection格式将被指定(若已设置)。若投影无法从数据中推导出,且未dataProjection若格式已设置,则要素不会被重新投影。

extent Extent | undefined

以地图单位表示的当前读取瓦片范围。仅当读取以瓦片像素作为几何单位的数据时才需要此设置。配置后,会出现一个dataProjectionTILE_PIXELS作为units以及瓦片的像素范围作为extent需提供。

featureProjection ProjectionLike | undefined

由格式解析器创建的要素几何的投影。如果未提供,要素将使用该投影返回。dataProjection.

返回:
要素.

readFeatures(source, options){Array<Feature>} inherited

从要素集合中读取所有要素。

Name Type 描述
source Document | Element | Object | string

数据源.

options

Options.

Name Type 描述
dataProjection ProjectionLike | undefined

读取数据的投影。若未指定,投影将从数据(如可能)或默认投影推导。dataProjection格式的指定(如果已设置)。如果投影无法从数据中推导,并且如果没有dataProjection当设置为该格式时,要素不会被重投影。

extent Extent | undefined

正在读取的瓦片的地图单位范围。仅当读取以瓦片像素作为几何单位的数据时才需要。配置后,会出现一个dataProjectionTILE_PIXELS作为units以及瓦片的像素范围extent需提供。

featureProjection ProjectionLike | undefined

由格式解析器创建的要素几何图形的投影。如果未提供,要素将返回于dataProjection.

返回:
要素。

readName(source){string | undefined}

读取KML的名称。

Name Type 描述
source Document | Element | string

数据源.

返回:
姓名。

readNetworkLinks(source){Array.<Object>}

读取KML的网络链接。

Name Type 描述
source Document | Element | string

数据源.

返回:
网络链路。

从源读取投影。

Name Type 描述
source Document | Element | Object | string

数据源.

返回:
投影.

readRegion(source){Array.<Object>}

读取KML中的区域。

Name Type 描述
source Document | Element | string

数据源.

返回:
区域。

readRegionFromNode(node){Array.<Object>}

Name Type 描述
node Element

节点。

返回:
区域。

writeFeatures(features, options){string} inherited

将要素数组编码为字符串。

Name Type 描述
features Array<Feature>

要素。

options

Write options.

Name Type 描述
dataProjection ProjectionLike | undefined

所写入数据的投影。如未提供,则dataProjection格式的赋值(若已设置)。否则,dataProjection格式设置后,要素将按该格式返回。featureProjection.

featureProjection ProjectionLike | undefined

将被格式编写器序列化的要素几何图形的投影。如果未提供,则假定几何图形位于dataProjection如果已设置;换言之,它们不会被变换。

rightHanded boolean | undefined

在编写几何图形时,应遵循线性环定向的右手定则。这意味着多边形应具有逆时针外环和顺时针内环。默认情况下,坐标按构造时提供的顺序进行序列化。如果true,将应用右手定则。如果false应用左手法则(外环顺时针,内环逆时针)。请注意,并非所有格式都支持此规则。GeoJSON 格式在写入几何图形时会应用此属性。

decimals number | undefined

坐标的最大小数位数。坐标在内部以浮点数形式存储,但浮点运算可能导致坐标包含大量小数位,这通常不希望出现在输出中。在此处设置数值以对坐标进行舍入,还可确保读取的坐标能以相同的小数位数写回。默认情况下不进行舍入。

返回:
结果。

writeFeaturesNode(features, options){Node}

将要素数组以KML格式编码为XML节点。GeometryCollections、MultiPoints、MultiLineStrings和MultiPolygons将被输出为MultiGeometries。

Name Type 描述
features Array<Feature>

要素

options

Options.

Name Type 描述
dataProjection ProjectionLike | undefined

写入数据的投影。若未提供,则dataProjection指定格式(如果已设置)。如果没有dataProjection当格式被设置时,要素将按该格式返回。featureProjection.

featureProjection ProjectionLike | undefined

将由格式写入器序列化的要素几何图形的投影。如果未提供,则假定几何图形位于dataProjection若已设置;换言之,它们不会发生转换。

rightHanded boolean | undefined

在编写几何图形时,需遵循线性环方向的右手定则,即多边形外环为逆时针方向,内环为顺时针方向。默认情况下,坐标将按照构造时提供的顺序进行序列化。如果true,将应用右手定则。如果false将应用左手法则(外环顺时针,内环逆时针)。请注意,并非所有格式都支持此属性。GeoJSON格式在写入几何图形时确实使用此属性。

decimals number | undefined

坐标的最大小数位数。坐标在内部以浮点数形式存储,但浮点运算可能产生小数位过多的坐标,这在输出中通常是不希望的。在此处设置一个数值以对坐标进行舍入。此外,它还可确保读入的坐标在写回时使用相同的小数位数。默认情况下不进行舍入。

返回:
节点。