Todos los productos
Search
Centro de documentos

PolarDB:ST_HMTAsArray

Última actualización: Oct 10, 2026

ST_HMTAsArray convierte un mosaico de mapa de calor (HMT) en un arreglo bidimensional de tipo float8. De esta manera, los valores de píxel se leen directamente en un conjunto de resultados SQL.

Sintaxis

float8[][] ST_HMTAsArray(bytea hmt);

Parámetros

Parámetro

Tipo

Descripción

hmt

bytea

Mosaico de mapa de calor codificado en formato binario protobuf. Por lo general, lo genera ST_AsHMT.

Valor de retorno

Devuelve un arreglo bidimensional float8[][]. Cada elemento representa un valor estadístico del píxel correspondiente en el mapa de calor.

Ejemplo

A continuación se muestra un ejemplo que crea una tabla de prueba con 10 geometrías de puntos. Primero genera un mosaico de mapa de calor con ST_AsHMT y luego convierte el mosaico en un arreglo bidimensional mediante ST_HMTAsArray.

CREATE TABLE test_table AS
SELECT i num,
    ST_setSRID(st_makepoint((i-0.5)::numeric, (i-0.5)::numeric), 4326) geom,
    i*100::int4 weight,
    i*i*i::float8 volume
FROM generate_series(1, 10) i;

SELECT ST_HMTAsArray(ST_AsHMT(geom, --geometry type
    ST_MakeEnvelope(0, 0, 10, 10, 4326), -- Extent
    10,        -- Width, in pixel
    10        -- height
))
FROM test_table;

Salida:

[0:9][0:9]={{1,0,0,0,0,0,0,0,0,0},{0,1,0,0,0,0,0,0,0,0},{0,0,1,0,0,0,0,0,0,0},{0,0,0,1,0,0,0,0,0,0},{0,0,0,0,1,0,0,0,0,0},{0,0,0,0,0,1,0,0,0,0},{0,0,0,0,0,0,1,0,0,0},{0,0,0,0,0,0,0,1,0,0},{0,0,0,0,0,0,0,0,1,0},{0,0,0,0,0,0,0,0,0,1}}

El prefijo [0:9][0:9]= es la notación de PostgreSQL para un arreglo bidimensional con límites de subíndice explícitos. Ambas dimensiones abarcan del índice 0 al 9, lo cual corresponde a la cuadrícula de 10x10 píxeles. El patrón diagonal de valores 1 refleja los 10 puntos de entrada distribuidos uniformemente en la cuadrícula.

Consulte también

  • ST_AsHMT: genera el archivo binario del mosaico de mapa de calor (bytea) que consume esta función.