PixelBlock

AMD: require(["geoscene/layers/support/PixelBlock"], (PixelBlock) => { /* 代码 */ });
ESM: import PixelBlock from "@geoscene/core/layers/support/PixelBlock";
类: geoscene/layers/support/PixelBlock
继承于: PixelBlock Accessor
起始版本: GeoScene API for JavaScript 4.22

表示视图中像素数组的对象。它存储和解码从与 ImageryLayer 关联的影像服务获取的源数据。这为用户提供了通过 pixels 属性访问客户端上每个像素的权限。PixelBlock 对象旨在处理来自任何栅格数据源的通用像素数组。

示例:

构造函数

new PixelBlock(properties)
参数:
properties Object
optional

所有可传入构造函数的属性,请参见属性列表

属性列表

可以设置、检索或监听的属性。参见 使用属性
展示继承属性 隐藏继承属性
属性 类型 描述
String更多信息

类名。

更多信息Accessor
Number更多信息

PixelBlock 的高度(或行数,以像素为单位)。

更多信息PixelBlock
Number[]|Uint8Array更多信息

nodata 掩码的数组。

更多信息PixelBlock
Boolean更多信息

指示是否应将掩码用作 Alpha 值。

更多信息PixelBlock
Number[][]|Int8Array[]|Uint8Array[]|Uint8ClampedArray[]|Int16Array[]|Uint16Array[]|Int32Array[]|Uint32Array[]|Float32Array[]|Float64Array[]更多信息

一个二维数组,表示客户端上显示的图像服务中的像素。

更多信息PixelBlock
String更多信息

像素类型。

更多信息PixelBlock
Object[]更多信息

包含数值统计属性的对象数组。

更多信息PixelBlock
Number更多信息

有效像素数

更多信息PixelBlock
Number更多信息

像素块的宽度(或列数),以像素为单位。

更多信息PixelBlock

属性详细说明

declaredClass Stringreadonly inherited
起始版本: GeoScene API for JavaScript 4.22

类名。类的名称声明格式为 geoscene.folder.className

height Number

PixelBlock的高度(或行数,以像素为单位)。 

nodata 掩码的数组。当蒙版为空时,所有像素都有效。

maskIsAlpha Boolean

指示是否应将掩码用作 Alpha 值。如果不是(默认值),则当相应的掩码值为真实时,像素有效

一个二维数组,表示客户端上显示的图像服务中的像素。 第一个维度的长度与层中的波段数相同。 第二个维度的长度是height * width。 每条带的长度是相同的。 每个波段中的像素以这种格式逐行排列: [p_00, p_10, p_20, ... p_10, p_11, ...]  其中 p_xy 是  x 列和  y 行的像素值。

示例代码:
let pixels = imgLyr.pixelData.pixelBlock.pixels;
// 打印图层中的波段数
console.log(pixels.length); // 包含第一个波段中所有像素的数组
let band1 = pixels[0];
pixelType String

像素类型。

可选值:"unknown"|"s8"|"s16"|"s32"|"u8"|"u16"|"u32"|"f32"|"f64"

statistics Object[]

包含数值统计属性的对象数组。如果已定义,则每个对象都具有以下规范。

属性:
maxValue Number
optional

像素数组中的最大像素值。

minValue Number
optional

像素数组中的最小像素值。

noDataValue Number
optional

表示无数据区域的值。

validPixelCount Number

有效像素数

width Number

像素块的宽度(或列数),以像素为单位。

方法列表

属性 返回值类型 描述
更多信息

将另一个平面添加到 PixelBlock。

更多信息PixelBlock
Uint8ClampedArray更多信息

使用 bip 格式的单个数组返回像素和掩码

更多信息PixelBlock
Float32Array更多信息

与 getAsRGBA 类似,但返回浮点数据。

更多信息PixelBlock
Number更多信息

返回 PixelBlock 的平面波段计数。

更多信息PixelBlock

方法详细说明

addData(planeData)

将另一个平面添加到 PixelBlock。

参数:
规范:
planeData Object

要添加到 PixelBlock 的数据。

规范:
pixels Number[][]

表示要添加的像素的二维数组。

statistics Object[]

包含数值统计属性的对象数组。有关每个对象的规格的详细信息,请参阅统计信息

getAsRGBA(){Uint8ClampedArray}

使用 bip 格式的单个数组返回像素和掩码(例如 [p_00_r, p_00_g, p_00_b, p_00_a, p_10_r, p_10_g, p_10_b, p_10_a, .....])。 使用此方法可以得到一个无符号的 8 位像素数组。 结果可用于创建 webgl 纹理。

返回值:
类型 描述
Uint8ClampedArray 无符号的 8 位像素数组。
getAsRGBAFloat(){Float32Array}

与 getAsRGBA 类似,但返回浮点数据。结果可用于创建 webgl 纹理(OES_texture_float)。

返回值:
类型 描述
Float32Array 浮点数组。
getPlaneCount(){Number}

返回 PixelBlock 的平面带计数。

返回值:
类型 描述
Number

平面波段计数。

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.