Flujo de trabajo: Crear un campo ráster de ArcObjects
Algunas aplicaciones muestran imágenes, como señales de tránsito, ríos, o edificios, para ilustrar mejor una entidad de punto, línea o polígono. Es posible que estas imágenes estén o no estén referenciadas espacialmente. Puede usar SQL para crear una tabla con una columna ráster no espacial.
El siguiente flujo de trabajo describe cómo crear y completar una columna ráster y prepararla para el acceso de ArcGIS.
Crear y completar una tabla con una columna ráster
-
Conéctese a la base de datos desde un editor SQL.
Por ejemplo, conéctese a Oracle desde SQL*Plus, a PostgreSQL desde pgAdminIII o la ventana de comando psql, o a Microsoft SQL Server desde Management Studio.
- Cree una tabla con una columna ST_Raster.
Oracle
CREATE TABLE real_estate (address nvarchar2(255), sde.st_raster picture);
PostgreSQL
CREATE TABLE real_estate (address varchar(255), sde.st_raster picture);
SQL Server
CREATE TABLE real_estate (address varchar(255), dbo.st_raster picture);
Si su geodatabase en SQL Server está almacenada en el esquema del usuario sde, preceda la función con sde.
- Utilice el método ST_Raster_Util_Initialize para inicializar la columna ráster.
En estos ejemplos, el argumento projectID es nulo porque los datos no incluyen referencias espaciales.
Oracle
BEGIN SDE.ST_RASTER_UTIL.INITALIZE ('real_estate','picture',NULL,'defaults'); END; /
PostgreSQL
SELECT st_raster_util_initialize ('real_estate','address',4326,'DEFAULTS');
SQL Server
EXEC dbo.st_raster_util_initialize 'sde','bobby','real_estate','address',4326,NULL,'DEFAULTS'
Una vez que este método se ejecuta, la columna ráster se registra con ArcSDE y está disponible para su funcionalidad.
- Convierta una imagen TIFF con el constructor ST_Raster.
En estos ejemplos, se introduce una imagen de la propiedad ubicada en 30551 Independence Ave en la tabla real_estate mediante la conversión del archivo de imagen TIFF, 30551_independence, con el constructor ST_Raster.
Oracle
INSERT INTO REAL_ESTATE (address, sde.st_raster) VAULES ('30551 Independence Ave', SDE.ST_RASTER('C:\30551_independence.tif','compression=lz77'));
PostgreSQL
INSERT INTO real_estate (address, sde.st_raster) VAULES ('30551 Independence Ave', sde.st_raster('C:\30551_independence.tif'));
SQL Server
INSERT INTO real_estate (address, dbo.st_raster) VALUES ('30551 Independence Ave', ST_Raster::construct('C:\30551_independence.tif'));
Sugerencia:
Asegúrese de que la ruta a la imagen sea una a la que el servidor de la base de datos tenga acceso.
Registrar la tabla con la geodatabase
Utilice ArcGIS for Desktop para registrar la tabla con la geodatabase.
- Inicie ArcMap y abra la ventana Catálogo o inicie ArcCatalog.
-
Conéctese a la geodatabase corporativa que contiene la tabla que desea registrar.
Esta conexión se realiza en el nodo Conexiones de base de datos del árbol de catálogo. Asegúrese de conectarse como propietario de la tabla.
- Haga clic con el botón derecho del ratón en la tabla real_estate y haga clic en Registrar con geodatabase.
Se agregará un campo ObjectID a la tabla real_estate. El campo ObjectID permite que ArcGIS pueda desplegarse a través de las filas de la tabla.