Changeset 4124
- Timestamp:
- 06/02/09 15:28:23 (3 years ago)
- Files:
-
- 1 modified
-
spike/wktraster/rt_pg/rtpostgis.sql.in.c (modified) (21 diffs)
Legend:
- Unmodified
- Added
- Removed
-
spike/wktraster/rt_pg/rtpostgis.sql.in.c
r4121 r4124 37 37 ------------------------------------------------------------------------------ 38 38 39 CREATEFUNCTION rt_raster_in(cstring)39 CREATEFUNCTION st_raster_in(cstring) 40 40 RETURNS raster 41 41 AS 'MODULE_PATHNAME','RASTER_in' 42 42 LANGUAGE 'C' _IMMUTABLE_STRICT; 43 43 44 CREATEFUNCTION rt_raster_out(raster)44 CREATEFUNCTION st_raster_out(raster) 45 45 RETURNS cstring 46 46 AS 'MODULE_PATHNAME','RASTER_out' … … 50 50 alignment = double, 51 51 internallength = variable, 52 input = rt_raster_in,53 output = rt_raster_out,52 input = st_raster_in, 53 output = st_raster_out, 54 54 storage = extended 55 55 ); … … 59 59 ------------------------------------------------------------------------------ 60 60 61 CREATEFUNCTION rt_lib_version()61 CREATEFUNCTION st_lib_version() 62 62 RETURNS text 63 63 AS 'MODULE_PATHNAME', 'RASTER_lib_version' 64 64 LANGUAGE 'C' IMMUTABLE; -- a new lib will require a new session 65 65 66 CREATEFUNCTION rt_lib_build_date()66 CREATEFUNCTION st_lib_build_date() 67 67 RETURNS text 68 68 AS 'MODULE_PATHNAME', 'RASTER_lib_build_date' 69 69 LANGUAGE 'C' IMMUTABLE; -- a new lib will require a new session 70 70 71 CREATEFUNCTION rt_bytea(raster)71 CREATEFUNCTION st_bytea(raster) 72 72 RETURNS bytea 73 73 AS 'MODULE_PATHNAME', 'RASTER_to_bytea' 74 74 LANGUAGE 'C' IMMUTABLE; 75 75 76 CREATEFUNCTION rt_raster_to_box2d(raster)76 CREATEFUNCTION st_raster_to_box2d(raster) 77 77 RETURNS BOX2D 78 78 AS 'MODULE_PATHNAME','RASTER_to_BOX2DFLOAT4' 79 79 LANGUAGE 'C' _IMMUTABLE_STRICT; 80 80 81 CREATEFUNCTION rt_raster_envelope(raster)81 CREATEFUNCTION st_raster_envelope(raster) 82 82 RETURNS GEOMETRY 83 83 AS 'MODULE_PATHNAME','RASTER_envelope' 84 84 LANGUAGE 'C' _IMMUTABLE_STRICT; 85 85 86 CREATEFUNCTION rt_srid(raster)86 CREATEFUNCTION st_srid(raster) 87 87 RETURNS integer 88 88 AS 'MODULE_PATHNAME','RASTER_getSRID' 89 89 LANGUAGE 'C' _IMMUTABLE_STRICT; 90 90 91 CREATEFUNCTION rt_width(raster)91 CREATEFUNCTION st_width(raster) 92 92 RETURNS integer 93 93 AS 'MODULE_PATHNAME','RASTER_getWidth' 94 94 LANGUAGE 'C' _IMMUTABLE_STRICT; 95 95 96 CREATEFUNCTION rt_height(raster)96 CREATEFUNCTION st_height(raster) 97 97 RETURNS integer 98 98 AS 'MODULE_PATHNAME','RASTER_getHeight' 99 99 LANGUAGE 'C' _IMMUTABLE_STRICT; 100 100 101 CREATEFUNCTION rt_pixelsizex(raster)101 CREATEFUNCTION st_pixelsizex(raster) 102 102 RETURNS float8 103 103 AS 'MODULE_PATHNAME','RASTER_getXPixelSize' 104 104 LANGUAGE 'C' _IMMUTABLE_STRICT; 105 105 106 CREATEFUNCTION rt_pixelsizey(raster)106 CREATEFUNCTION st_pixelsizey(raster) 107 107 RETURNS float8 108 108 AS 'MODULE_PATHNAME','RASTER_getYPixelSize' 109 109 LANGUAGE 'C' _IMMUTABLE_STRICT; 110 110 111 CREATEFUNCTION rt_rotationx(raster)111 CREATEFUNCTION st_rotationx(raster) 112 112 RETURNS float8 113 113 AS 'MODULE_PATHNAME','RASTER_getXRotation' 114 114 LANGUAGE 'C' _IMMUTABLE_STRICT; 115 115 116 CREATEFUNCTION rt_rotationy(raster)116 CREATEFUNCTION st_rotationy(raster) 117 117 RETURNS float8 118 118 AS 'MODULE_PATHNAME','RASTER_getYRotation' 119 119 LANGUAGE 'C' _IMMUTABLE_STRICT; 120 120 121 CREATEFUNCTION rt_upperleftx(raster)121 CREATEFUNCTION st_upperleftx(raster) 122 122 RETURNS float8 123 123 AS 'MODULE_PATHNAME','RASTER_getXUpperLeft' 124 124 LANGUAGE 'C' _IMMUTABLE_STRICT; 125 125 126 CREATEFUNCTION rt_upperlefty(raster)126 CREATEFUNCTION st_upperlefty(raster) 127 127 RETURNS float8 128 128 AS 'MODULE_PATHNAME','RASTER_getYUpperLeft' 129 129 LANGUAGE 'C' _IMMUTABLE_STRICT; 130 130 131 CREATEFUNCTION rt_gdalgeotransform(raster)131 CREATEFUNCTION st_gdalgeotransform(raster) 132 132 RETURNS TEXT 133 133 AS 'MODULE_PATHNAME','RASTER_getGDALGeoTransform' 134 134 LANGUAGE 'C' _IMMUTABLE_STRICT; 135 135 136 CREATEFUNCTION rt_esriworldfile(raster) RETURNS text AS136 CREATEFUNCTION st_esriworldfile(raster) RETURNS text AS 137 137 $$ 138 138 DECLARE … … 141 141 result text; 142 142 BEGIN 143 SELECT rt_pixelsizex(rast)::numeric INTO x;143 SELECT st_pixelsizex(rast)::numeric INTO x; 144 144 result = trunc(x, 10) || E'\n'; 145 145 146 SELECT rt_rotationy(rast)::numeric INTO x;146 SELECT st_rotationy(rast)::numeric INTO x; 147 147 result = result || trunc(x, 10) || E'\n'; 148 148 149 SELECT rt_rotationx(rast)::numeric INTO x;149 SELECT st_rotationx(rast)::numeric INTO x; 150 150 result = result || trunc(x, 10) || E'\n'; 151 151 152 SELECT rt_pixelsizey(rast)::numeric INTO x;152 SELECT st_pixelsizey(rast)::numeric INTO x; 153 153 result = result || trunc(x, 10) || E'\n'; 154 154 155 SELECT ( rt_upperleftx(rast) + rt_pixelsizex(rast)*0.5 + rt_rotationx(rast)*0.5)::numeric INTO x;155 SELECT (st_upperleftx(rast) + st_pixelsizex(rast)*0.5 + st_rotationx(rast)*0.5)::numeric INTO x; 156 156 result = result || trunc(x, 10) || E'\n'; 157 157 158 SELECT ( rt_upperlefty(rast) + rt_pixelsizey(rast)*0.5 + rt_rotationy(rast)*0.5)::numeric INTO x;158 SELECT (st_upperlefty(rast) + st_pixelsizey(rast)*0.5 + st_rotationy(rast)*0.5)::numeric INTO x; 159 159 result = result || trunc(x, 10) || E'\n'; 160 160 … … 165 165 166 166 167 CREATEFUNCTION rt_numbands(raster)167 CREATEFUNCTION st_numbands(raster) 168 168 RETURNS integer 169 169 AS 'MODULE_PATHNAME','RASTER_getNumBands' 170 170 LANGUAGE 'C' _IMMUTABLE_STRICT; 171 171 172 CREATEFUNCTION rt_bandpixeltype(raster, integer)172 CREATEFUNCTION st_bandpixeltype(raster, integer) 173 173 RETURNS text 174 174 AS 'MODULE_PATHNAME','RASTER_getBandPixelTypeName' 175 175 LANGUAGE 'C' _IMMUTABLE_STRICT; 176 176 177 CREATEFUNCTION rt_bandnodatavalue(raster, integer)177 CREATEFUNCTION st_bandnodatavalue(raster, integer) 178 178 RETURNS float4 179 179 AS 'MODULE_PATHNAME','RASTER_getBandNoDataValue' 180 180 LANGUAGE 'C' _IMMUTABLE_STRICT; 181 181 182 CREATEFUNCTION rt_bandpath(raster, integer)182 CREATEFUNCTION st_bandpath(raster, integer) 183 183 RETURNS text 184 184 AS 'MODULE_PATHNAME','RASTER_getBandPath' 185 185 LANGUAGE 'C' _IMMUTABLE_STRICT; 186 186 187 CREATEFUNCTION rt_value(raster, integer, integer, integer)187 CREATEFUNCTION st_value(raster, integer, integer, integer) 188 188 RETURNS float8 189 189 AS 'MODULE_PATHNAME','RASTER_getPixelValue' … … 191 191 192 192 -- TODO: To be implemented 193 CREATEFUNCTION rt_setvalue(raster, integer, integer, integer, float8)193 CREATEFUNCTION st_setvalue(raster, integer, integer, integer, float8) 194 194 RETURNS float8 195 195 AS 'MODULE_PATHNAME','RASTER_setPixelValue' 196 196 LANGUAGE 'C' _IMMUTABLE_STRICT; 197 197 -- 198 -- rt_MakeEmptyRaster( <width>, <height>, <ipx>, <ipy>,198 -- st_MakeEmptyRaster( <width>, <height>, <ipx>, <ipy>, 199 199 -- <scalex>, <scaley>, 200 200 -- <skewx>, <skewy>, 201 201 -- <srid>) 202 202 -- 203 CREATEFUNCTION rt_MakeEmptyRaster(int, int, float8, float8, float8, float8, float8, float8, int4)203 CREATEFUNCTION st_MakeEmptyRaster(int, int, float8, float8, float8, float8, float8, float8, int4) 204 204 RETURNS RASTER 205 205 AS 'MODULE_PATHNAME', 'RASTER_makeEmpty' … … 211 211 212 212 CREATE CAST (raster AS box2d) 213 WITH FUNCTION rt_raster_to_box2d(raster) AS IMPLICIT;213 WITH FUNCTION st_raster_to_box2d(raster) AS IMPLICIT; 214 214 215 215 CREATE CAST (raster AS geometry) 216 WITH FUNCTION rt_raster_envelope(raster) AS IMPLICIT;216 WITH FUNCTION st_raster_envelope(raster) AS IMPLICIT; 217 217 218 218 CREATE CAST (raster AS bytea) 219 WITH FUNCTION rt_bytea(raster) AS IMPLICIT;219 WITH FUNCTION st_bytea(raster) AS IMPLICIT; 220 220 221 221 ------------------------------------------------------------------------------ … … 223 223 ------------------------------------------------------------------------------ 224 224 225 CREATEFUNCTION rt_overleft(raster, raster)225 CREATEFUNCTION st_overleft(raster, raster) 226 226 RETURNS bool 227 227 AS 'select geometry_overleft($1::geometry, $2::geometry)' 228 228 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 229 229 230 CREATEFUNCTION rt_overright(raster, raster)230 CREATEFUNCTION st_overright(raster, raster) 231 231 RETURNS bool 232 232 AS 'select geometry_overright($1::geometry, $2::geometry)' 233 233 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 234 234 235 CREATEFUNCTION rt_left(raster, raster)235 CREATEFUNCTION st_left(raster, raster) 236 236 RETURNS bool 237 237 AS 'select geometry_left($1::geometry, $2::geometry)' 238 238 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 239 239 240 CREATEFUNCTION rt_right(raster, raster)240 CREATEFUNCTION st_right(raster, raster) 241 241 RETURNS bool 242 242 AS 'select geometry_right($1::geometry, $2::geometry)' 243 243 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 244 244 245 CREATEFUNCTION rt_overabove(raster, raster)245 CREATEFUNCTION st_overabove(raster, raster) 246 246 RETURNS bool 247 247 AS 'select geometry_overabove($1::geometry, $2::geometry)' 248 248 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 249 249 250 CREATEFUNCTION rt_overbelow(raster, raster)250 CREATEFUNCTION st_overbelow(raster, raster) 251 251 RETURNS bool 252 252 AS 'select geometry_overbelow($1::geometry, $2::geometry)' 253 253 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 254 254 255 CREATEFUNCTION rt_above(raster, raster)255 CREATEFUNCTION st_above(raster, raster) 256 256 RETURNS bool 257 257 AS 'select geometry_above($1::geometry, $2::geometry)' 258 258 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 259 259 260 CREATEFUNCTION rt_below(raster, raster)260 CREATEFUNCTION st_below(raster, raster) 261 261 RETURNS bool 262 262 AS 'select geometry_below($1::geometry, $2::geometry)' 263 263 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 264 264 265 CREATEFUNCTION rt_same(raster, raster)265 CREATEFUNCTION st_same(raster, raster) 266 266 RETURNS bool 267 267 AS 'select geometry_same($1::geometry, $2::geometry)' 268 268 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 269 269 270 CREATEFUNCTION rt_contained(raster, raster)270 CREATEFUNCTION st_contained(raster, raster) 271 271 RETURNS bool 272 272 AS 'select geometry_contained($1::geometry, $2::geometry)' 273 273 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 274 274 275 CREATEFUNCTION rt_contain(raster, raster)275 CREATEFUNCTION st_contain(raster, raster) 276 276 RETURNS bool 277 277 AS 'select geometry_contain($1::geometry, $2::geometry)' 278 278 LANGUAGE 'SQL' _IMMUTABLE_STRICT; 279 279 280 CREATEFUNCTION rt_overlap(raster, raster)280 CREATEFUNCTION st_overlap(raster, raster) 281 281 RETURNS bool 282 282 AS 'select geometry_overlap($1::geometry, $2::geometry)' … … 288 288 289 289 CREATE OPERATOR << ( 290 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_left,290 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_left, 291 291 COMMUTATOR = '>>', 292 292 RESTRICT = positionsel, JOIN = positionjoinsel … … 294 294 295 295 CREATE OPERATOR &< ( 296 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_overleft,296 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_overleft, 297 297 COMMUTATOR = '&>', 298 298 RESTRICT = positionsel, JOIN = positionjoinsel … … 300 300 301 301 CREATE OPERATOR <<| ( 302 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_below,302 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_below, 303 303 COMMUTATOR = '|>>', 304 304 RESTRICT = positionsel, JOIN = positionjoinsel … … 306 306 307 307 CREATE OPERATOR &<| ( 308 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_overbelow,308 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_overbelow, 309 309 COMMUTATOR = '|&>', 310 310 RESTRICT = positionsel, JOIN = positionjoinsel … … 312 312 313 313 CREATE OPERATOR && ( 314 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_overlap,314 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_overlap, 315 315 COMMUTATOR = '&&', 316 316 RESTRICT = postgis_gist_sel, JOIN = postgis_gist_joinsel … … 318 318 319 319 CREATE OPERATOR &> ( 320 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_overright,320 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_overright, 321 321 COMMUTATOR = '&<', 322 322 RESTRICT = positionsel, JOIN = positionjoinsel … … 324 324 325 325 CREATE OPERATOR >> ( 326 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_right,326 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_right, 327 327 COMMUTATOR = '<<', 328 328 RESTRICT = positionsel, JOIN = positionjoinsel … … 330 330 331 331 CREATE OPERATOR |&> ( 332 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_overabove,332 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_overabove, 333 333 COMMUTATOR = '&<|', 334 334 RESTRICT = positionsel, JOIN = positionjoinsel … … 336 336 337 337 CREATE OPERATOR |>> ( 338 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_above,338 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_above, 339 339 COMMUTATOR = '<<|', 340 340 RESTRICT = positionsel, JOIN = positionjoinsel … … 342 342 343 343 CREATE OPERATOR ~= ( 344 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_same,344 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_same, 345 345 COMMUTATOR = '~=', 346 346 RESTRICT = eqsel, JOIN = eqjoinsel … … 348 348 349 349 CREATE OPERATOR @ ( 350 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_contained,350 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_contained, 351 351 COMMUTATOR = '~', 352 352 RESTRICT = contsel, JOIN = contjoinsel … … 354 354 355 355 CREATE OPERATOR ~ ( 356 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = rt_contain,356 LEFTARG = raster, RIGHTARG = raster, PROCEDURE = st_contain, 357 357 COMMUTATOR = '@', 358 358 RESTRICT = contsel, JOIN = contjoinsel … … 678 678 || ' ADD CONSTRAINT ' 679 679 || quote_ident('enforce_srid_' || p_column_name) 680 || ' CHECK ( RT_SRID(' || quote_ident(p_column_name)680 || ' CHECK (ST_SRID(' || quote_ident(p_column_name) 681 681 || ') = ' || p_srid::text || ')'; 682 682 RAISE DEBUG '%', sql;
