ST_Raster.getValue

Определение

Функция ST_Raster.getValue возвращает значение отдельного пиксела, получив местоположение этого пиксела внутри объекта ST_Raster. Местоположение пиксела может быть выбрано или с помощью координат пиксела, или с помощью географических координат. Функция возвращает ошибку в случае, если выбранное местоположение находится вне измерения пиксела растра, или вне географического экстента. ST_Raster.getValue возвращает NULL, если значением пиксела в выбранном местоположении является NoData.

Синтаксис

Oracle

getValue (band INTEGER, 
          level INTEGER, 
          x INTEGER, 
          y INTEGER)

getValue (band INTEGER, 
          level INTEGER, 
          point SE_COORD)

PostgreSQL

getValue (raster IN ST_RASTER, 
          band INT, 
          level INT, 
          x INT, 
          y INT)

getValue (raster IN ST_RASTER, 
          band INT, 
          level INT, 
          point SE_COORD)

SQL Server

getValue (band IN NUMBER, 
          level IN NUMBER, 
          x IN NUMBER, 
          y IN NUMBER)

getValueByLoc (band IN NUMBER, 
               level IN NUMBER, 
               x IN DOUBLE, 
               y IN DOUBLE)

Возвраты

Oracle

Число (Number)

PostgreSQL

8-битовый с плавающей точкой (Float8)

SQL Server

Двойной точности (Double)

Параметры

Параметр

Описание

band (канал)

Номер канала пиксела (начиная с 1)

level (уровень)

Уровень пирамидного слоя пиксела

x

Значение координаты x пиксела

y

Значение координаты y пиксела

точка

Географическая координата пиксела

растр

Объект ST_Raster, содержащий значение пиксела

Примеры

В первом примере возвращаются значения пикселов для каналов 1, 2, и 3 для базового уровня пирамидных слоев в расположении пиксела с координатами (0,0).

Во втором примере возвращаются значения пикселов для каналов 1, 2, и 3 для базового уровня пирамидных слоев в географическом расположении с координатами (100.5, 20.5).

Oracle

  1. SELECT t.image.getValue(1,0,0,0) r,
           t.image.getValue(2,0,0,0) g,
           t.image.getValue(3,0,0,0) b
    FROM VEG t 
    WHERE t.image.raster_id = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173
    
  2. SELECT t.image.getValue(1,0,se_coord(100.5,20.5)) r,
           t.image.getValue(2,0,se_coord(100.5,20.5)) g,
           t.image.getValue(3,0,se_coord(100.5,20.5)) b
    FROM VEG t
    WHERE t.image.raster_id = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173
    

PostgreSQL

  1. SELECT getValue(image,1,0,0,0) r,
           getValue(image,2,0,0,0) g,
           getValue(image,3,0,0,0) b
    FROM veg 
    WHERE raster_id(image) = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173
    
  2. SELECT getValue(image,1,0,se_coord(100.5,20.5)) r,
           getValue(image,2,0,se_coord(100.5,20.5)) g,
           getValue(image,3,0,se_coord(100.5,20.5)) b
    FROM veg 
    WHERE raster_id(image) = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173
    

SQL Server

  1. SELECT image.getValue(1,0,0,0) r,
           image.getValue(2,0,0,0) g,
           image.getValue(3,0,0,0) b
    FROM veg 
    WHERE image.raster_id = 1;
    
             R          G          B
    ---------- ---------- ----------
            83         49        173
    
  2. SELECT getValueByLoc(image,1,0,100.5,20.5) as r,
           getValueByLoc(image,2,0,100.5,20.5) as g,
           getValueByLoc(image,3,0,100.5,20.5) as b
    FROM veg
    WHERE image.raster_id = 1;
    
            R          G          B
    ---------- ---------- ----------
            83         49        173
    
5/25/2014