Version 1 (modified by 12 years ago) ( diff ) | ,
---|
To deal with multiple rasters loaded to a table in a database (can be PostGIS or Oracle, example is Oracle), you can use a TILEINDEX in MapServer.
Database TILEINDEXes are a little odd in MapServer, they require 2 separate layers, a TILEINDEX layer and a RASTER layer that refers to the TILEINDEX layer.
In Oracle, you'll want to create the TILEINDEX as a view to the GEORASTER table of interest.
create or replace view my_raster_tindex as select some_attribute, 'geor: user/pass@tns, raster_table_DATA,'||r.raster.rasterid location, R.RASTER.spatialextent shape from rasters_table r;
This view will then be used for the TILEINDEX layer
LAYER name raster_tindex TYPE polygon PROJECTION "init=epsg:xxxx" END CONNECTIONTYPE ORACLESPATIAL CONNECTION user/pass@tns' DATA "shape from my_raster_tindex using srid xxxx" END
Then you add a second layer that is the actual RASTER layer
LAYER name db_raster_layer TYPE RASTER PROJECTION "init=epsg:xxxx" END TILEINDEX "raster_tindex" #THIS NAME MUST MATCH THE TILEINDEX LAYER NAME TILEITEM "location" #not actually needed if column is named location STATUS OFF OFFSITE 0 0 0 END
One last piece that is needed is to set the SHAPEPATH to null so that the paths to the raster files are treated as database connections and not files.
Add
SHAPEPATH ""