Class: WKB

ol/format/WKB~WKB


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

用于读写 Well-Known Binary (WKB) 格式数据的几何图形格式。也支持 Extended Well-Known Binary (EWKB) 格式,例如在 PostGIS 中使用。

new WKB(options)

Name Type Description
splitCollection boolean (defaults to false)

读取时是否将 GeometryCollections 拆分为多个要素。

hex boolean (defaults to true)

输出时返回 hex 字符串而非 ArrayBuffer。这也用作内部提示,决定在读取时应将内容作为文本还是 ArrayBuffer 加载。

littleEndian boolean (defaults to true)

输出时使用小端序。

ewkb boolean (defaults to true)

输出时使用 EWKB 格式。

geometryLayout GeometryLayout (defaults to null)

输出要素使用特定的坐标布局(null:自动检测)

nodataZ number (defaults to 0)

如果 geometryLayout 与要输出的几何图形不匹配,此值用于填充缺失的 Z 坐标值。

nodataM number (defaults to 0)

如果 geometryLayout 与要输出的几何图形不匹配,此值用于填充缺失的 M 坐标值。

srid number | boolean (defaults to true)

输出的 SRID。指定整数值以强制将该值作为 SRID。指定 true 以从 dataProjection 中提取。指定 false 以抑制输出。此选项仅在 ewkbtrue 时生效。

继承

方法

readFeature(source, options){Feature}

从数据源读取单个要素。

Name Type Description
source string | ArrayBuffer | ArrayBufferView

数据源。

options

读取选项。

Name Type Description
dataProjection ProjectionLike | undefined

正在读取的数据的投影。如果未提供,投影将从数据中派生(如可能),或分配格式的 dataProjection(如已设置)。如果无法从数据中派生投影且格式未设置 dataProjection,则要素将不会被重新投影。

extent Extent | undefined

正在读取的瓦片在地图单位中的范围。仅在读取以瓦片像素为几何单位的数据时需要。配置时,需要提供以 TILE_PIXELSunitsdataProjection 以及瓦片的像素范围作为 extent

featureProjection ProjectionLike | undefined

格式读取器创建的要素几何图形的投影。如果未提供,要素将在 dataProjection 中返回。

返回值:
要素。

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

从数据源读取所有要素。

Name Type Description
source string | ArrayBuffer | ArrayBufferView

数据源。

options

读取选项。

Name Type Description
dataProjection ProjectionLike | undefined

正在读取的数据的投影。如果未提供,投影将从数据中派生(如可能),或分配格式的 dataProjection(如已设置)。如果无法从数据中派生投影且格式未设置 dataProjection,则要素将不会被重新投影。

extent Extent | undefined

正在读取的瓦片在地图单位中的范围。仅在读取以瓦片像素为几何单位的数据时需要。配置时,需要提供以 TILE_PIXELSunitsdataProjection 以及瓦片的像素范围作为 extent

featureProjection ProjectionLike | undefined

格式读取器创建的要素几何图形的投影。如果未提供,要素将在 dataProjection 中返回。

返回值:
要素。

readGeometry(source, options){Geometry}

从数据源读取单个几何图形。

Name Type Description
source string | ArrayBuffer | ArrayBufferView

数据源。

options

读取选项。

Name Type Description
dataProjection ProjectionLike | undefined

正在读取的数据的投影。如果未提供,投影将从数据中派生(如可能),或分配格式的 dataProjection(如已设置)。如果无法从数据中派生投影且格式未设置 dataProjection,则要素将不会被重新投影。

extent Extent | undefined

正在读取的瓦片在地图单位中的范围。仅在读取以瓦片像素为几何单位的数据时需要。配置时,需要提供以 TILE_PIXELSunitsdataProjection 以及瓦片的像素范围作为 extent

featureProjection ProjectionLike | undefined

格式读取器创建的要素几何图形的投影。如果未提供,要素将在 dataProjection 中返回。

返回值:
几何图形。

readProjection(source){Projection | undefined}

从数据源读取投影。

Name Type Description
source string | ArrayBuffer | ArrayBufferView

数据源。

返回值:
Projection.

writeFeature(feature, options){string | ArrayBuffer}

以此格式编码一个要素。

Name Type Description
feature Feature

要素。

options

写入选项。

Name Type Description
dataProjection ProjectionLike | undefined

写入数据的投影。如果未提供,将使用格式的 dataProjection(如果已设置)。如果格式未设置 dataProjection,要素将以 featureProjection 返回。

featureProjection ProjectionLike | undefined

格式写入器将序列化的要素几何图形的投影。如果未提供,几何图形假定为 dataProjection(如果已设置);换句话说,不进行变换。

rightHanded boolean | undefined

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

decimals number | undefined

坐标的最大小数位数。坐标内部存储为浮点数,但浮点运算可能产生大量小数位的坐标,通常在输出时不需要。设置一个数字以对坐标进行四舍五入。也可用于确保读入的坐标能以相同的小数位数写回。默认不进行四舍五入。

返回值:
Result.

writeFeatures(features, options){string | ArrayBuffer}

以此格式编码要素数组。

Name Type Description
features Array<Feature>

要素。

options

写入选项。

Name Type Description
dataProjection ProjectionLike | undefined

写入数据的投影。如果未提供,将使用格式的 dataProjection(如果已设置)。如果格式未设置 dataProjection,要素将以 featureProjection 返回。

featureProjection ProjectionLike | undefined

格式写入器将序列化的要素几何图形的投影。如果未提供,几何图形假定为 dataProjection(如果已设置);换句话说,不进行变换。

rightHanded boolean | undefined

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

decimals number | undefined

坐标的最大小数位数。坐标内部存储为浮点数,但浮点运算可能产生大量小数位的坐标,通常在输出时不需要。设置一个数字以对坐标进行四舍五入。也可用于确保读入的坐标能以相同的小数位数写回。默认不进行四舍五入。

返回值:
Result.

writeGeometry(geometry, options){string | ArrayBuffer}

以此格式写入单个几何图形。

Name Type Description
geometry Geometry

几何图形。

options

写入选项。

Name Type Description
dataProjection ProjectionLike | undefined

写入数据的投影。如果未提供,将使用格式的 dataProjection(如果已设置)。如果格式未设置 dataProjection,要素将以 featureProjection 返回。

featureProjection ProjectionLike | undefined

格式写入器将序列化的要素几何图形的投影。如果未提供,几何图形假定为 dataProjection(如果已设置);换句话说,不进行变换。

rightHanded boolean | undefined

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

decimals number | undefined

坐标的最大小数位数。坐标内部存储为浮点数,但浮点运算可能产生大量小数位的坐标,通常在输出时不需要。设置一个数字以对坐标进行四舍五入。也可用于确保读入的坐标能以相同的小数位数写回。默认不进行四舍五入。

返回值:
Result.