PixelBlock

AMD: require(["geoscene/layers/support/PixelBlock"], (PixelBlock) => { /* code goes here */ });
ESM: import PixelBlock from "@geoscene/core/layers/support/PixelBlock";
类: geoscene/layers/support/PixelBlock
继承于:PixelBlock Accessor
起始版本:GeoScene Maps SDK for JavaScript 4.0

表示视图中像素数组的对象。它存储和解码从与 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 的宽度 (或列数),以像素为单位。

更多详情
PixelBlock

属性详细信息

declaredClass Stringreadonly inherited
起始版本:GeoScene Maps SDK for JavaScript 4.7

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

height Number

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

nodata 掩码的数组。当掩膜为空时,所有像素均有效。

maskIsAlpha Boolean

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

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

示例
let pixels = imgLyr.pixelData.pixelBlock.pixels;
// Prints the number of bands in the layer
console.log(pixels.length);
// An array containing all the pixels in the first band
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。

更多详情
PixelBlock

添加一个或多个与对象的生命周期相关联的句柄。

更多详情
Accessor
Uint8ClampedArray

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

更多详情
PixelBlock
Float32Array

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

更多详情
PixelBlock
Number

返回 PixelBlock 的平面波段计数。

更多详情
PixelBlock
Boolean

如果存在指定的句柄组,则返回 true。

更多详情
Accessor

移除对象拥有的句柄组。

更多详情
Accessor

方法详细说明

addData(planeData)

将另一个平面添加到 PixelBlock。

参数
规范
planeData Object

要添加到 PixelBlock 的数据。

规范
pixels Number[][]

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

statistics Object[]

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

addHandles(handleOrHandles, groupKey)inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。

// Manually manage handles
const handle = reactiveUtils.when(
  () => !view.updating,
  () => {
    wkidSelect.disabled = false;
  },
  { once: true }
);

// Handle gets removed when the object is destroyed.
this.addHandles(handle);
参数
handleOrHandles WatchHandle|WatchHandle[]

对象销毁后,标记为要移除的句柄。

groupKey *
optional

标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。

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 平面波段计数。
hasHandles(groupKey){Boolean}inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

如果存在指定的句柄组,则返回 true。

参数
groupKey *
optional

组键。

返回
类型 描述
Boolean 如果存在指定的句柄组,则返回 true
示例
// Remove a named group of handles if they exist.
if (obj.hasHandles("watch-view-updates")) {
  obj.removeHandles("watch-view-updates");
}
removeHandles(groupKey)inherited
起始版本:GeoScene Maps SDK for JavaScript 4.25

移除对象拥有的句柄组。

参数
groupKey *
optional

要移除的组键或组键的数组或集合。

示例
obj.removeHandles(); // removes handles from default group

obj.removeHandles("handle-group");
obj.removeHandles("other-handle-group");

您的浏览器不再受支持。请升级您的浏览器以获得最佳体验。请参阅浏览器弃用帖子以获取更多信息