1 PACKAGE SDO_GEOR AUTHID CURRENT_USER AS
2
3
4 -- ---------------------------------------------------------------------
5 -- Create and Process GeoRaster Objects
6 -- ---------------------------------------------------------------------
7
8 --
9 -- NAME:
10 -- init constructor functions
11 --
12 -- DESCRIPTION
13 -- init()s return a GeoRaster Object which is empty except that a RDT
14 -- table name and a raster ID are assigned to it. The RDT and ID are
15 -- required so that this object can be registered in the sysdata table
16 -- All other attributes are NULL.
17 --
18 -- If rasterDataTable or rasterID is not specified, it is generated
19 -- automatically.
20 --
21 -- ARGUMENTS
22 -- rasterDataTable - RDT table name
23 -- rasterID - rasterID number
24 --
25 -- RETURNS
26 -- An GeoRaster object with rasterDataTable and rasterID initialized
27 --
28
29 FUNCTION init
30 (
31 rasterDataTable IN VARCHAR2 DEFAULT NULL,
32 rasterID IN NUMBER DEFAULT NULL
33 )
34 RETURN MDSYS.SDO_GEORASTER DETERMINISTIC;
35
36
37 --
38 -- NAME:
39 -- createBlank functions
40 --
41 -- DESCRIPTION
42 -- create a blank GeoRaster object which has normal size as
43 -- any other GeoRaster objects except that all its cells
44 -- have the same value, such as 100, 5, 54.6.
45 --
46 -- NOTE, the spatialExtent will always have NULL srid and
47 -- integer coordinates until it is georeferenced to another CS.
48 -- Initially, the blank object is not georeferenced.
49 --
50 -- ARGUMENTS
51 -- rasterType - the GeoRaster Type defined by Oracle.
52 -- the number of dimensions is implied in it
53 -- ultCoord - Upper-Left corner cell coordinate (integer) in
54 -- cell space. The default is (0,0)
55 -- dimSizes - the size (cell numbers) along each dimension
56 -- cellValue - the cell value for all raster cells
57 --
58 -- rasterDataTable and rasterID have the similar implications
59 -- as in init() functions. See init() comments
60 --
61 -- RETURNS
62 -- A Blank GeoRaster object
63 --
64
65 FUNCTION createBlank
66 (
67 rasterType IN INTEGER,
68 ultCoord IN MDSYS.SDO_NUMBER_ARRAY,
69 dimSizes IN MDSYS.SDO_NUMBER_ARRAY,
70 cellValue IN NUMBER,
71 rasterDataTable IN VARCHAR2 DEFAULT NULL,
72 rasterID IN NUMBER DEFAULT NULL
73 )
74 return MDSYS.SDO_GEORASTER DETERMINISTIC;
75
76
77 --
78 -- NAME:
79 -- copy procedure
80 --
81 -- DESCRIPTION
82 -- Makes a simple copy of an existing GeoRaster object.
83 --
84 -- ARGUMENTS
85 -- inGeoRaster - The SDO_GEORASTER object to be copied
86 -- outGeoRaster - The new GeoRaster Object
87 --
88 -- RETURNS
89 -- A GeoRaster object
90 --
91 PROCEDURE copy
92 (
93 inGeoRaster IN MDSYS.SDO_GEORASTER,
94 outGeoRaster IN OUT MDSYS.SDO_GEORASTER
95 );
96
97 --
98 -- NAME:
99 -- changeFormat procedure
100 --
101 -- DESCRIPTION
102 -- Change the storage format of an existing GeoRaster object.
103 --
104 -- ARGUMENTS
105 -- georaster - The SDO_GEORASTER object whose format to be changed
106 -- storageParam - A string specifying storage parameters
107 -- The details are explained in GeoRaster Manual
108 -- bgValues - background values for filling sparse data
109 --
110 -- RETURNS
111 -- A GeoRaster object
112 --
113 PROCEDURE changeFormat
114 (
115 georaster IN OUT MDSYS.SDO_GEORASTER,
116 storageParam IN VARCHAR2,
117 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
118 );
119
120 --
121 -- NAME:
122 -- changeFormatCopy procedure
123 --
124 -- DESCRIPTION
125 -- Makes a copy of an existing GeoRaster object with the same or
126 -- different storage format.
127 --
128 -- ARGUMENTS
129 -- inGeoRaster - The SDO_GEORASTER object to be copied
130 -- pyramidLevel - The pyramid level of the source GeoRaster object
131 -- storageParam - A string specifying storage parameters for the copy
132 -- The details are explained in GeoRaster Manual
133 -- outGeoRaster - The new GeoRaster Object
134 -- bgValues - background values for filling sparse data
135 --
136 -- RETURNS
137 -- A GeoRaster object
138 --
139 PROCEDURE changeFormatCopy
140 (
141 inGeoRaster IN MDSYS.SDO_GEORASTER,
142 storageParam IN VARCHAR2,
143 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
144 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
145 );
146
147 PROCEDURE changeFormatCopy
148 (
149 inGeoRaster IN MDSYS.SDO_GEORASTER,
150 pyramidLevel IN NUMBER,
151 storageParam IN VARCHAR2,
152 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
153 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
154 );
155
156 --
157 -- NAME:
158 -- maks procedure
159 --
160 -- DESCRIPTION
161 -- apply a mask to an existing GeoRaster object with the same or
162 -- different storage format.
163 --
164 -- ARGUMENTS
165 -- inGeoRaster - The SDO_GEORASTER object to be applied with mask
166 -- bandNumbers - The physical bands in cell space
167 -- mask - The mask SDO_GEORASTER object
168 -- storageParam - A string specifying storage parameters for the copy
169 -- The details are explained in GeoRaster Manual
170 -- outGeoRaster - The new GeoRaster Object
171 -- zeroMapping - The value is used for mask value 0
172 -- onemapping - The value is used for mask value 1
173 -- bgValues - background values for filling sparse data
174 --
175 --
176 PROCEDURE mask
177 (
178 inGeoraster IN MDSYS.SDO_GEORASTER,
179 bandNumbers IN VARCHAR2,
180 mask IN MDSYS.SDO_GEORASTER DEFAULT NULL,
181 storageParam IN VARCHAR2,
182 outGeoraster IN OUT MDSYS.SDO_GEORASTER,
183 zeroMapping IN NUMBER DEFAULT 0,
184 oneMapping IN NUMBER DEFAULT 1,
185 bgValues IN SDO_NUMBER_ARRAY DEFAULT NULL
186 );
187
188
189
190 --
191 -- NAME:
192 -- subset procedure
193 --
194 -- DESCRIPTION
195 -- This procedure does either spatial crop/cut/clip, or layer/band
196 -- subset, or both.
197 --
198 -- ARGUMENTS
199 -- inGeoRaster - The source SDO_GEORASTER object
200 -- pyramidLevel - The pyramid level of the source GeoRaster object
201 -- cropArea - The crop area. If it is of SDO_GEOMETRY type,
202 -- it can be in any coordinate space. If it is
203 -- of SDO_NUMBER_ARRAY, it is in cell space only
204 -- layerNumbers - The logical layers
205 -- bandNumbers - The physical bands in cell space
206 -- storageParam - A string specifying storage parameters for the result.
207 -- The details are explained in GeoRaster Manual
208 -- outGeoRaster - The new GeoRaster Object
209 -- bgValues - background values for filling sparse data
210 --
211 -- RETURNS
212 -- A GeoRaster object
213 --
214 PROCEDURE subset
215 (
216 inGeoRaster IN MDSYS.SDO_GEORASTER,
217 cropArea IN MDSYS.SDO_GEOMETRY,
218 layerNumbers IN VARCHAR2,
219 storageParam IN VARCHAR2,
220 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
221 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL,
222 polygonClip IN VARCHAR2 DEFAULT NULL
223 );
224
225 PROCEDURE subset
226 (
227 inGeoRaster IN MDSYS.SDO_GEORASTER,
228 cropArea IN MDSYS.SDO_NUMBER_ARRAY,
229 bandNumbers IN VARCHAR2,
230 storageParam IN VARCHAR2,
231 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
232 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
233 );
234
235 PROCEDURE subset
236 (
237 inGeoRaster IN MDSYS.SDO_GEORASTER,
238 pyramidLevel IN NUMBER,
239 cropArea IN MDSYS.SDO_GEOMETRY,
240 layerNumbers IN VARCHAR2,
241 storageParam IN VARCHAR2,
242 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
243 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL,
244 polygonClip IN VARCHAR2 DEFAULT NULL
245 );
246
247 PROCEDURE subset
248 (
249 inGeoRaster IN MDSYS.SDO_GEORASTER,
250 pyramidLevel IN NUMBER,
251 cropArea IN MDSYS.SDO_NUMBER_ARRAY,
252 bandNumbers IN VARCHAR2,
253 storageParam IN VARCHAR2,
254 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
255 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
256 );
257
258 --
259 -- NAME:
260 -- scale procedure
261 --
262 -- DESCRIPTION
263 -- This procedure enlarges or reduces a georaster object and
264 -- overwrites it.
265 --
266 -- ARGUMENTS
267 -- inGeoRaster - The source SDO_GEORASTER object
268 -- scaleParam - The scale factor or factors
269 -- resampleParam - The resampling method
270 -- storageParam - A string specifying storage parameters for the result
271 -- The details are explained in GeoRaster Manual
272 -- bgValues - background values for filling sparse data
273 --
274 -- RETURNS
275 -- A GeoRaster object
276 --
277 PROCEDURE scale
278 (
279 inGeoRaster IN OUT MDSYS.SDO_GEORASTER,
280 scaleParam IN VARCHAR2,
281 resampleParam IN VARCHAR2,
282 storageParam IN VARCHAR2,
283 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
284 );
285
286
287 --
288 -- NAME:
289 -- scaleCopy procedure
290 --
291 -- DESCRIPTION
292 -- This procedure enlarges or reduces a georaster object and
293 -- write the result as another georaster object.
294 --
295 -- ARGUMENTS
296 -- inGeoRaster - The source SDO_GEORASTER object
297 -- pyramidLevel - The pyramid level of the source GeoRaster object
298 -- scaleParam - The scale factor or factors
299 -- resampleParam - The resampling method
300 -- storageParam - A string specifying storage parameters for the result
301 -- The details are explained in GeoRaster Manual
302 -- outGeoRaster - The new GeoRaster Object
303 -- bgValues - background values for filling sparse data
304 --
305 -- RETURNS
306 -- A GeoRaster object
307 --
308 PROCEDURE scaleCopy
309 (
310 inGeoRaster IN MDSYS.SDO_GEORASTER,
311 scaleParam IN VARCHAR2,
312 resampleParam IN VARCHAR2,
313 storageParam IN VARCHAR2,
314 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
315 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
316 );
317
318 PROCEDURE scaleCopy
319 (
320 inGeoRaster IN MDSYS.SDO_GEORASTER,
321 pyramidLevel IN NUMBER,
322 scaleParam IN VARCHAR2,
323 resampleParam IN VARCHAR2,
324 storageParam IN VARCHAR2,
325 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
326 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
327 );
328
329 --
330 -- NAME:
331 -- generatePyramid
332 --
333 -- DESCRIPTION
334 -- This procedure generates pyramids, which are stored together with
335 -- the original data.
336 --
337 --ARGUMENTS
338 -- georaster - The source SDO_GEORASTER object
339 -- pyramidParams - The pyramid parameters
340 -- bgValues - background values for filling sparse data
341 -- parallelParam - The parameter related to parallel processing.
342 -- Currently we only support
343 -- "parallel=n": where n>1 is the degree of parallel.
344 -- The database optimizer uses the degree of
345 -- parallelism specified by n
346 -- By default when this parameter is null, there is
347 -- no parallel processing.
348 --
349 -- RETURNS
350 -- A GeoRaster object
351 --
352 PROCEDURE generatePyramid
353 (
354 georaster IN OUT MDSYS.SDO_GEORASTER,
355 pyramidParams IN VARCHAR2,
356 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL,
357 parallelParam IN VARCHAR2 DEFAULT NULL
358 );
359
360
361 --
362 -- NAME:
363 -- deletePyramid
364 --
365 -- DESCRIPTION
366 -- This procedure deletes pyramids of a georaster object.
367 --
368 --ARGUMENTS
369 -- georaster - The source SDO_GEORASTER object
370 --
371 -- RETURNS
372 -- A GeoRaster object
373 --
374 PROCEDURE deletePyramid
375 (
376 georaster IN OUT MDSYS.SDO_GEORASTER
377 );
378
379
380
381 --
382 -- NAME:
383 -- generateSpatialExtent
384 --
385 -- DESCRIPTION
386 -- This function generates the spatialExtent of a georaster object
387 -- using its SRS (spatial reference system) information.
388 -- The srid of the generated spatialExtent is decided by the SRS.
389 -- The srid is null if the georaster object is not referenced.
390 --
391 --ARGUMENTS
392 -- georaster - The GeoRaster object on which the spatialExtent is
393 -- to be generated
394 -- height - Z value in the 3D GeoReference system
395 --
396 -- RETURNS
397 -- the spatialExtent geometry
398 --
399 FUNCTION generateSpatialExtent
400 (
401 georaster IN MDSYS.SDO_GEORASTER,
402 height IN NUMBER DEFAULT NULL
403 )
404 return MDSYS.SDO_GEOMETRY DETERMINISTIC PARALLEL_ENABLE;
405
406 --
407 -- NAME:
408 -- mosaic
409 --
410 -- DESCRIPTION
411 -- This procedure mosaics multiple GeoRaster objects into one. The
412 -- source GeoRaster objects must be prepared tiles or blocks that
413 -- are rectified and referenced onto the same coordinate system
414 -- with affine transformation. They must have the same number of
415 -- layers/bands and must be spatially aligned along the row and column
416 -- dimensions. They must also have the same mapping between the band
417 -- and layer numbers.
418 --
419 --ARGUMENTS
420 -- georasterTableName - the table containing all source georaster objects
421 -- georasterColumnName - the column of the georasterTable, in which all
422 -- georaster objects are to be masaicked
423 -- georaster - the result, i.e., the mosaic georaster object
424 -- storageParam - storage parameter specification
425 -- bgValues - background values for filling in the gaps
426 --
427 -- RETURNS
428 -- a mosaic georaster object
429 --
430 PROCEDURE mosaic
431 (
432 georasterTableName IN VARCHAR2,
433 georasterColumnName IN VARCHAR2,
434 georaster IN OUT MDSYS.SDO_GEORASTER,
435 storageParam IN VARCHAR2,
436 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
437 );
438
439 --
440 -- NAME:
441 -- validateForMosaic
442 --
443 -- DESCRIPTION
444 -- check whether tiles in the given table are mosaickable
445 --
446 -- ARGUMENTS
447 -- georasterTableName - the table containing all source georaster objects
451 -- NOTES
448 -- georasterColumnName - the column of the georasterTable, in which all
449 -- georaster objects are to be masaicked
450 -- resultTableName - the name of the table to store the result
452 -- A result table must be created before calling this procedure. The format
453 -- of the result table is:
454 -- (description VARCHAR2(80) NOT NULL, rowid1 ROWID, rowid2 ROWID)
455 --
456 PROCEDURE validateForMosaic
457 (
458 georasterTableName IN VARCHAR2,
459 georasterColumnName IN VARCHAR2,
460 resultTableName IN VARCHAR2
461 );
462
463
464 -- NAME:
465 -- mosaic
466 --
467 -- DESCRIPTION
468 -- This procedure mosaics multiple GeoRaster objects retrieved from a
469 -- cursor and return the mosaicked image in the specified window of
470 -- interest. The source GeoRaster objects must be prepared tiles or
471 -- blocks that are rectified and referenced onto the same coordinate
472 -- system with affine transformation. They must have the same number of
473 -- layers/bands and must be spatially aligned along the row and column
474 -- dimensions. They must also have the same mapping between the band
475 -- and layer numbers.
476 --
477 --ARGUMENTS
478 -- georasters - the source georaster objects
479 -- pyramidLevel - the pyramid level
480 -- window - the cropping window
481 -- layerNumbers - layer numbers
482 -- georaster - the result, i.e., the mosaic georaster object
483 -- storageParam - storage parameter specification
484 -- bgValues - background values for filling in the gaps
485 --
486 --
487 PROCEDURE mosaic
488 (
489 inGeoRasters IN SYS_REFCURSOR,
490 pyramidLevel IN NUMBER,
491 window IN SDO_GEOMETRY,
492 layerNumbers IN VARCHAR2,
493 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
494 storageParam IN VARCHAR2,
495 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
496 );
497
498 --
499 -- NAME:
500 -- mergeLayers
501 --
502 -- DESCRIPTION
503 -- append selected layers of a GeoRaster object to another GeoRaster object
504 --
505 -- ARGUMENTS
506 -- targetGeoraster - the GeoRaster object to be appended to
507 -- sourceGeoraster - the source GeoRaster object
508 -- sourceLayerNumbers - source layers to be appended to the target
509 -- bgValues - background filling values
510 --
511 -- NOTES
512 -- The source and target GeoRaster objects must have the same row and cloumn
513 -- dimension sizes. They also must cover the same area in the model (if both
514 -- are georeferenced) or cell (if neither is georeferenced) space.
515 --
516 PROCEDURE mergeLayers(
517 targetGeoraster IN OUT MDSYS.SDO_GEORASTER,
518 sourceGeoraster IN MDSYS.SDO_GEORASTER,
519 sourceLayerNumbers IN VARCHAR2 DEFAULT NULL,
520 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
521 );
522
523 --
524 -- NAME:
525 -- mergeLayers
526 --
527 -- DESCRIPTION
528 -- union selected layers of two GeoRaster objects to generate a new
529 -- GeoRaster object
530 --
531 -- ARGUMENTS
532 -- source1Georaster - the first source GeoRaster object
533 -- source1LayerNumbers - source layers of the first object to be included
534 -- source2Georaster - the second GeoRaster object
535 -- source2LayerNumbers - source layers of the second object to be included
536 -- storageParam - the storage parameter for the output object
537 -- outGeoraster - the result GeoRaster object
538 -- bgValues - background filling values
539 -- pyramidLevel - union the layers on the pyramidLevel
540 -- NOTES
541 -- The two source GeoRaster objects must have the same row and cloumn
542 -- dimension sizes and the same georeferencing.
543 --
544 -- If storageParam is NULL, the result object has the same storage
545 -- attributes as those of the first source object.
546 --
547 PROCEDURE mergeLayers(
548 source1Georaster IN MDSYS.SDO_GEORASTER,
549 source1LayerNumbers IN VARCHAR2,
550 source2Georaster IN MDSYS.SDO_GEORASTER,
551 source2LayerNumbers IN VARCHAR2,
552 storageParam IN VARCHAR2,
553 outGeoraster IN OUT MDSYS.SDO_GEORASTER,
554 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL,
555 pyramidLevel IN NUMBER DEFAULT NULL
556 );
557
558 --
559 -- NAME:
560 -- updateRaster
561 --
562 -- DESCRIPTION
563 -- Update a specified area or the overlapping parts of one GeoRaster
564 -- object with selected bands or layers of another GeoRaster object.
565 --
566 -- ARGUMENTS
567 -- targetGeoraster - the GeoRaster object to be updated
568 -- targetPyramidLevel - the target pyramid level to be updated
569 -- targetLayerNumbers - the layers to be updated
570 -- targetBandNumbers - the bands to be updated
571 -- targetArea - the area to be updated
572 -- sourceGeoraster - the source GeoRaster object
573 -- sourcePyramidLevel - the source pyramid level
577 -- bgValues - background filling values
574 -- sourceLayerNumbers - the source layers to be considered
575 -- sourceBandNumbers - the source bands to be considered
576 -- updateUpperPyramids - whether to update upper level pyramids
578 --
579 -- NOTES
580 -- If georeferenced, both objects should be in the same coordinate system.
581 -- Both GeoRaster objects should have the same cell depth and spatial
582 -- resolution (if georeferenced).
583 -- If both are not georeferenced, the UTLCoordinates will be considered to
584 -- co-locate them into each other.
585 -- The two georaster objects could have different dimensions and sizes.
586 -- If targetArea is not specified (NULL), all the overlapping parts are
587 -- updated.
588 -- The band/layer numbers should have a one-to-one matching.
589 -- If the source georaster object is not large enough to fill in the target
590 -- area, the uncovered area will not be updated.
591 -- If the source georaster object is sparse, background filling values
592 -- are considered.
593 -- If the target GeoRaster objects has pyramids and/or is compressed, the
594 -- updates should be automatically reflected in the pyramids and/or be
595 -- compressed as well.
596 --
597 PROCEDURE updateRaster(
598 targetGeoraster IN OUT MDSYS.SDO_GEORASTER,
599 targetPyramidLevel IN NUMBER,
600 targetLayerNumbers IN VARCHAR2,
601 targetArea IN MDSYS.SDO_GEOMETRY,
602 sourceGeoraster IN MDSYS.SDO_GEORASTER,
603 sourcePyramidLevel IN NUMBER,
604 sourceLayerNumbers IN VARCHAR2,
605 updateUpperPyramids IN VARCHAR2,
606 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
607 );
608
609 PROCEDURE updateRaster(
610 targetGeoraster IN OUT MDSYS.SDO_GEORASTER,
611 targetPyramidLevel IN NUMBER,
612 targetBandNumbers IN VARCHAR2,
613 targetArea IN MDSYS.SDO_NUMBER_ARRAY,
614 sourceGeoraster IN MDSYS.SDO_GEORASTER,
615 sourcePyramidLevel IN NUMBER,
616 sourceBandNumbers IN VARCHAR2,
617 updateUpperPyramids IN VARCHAR2,
618 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
619 );
620
621 --
622 -- NAME:
623 -- createTemplate
624 --
625 -- DESCRIPTION
626 -- Generate template metadata for a georaster object, and optionally
627 -- insert entries with empty raster blocks into the RDT.
628 --
629 -- ARGUMENTS
630 -- georaster - the georaster object
631 -- rasterType - the raster type
632 -- rasterSpec - the raster specification
633 -- maskLayers - layers with bitmap mask
634 -- initRdtEntry - whether to insert the RDT entries
635 --
636 -- NOTES
637 --
638 PROCEDURE createTemplate
639 (
640 georaster IN OUT MDSYS.SDO_GEORASTER,
641 rasterType IN NUMBER,
642 rasterSpec IN VARCHAR2,
643 maskLayers IN VARCHAR2 DEFAULT NULL,
644 initRdtEntry IN VARCHAR2 DEFAULT NULL
645 );
646
647 --
648 -- NAME:
649 -- getRasterBlockLocator
650 --
651 -- DESCRIPTION
652 -- Get the LOB locator of a specified raster block
653 --
654 -- ARGUMENTS
655 -- georaster - the source GeoRaster object
656 -- pyramidLevel - the pyramid level
657 -- bandBlockNumber - the band block number
658 -- rowBlockNumber - the row block number
659 -- colBlockNumber - the column block number
660 -- loc - the in/out lob locator
661 -- isBitmapMask - 'true' if access a rasterblock of a bitmap mask
662 -- lock_for_write - lock for write
663 --
664 -- NOTES
665 -- If the value for isBitmapMask is not 'true' (case insensitive),
666 -- a regular raster block is accessed; otherwise, a bitmap mask block
667 -- is being accessed.
668 --
669 -- If the value for lock_for_write is not 'true' (case insensitive),
670 -- the row in the RDT is not locked.
671 --
672 PROCEDURE getRasterBlockLocator
673 (
674 georaster IN MDSYS.SDO_GEORASTER,
675 pyramidLevel IN NUMBER,
676 bandBlockNumber IN NUMBER,
677 rowBlockNumber IN NUMBER,
678 columnBlockNumber IN NUMBER,
679 loc IN OUT NOCOPY BLOB,
680 isBitmapMask IN VARCHAR2 DEFAULT NULL,
681 lock_for_write IN VARCHAR2 DEFAULT NULL
682 );
683
684 --
685 -- NAME:
686 -- getRasterBlockLocator procedure
687 --
688 -- DESCRIPTION
689 -- The procedure retrieve the raster block locator which
690 -- contains a single cell located anywhere in the georaster
691 -- object by specifying its row/column/band numbers in its
692 -- cell coordinate space or by specifying a point geometry
693 -- in either model coordinate space or cell coordinate space
694 --
695 -- ARGUMENTS
696 -- georaster - the georaster object to query upon
697 -- pyramidLevel - the level in pyramid
698 -- rowNumber - row number in cell space
699 -- colNumber - column number in cell space
700 -- bandNumber - band number in cell space (not model space)
701 -- layerNumber - logical layer number
705 --
702 -- ptGeom - a point geometry in either cell space
703 -- or model space
704 -- RETURNS
706 --
707 PROCEDURE getRasterBlockLocator
708 (
709 georaster IN MDSYS.SDO_GEORASTER,
710 pyramidLevel IN NUMBER,
711 rowNumber IN NUMBER,
712 colNumber IN NUMBER,
713 bandNumber IN NUMBER,
714 offset out NUMBER,
715 loc IN OUT NOCOPY BLOB,
716 isBitmapMask IN VARCHAR2 DEFAULT NULL,
717 lock_for_write IN VARCHAR2 DEFAULT NULL
718 );
719
720 PROCEDURE getRasterBlockLocator
721 (
722 georaster IN MDSYS.SDO_GEORASTER,
723 pyramidLevel IN NUMBER,
724 ptGeom IN MDSYS.SDO_GEOMETRY,
725 layerNumber IN NUMBER,
726 offset out NUMBER,
727 loc IN OUT NOCOPY BLOB,
728 isBitmapMask IN VARCHAR2 DEFAULT NULL,
729 lock_for_write IN VARCHAR2 DEFAULT NULL
730 );
731 --
732 -- NAME:
733 -- getRasterRange
734 --
735 -- DESCRIPTION
736 -- Get the minimum and maximum cell values of a layer of a GeoRaster object
737 -- or the object itself (i.e., layerNumber = 0).
738 --
739 -- ARGUMENTS
740 -- georaster - the source GeoRaster object
741 -- layerNumber - the layer number, 0 for object layer
742 --
743 -- NOTES
744 --
745 FUNCTION getRasterRange
746 (
747 georaster IN MDSYS.SDO_GEORASTER,
748 layerNumber IN NUMBER DEFAULT 0
749 ) RETURN SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
750
751
752 --
753 -- NAME:
754 -- validateBlockMBR
755 --
756 -- DESCRIPTION
757 -- check whether the blockMBR geometries in the RDT are valid
758 --
759 -- ARGUMENTS
760 -- georaster - the GeoRaster object whose blockMBRs are to be checked
761 --
762 -- RETURNS
763 -- 'NULL' if the GeoRaster object is NULL;
764 -- 'TRUE' if the blockMBRs are valid;
765 -- otherwise an error number
766 --
767 -- NOTES
768 -- Each blockMBR is a rectangle defined in the cell space and must be
769 -- IDENTICAL to following geometry, respectively:
770 -- MDSYS.SDO_GEOMETRY(2003,NULL,NULL,
771 -- MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3),
772 -- MDSYS.SDO_ORDINATE_ARRAY(R0+rowBlockNumber*RSZ,
773 -- C0+columnBlockNumber*CSZ,
774 -- R0+(rowBlockNumber+1)*RSZ-1,
775 -- C0+(columnBlockNumber+1)*CSZ-1))
776 -- where:
777 -- R0 is the upper-left row coordinate in the cell space;
778 -- C0 is the upper-left column coordinate in the cell space;
779 -- RSZ is the row block size;
780 -- CSZ is the column block size
781
782 -- The dimension information of a blockMBR geometry must be in the order
783 -- of (ROW, COLUMN).
784
785 FUNCTION validateBlockMBR
786 (
787 georaster IN MDSYS.SDO_GEORASTER
788 ) RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
789
790 --
791 -- NAME:
792 -- generateBlockMBR
793 --
794 -- DESCRIPTION
795 -- generate correct blockMBR geometries in the RDT
796 --
797 -- ARGUMENTS
798 -- georaster - the GeoRaster object whose blockMBRs are to be generated
799 --
800 -- NOTES
801 -- The raster rows in the RDT are updated with the correct blockMBR values,
802 -- but the GeoRaster object itself is not changed.
803 --
804 PROCEDURE generateBlockMBR
805 (
806 georaster IN MDSYS.SDO_GEORASTER
807 );
808
809 -- ---------------------------------------------------------------------
810 -- Compress and Decompress GeoRaster Objects
811 --
812 -- They are all embedded into "storageParam" in related procedures
813 -- using keyword "compression"
814 -- ---------------------------------------------------------------------
815 --
816 -- NAME:
817 -- calcCompressionRatio function
818 --
819 -- DESCRIPTION
820 -- calculates the compression ratio of a compressed GeoRaster
821 -- object on the fly.
822 --
823 -- ARGUMENTS
824 -- georaster - The compressed SDO_GEORASTER object
825 --
826 -- RETURNS
827 -- A Number
828 --
829 FUNCTION calcCompressionRatio
830 (
831 georaster IN MDSYS.SDO_GEORASTER
832 )
833 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
834
835
836 -- ---------------------------------------------------------------------
837 -- Update/Modify/Change GeoRaster Object Cell (or say, Raster) Data
838 --
839 -- These functions will change cell values, so use them cautiously.
840 -- ---------------------------------------------------------------------
841 --
842 -- NAME:
843 -- changeCellValue procedure
844 --
845 -- DESCRIPTION
846 -- This procedure changes all cells inside a window of each
847 -- specified layer/band to have a specified value
848 --
849 -- ARGUMENTS
850 -- georaster - The SDO_GEORASTER object to be changed
851 -- window - The window inside which each cell will be changed
852 -- to have the newCellValue. If it is of SDO_GEOMETRY type,
856 -- bandNumbers - The physical bands in cell space to be changed
853 -- it can be in any coordinate space. If it is
854 -- of SDO_NUMBER_ARRAY, it is in cell space only
855 -- layerNumbers - The logical layers whose cells to be changed
857 -- newCellValue - the new cell value for each cell inside the window
858 -- of each specified band/layer
859 -- bgValues - background values for filling sparse data
860 --
861 -- RETURNS
862 -- the source GeoRaster object with cells changed
863 --
864 PROCEDURE changeCellValue
865 (
866 georaster IN OUT MDSYS.SDO_GEORASTER,
867 window IN MDSYS.SDO_NUMBER_ARRAY,
868 bandNumbers IN VARCHAR2,
869 newCellValue IN NUMBER,
870 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
871 );
872
873 PROCEDURE changeCellValue
874 (
875 georaster IN OUT MDSYS.SDO_GEORASTER,
876 window IN MDSYS.SDO_GEOMETRY,
877 layerNumbers IN VARCHAR2,
878 newCellValue IN NUMBER,
879 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
880 );
881
882
883 -- ---------------------------------------------------------------------
884 -- Georeference GeoRaster Objects
885 --
886 -- Other georeferencing or related functions include:
887 -- 1. setSRS() adds, modifies and deletes georeferencing info
888 -- 2. importFrom() loads ArcInfo World File from file or CLOB
889 -- 3. the tool GeoRasterLoader loads ArcInfo World File from file
890 -- ---------------------------------------------------------------------
891
892 --
893 -- NAME:
894 -- georeference
895 --
896 -- DESCRIPTION
897 -- georeference a GeoRaster object using the provided
898 -- cell-to-model transformation coefficients.
899 -- in 10iR1, it means the following affine transformation:
900 -- x = A * col + B * row + C
901 -- y = D * col + E * row + F
902 -- where A, B, C, D, E, F are given coefficients.
903 -- The result will be the following model-to-cell tranformation:
904 -- row = a + b * x + c * y
905 -- col = d + e * x + f * y
906 -- where a, b, c, d, e, f will be stored in the SRS of the
907 -- GeoRaster object.
908 --
909 -- NOTE: the spatial resolutions might not be set by this function.
910 -- If so, call setSpatialResolutions() to do it separately.
911 --
912 -- ARGUMENTS
913 -- georaster - the georaster object to be georeferenced
914 -- srid - the model space onto which the georaster object
915 -- is to be georeferenced
916 -- modelCoordinateLocation -
917 -- the modelCoordinateLocation of each cell/pixel,
918 -- only CENTER (0) and UPPERLEFT (1) are allowed.
919 -- xCoefficients - A, B, C
920 -- yCoefficients - D, E, F
921 --
922 -- RETURNS
923 -- the input georaster object for update.
924 -- the original existing SRS (if any) is overwritten.
925 --
926 PROCEDURE georeference
927 (
928 georaster IN OUT MDSYS.SDO_GEORASTER,
929 srid IN NUMBER,
930 modelCoordinateLocation IN NUMBER,
931 xCoefficients IN MDSYS.SDO_NUMBER_ARRAY,
932 yCoefficients IN MDSYS.SDO_NUMBER_ARRAY
933 );
934
935
936 -- ---------------------------------------------------------------------
937 -- Query GeoRaster Object Cell (or say, Raster) Data
938 -- ---------------------------------------------------------------------
939
940 --
941 -- NAME:
942 -- getModelCoordinate
943 --
944 -- DESCRIPTION
945 -- Given a spatial coordinate, i.e., (row, column, vertical) of
946 -- a cell in the cell coordinate space, its corresponding spatial
947 -- coordinate (X, Y, Z) in the model coordinate space
948 -- is calculated and returned.
949 --
950 -- ARGUMENTS
951 -- georaster - the georaster object to query upon.
952 -- pyramidLevel - the pyramid level in which the cell is.
953 -- cellCoordinate - number array containing row, column,
954 -- and vertical if its spatial dimension is 3
955 -- modelCoordinate - a SDO_GEOMETRY object in the model space that
956 -- contains X, Y and/or Z
957 -- height - Z value in 3D GeoReference system
958 --
959 -- RETURNS
960 -- a SDO_GEOMETRY object containing X, Y and/or Z
961 --
962 FUNCTION getModelCoordinate
963 (
964 georaster IN MDSYS.SDO_GEORASTER,
965 pyramidLevel IN NUMBER,
966 cellCoordinate IN MDSYS.SDO_NUMBER_ARRAY,
967 height IN NUMBER DEFAULT NULL
968 )
969 RETURN MDSYS.SDO_GEOMETRY DETERMINISTIC PARALLEL_ENABLE;
970
971 PROCEDURE getModelCoordinate
972 (
973 georaster IN MDSYS.SDO_GEORASTER,
974 pyramidLevel IN NUMBER,
975 cellCoordinate IN MDSYS.SDO_GEOMETRY,
976 modelCoordinate OUT MDSYS.SDO_GEOMETRY,
977 height IN NUMBER DEFAULT NULL
978 );
979
980 --
981 -- NAME:
985 -- Given a spatial coordinate, i.e., (X, Y, Z) of a point in the model
982 -- getCellCoordinate
983 --
984 -- DESCRIPTION
986 -- coordinate space, its corresponding spatial coordinate (row, column,
987 -- vertical) in the cell coordinate space is calculated and returned.
988 --
989 -- ARGUMENTS
990 -- georaster - the georaster object to query upon
991 -- pyramidLevel - the pyramid level in which the cell is.
992 -- modelCoordinate - a SDO_GEOMETRY point containing X, Y,
993 -- and Z if its spatial dimension is 3
994 -- subCell - whether floating cell coordinates are returned
995 --
996 -- RETURNS
997 -- either a cellCoordinate array or a SDO_GEOMETRY object containing
998 -- row, column and/or vertical
999 --
1000 -- NOTES
1001 -- If the output type is MDSYS.SDO_NUMBER_ARRY, the input must be a point
1002 -- geometry; otherwise, the input can be geometry of any types
1003 --
1004 -- Cell coordinates are returned as floating numbers if subCell is
1005 -- 'TRUE' (case insensitive). Otherwise, they are returned as integers.
1006 --
1007 FUNCTION getCellCoordinate
1008 (
1009 georaster IN MDSYS.SDO_GEORASTER,
1010 pyramidLevel IN NUMBER,
1011 modelCoordinate IN MDSYS.SDO_GEOMETRY,
1012 subCell IN VARCHAR2 DEFAULT NULL,
1013 height IN NUMBER DEFAULT NULL,
1014 vert_id IN NUMBER DEFAULT NULL,
1015 ellipsoidal IN VARCHAR2 DEFAULT NULL
1016 )
1017 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1018
1019 PROCEDURE getCellCoordinate
1020 (
1021 georaster IN MDSYS.SDO_GEORASTER,
1022 pyramidLevel IN NUMBER,
1023 modelCoordinate IN MDSYS.SDO_GEOMETRY,
1024 cellCoordinate OUT MDSYS.SDO_GEOMETRY,
1025 subCell IN VARCHAR2 DEFAULT NULL,
1026 height IN NUMBER DEFAULT NULL,
1027 vert_id IN NUMBER DEFAULT NULL,
1028 ellipsoidal IN VARCHAR2 DEFAULT NULL
1029 );
1030
1031 --
1032 -- NAME:
1033 -- getCellCoordinate
1034 --
1035 -- DESCRIPTION
1036 -- Convert cell coordinates between different pyramid levels.
1037 --
1038 -- ARGUMENTS
1039 -- georaster - the georaster object to query upon
1040 -- sourcepyramidLevel - the source pyramid level
1041 -- sourceCellCoordinate - the source cell coordinates
1042 -- targetPyramidLevel - the target pyramid level
1043 -- subCell - whether floating cell coordinates are returned
1044 --
1045 -- RETURNS
1046 -- either a sdo_number_array or a SDO_GEOMETRY object containing
1047 -- the corresponding cell coordinates at the target pyramid level.
1048 --
1049 -- NOTES
1050 -- Cell coordinates are returned as floating numbers if subCell is
1051 -- 'TRUE' (case insensitive). Otherwise, they are returned as integers.
1052 --
1053
1054 FUNCTION getCellCoordinate
1055 (
1056 georaster IN MDSYS.SDO_GEORASTER,
1057 sourcePyramidLevel IN NUMBER,
1058 sourceCellCoordinate IN MDSYS.SDO_NUMBER_ARRAY,
1059 targetPyramidLevel IN NUMBER,
1060 subCell IN VARCHAR2 DEFAULT NULL
1061 ) RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1062
1063 FUNCTION getCellCoordinate
1064 (
1065 georaster IN MDSYS.SDO_GEORASTER,
1066 sourcePyramidLevel IN NUMBER,
1067 sourceCellCoordinate IN MDSYS.SDO_GEOMETRY,
1068 targetPyramidLevel IN NUMBER,
1069 subCell IN VARCHAR2 DEFAULT NULL
1070 ) RETURN MDSYS.SDO_GEOMETRY DETERMINISTIC PARALLEL_ENABLE;
1071
1072 --
1073 -- NAME:
1074 -- getCellValue functions
1075 --
1076 -- DESCRIPTION
1077 -- The functions retrieve the value of a single cell
1078 -- located anywhere in the georaster object by specifying
1079 -- its row/column/band numbers in its cell coordinate space
1080 -- or by specifying a point geometry in either model
1081 -- coordinate space or cell coordinate space
1082 --
1083 -- ARGUMENTS
1084 -- georaster - the georaster object to query upon
1085 -- pyramidLevel - the level in pyramid
1086 -- rowNumber - row number in cell space
1087 -- colNumber - column number in cell space
1088 -- bandNumber - band number in cell space (not model space)
1089 -- layerNumber - logical layer number
1090 -- ptGeom - a point geometry in either cell space
1091 -- or model space
1092 -- RETURNS
1093 -- Number
1094 --
1095 FUNCTION getCellValue
1096 (
1097 georaster IN MDSYS.SDO_GEORASTER,
1098 pyramidLevel IN NUMBER,
1099 rowNumber IN NUMBER,
1100 colNumber IN NUMBER,
1101 bandNumber IN NUMBER
1102 )
1103 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1104
1105 FUNCTION getCellValue
1106 (
1107 georaster IN MDSYS.SDO_GEORASTER,
1108 pyramidLevel IN NUMBER,
1109 ptGeom IN MDSYS.SDO_GEOMETRY,
1110 layerNumber IN NUMBER
1111 )
1112 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1113
1114 FUNCTION getCellValue
1115 (
1116 georaster IN MDSYS.SDO_GEORASTER,
1120 bands IN VARCHAR2
1117 pyramidLevel IN NUMBER,
1118 rowNumber IN NUMBER,
1119 colNumber IN NUMBER,
1121 )
1122 RETURN SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1123
1124 FUNCTION getCellValue
1125 (
1126 georaster IN MDSYS.SDO_GEORASTER,
1127 pyramidLevel IN NUMBER,
1128 ptGeom IN MDSYS.SDO_GEOMETRY,
1129 layers IN VARCHAR2
1130 )
1131 RETURN SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1132 --
1133 -- NAME:
1134 -- evaluate functions
1135 --
1136 -- DESCRIPTION
1137 -- Based on different interpolation methods specified by parameter
1138 -- interpolationMethod, the functions will evaluate and return values
1139 -- for the cells located anywhere in the georaster object by specifying
1140 -- its row/column/band numbers in its cell coordinate space
1141 -- or by specifying a point geometry in either model
1142 -- coordinate space or cell coordinate space
1143 -- The only difference between evaluate and evaluateDouble is that evaluate
1144 -- returns values based on the georaster object cellDepth, but evaluateDouble
1145 -- always returns double numbers.
1146 --
1147 -- ARGUMENTS
1148 -- georaster - the georaster object to query upon
1149 -- pyramidLevel - the level in pyramid
1150 -- row - row number in cell space
1151 -- column - column number in cell space
1152 -- bands - band number array in cell space (not model space)
1153 -- layers - logical layer number array
1154 -- ptGeom - a point geometry in either cell space
1155 -- or model space
1156 -- RETURNS
1157 -- SDO_Number_array
1158 --
1159 --FUNCTION evaluate
1160 --(
1161 -- georaster IN MDSYS.SDO_GEORASTER,
1162 -- pyramidLevel IN NUMBER,
1163 -- row IN NUMBER,
1164 -- column IN NUMBER,
1165 -- bands IN VARCHAR2,
1166 -- interpolationMethod IN VARCHAR2
1167 --)
1168 --RETURN SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1169
1170 --FUNCTION evaluate
1171 --(
1172 -- georaster IN MDSYS.SDO_GEORASTER,
1173 -- pyramidLevel IN NUMBER,
1174 -- ptGeom IN MDSYS.SDO_GEOMETRY,
1175 -- layers IN VARCHAR2,
1176 -- interpolationMethod IN VARCHAR2
1177 --)
1178 --RETURN SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1179
1180 FUNCTION evaluateDouble
1181 (
1182 georaster IN MDSYS.SDO_GEORASTER,
1183 pyramidLevel IN NUMBER,
1184 row IN NUMBER,
1185 column IN NUMBER,
1186 bands IN VARCHAR2,
1187 interpolationMethod IN VARCHAR2
1188 )
1189 RETURN SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1190
1191 FUNCTION evaluateDouble
1192 (
1193 georaster IN MDSYS.SDO_GEORASTER,
1194 pyramidLevel IN NUMBER,
1195 ptGeom IN MDSYS.SDO_GEOMETRY,
1196 layers IN VARCHAR2,
1197 interpolationMethod IN VARCHAR2
1198 )
1199 RETURN SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1200
1201
1202 --
1203 -- NAME:
1204 -- getRasterBlocks functions
1205 --
1206 -- DESCRIPTION
1207 -- This function returns a sdo_rasterset table containing
1208 -- all sub-blocks of the specified pramid level which are
1209 -- inside and touch the given window
1210 --
1211 -- ARGUMENTS
1212 -- georaster - the georaster object to query upon
1213 -- pyramidLevel - the level in pyramid
1214 -- window - a rectanglar window in cell space
1215 --
1216 -- RETURNS
1217 -- SDO_RASTERSET
1218 --
1219 FUNCTION getRasterBlocks
1220 (
1221 georaster IN MDSYS.SDO_GEORASTER,
1222 pyramidLevel IN NUMBER,
1223 window IN MDSYS.SDO_NUMBER_ARRAY
1224 )
1225 return MDSYS.SDO_RASTERSET DETERMINISTIC;
1226
1227 --
1228 -- NAME:
1229 -- getRasterBlocks functions
1230 --
1231 -- DESCRIPTION
1232 -- This function returns a sdo_rasterset table containing
1233 -- all sub-blocks of the specified pramid level which are
1234 -- inside and touch the given window
1235 --
1236 -- ARGUMENTS
1237 -- georaster - the georaster object to query upon
1238 -- pyramidLevel - the level in pyramid
1239 -- window - a SDO geometry
1240 --
1241 -- RETURNS
1242 -- SDO_RASTERSET
1243 --
1244 FUNCTION getRasterBlocks
1245 (
1246 georaster IN MDSYS.SDO_GEORASTER,
1247 pyramidLevel IN NUMBER,
1248 window IN MDSYS.SDO_GEOMETRY
1249 )
1250 return MDSYS.SDO_RASTERSET DETERMINISTIC;
1251
1252
1253 --
1254 -- NAME:
1255 -- getRasterSubset
1256 --
1257 -- DESCRIPTION
1258 -- This function returns a single blob holding the mosaic of
1259 -- all sub-blocks of the specified pramid level which are
1260 -- inside and touch the given window
1261 --
1262 -- ARGUMENTS
1263 -- georaster - the georaster object to query upon
1264 -- pyramidLevel - the level in pyramid
1265 -- inWindow - the window of interest
1266 -- bandNumbers - bandNumbers
1267 -- rasterBlob - holds the result, i.e., the mosaicked
1271 -- bgValues - background values
1268 -- raster subset
1269 -- outWindow - the output window
1270 -- storageParam - storage parameters for the output
1272 --
1273 -- RETURNS
1274 -- BLOB
1275 --
1276 -- NOTES
1277 -- if the type of inWindow is SDO_NUMBER_ARRAY, it specifies a rectanglar
1278 -- window in the cell space
1279 -- outWindow contains the coordinates of the upper-left and bottom-right
1280 -- corners of the output window in the cell space
1281 --
1282 PROCEDURE getRasterSubset
1283 (
1284 georaster IN MDSYS.SDO_GEORASTER,
1285 pyramidLevel IN NUMBER,
1286 window IN MDSYS.SDO_NUMBER_ARRAY,
1287 bandNumbers IN VARCHAR2,
1288 rasterBlob IN OUT NOCOPY BLOB,
1289 storageParam IN VARCHAR2 DEFAULT NULL,
1290 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
1291 );
1292
1293 PROCEDURE getRasterSubset
1294 (
1295 georaster IN MDSYS.SDO_GEORASTER,
1296 pyramidLevel IN NUMBER,
1297 inWindow IN MDSYS.SDO_NUMBER_ARRAY,
1298 bandNumbers IN VARCHAR2,
1299 rasterBlob IN OUT NOCOPY BLOB,
1300 outWindow OUT SDO_NUMBER_ARRAY,
1301 storageParam IN VARCHAR2 DEFAULT NULL,
1302 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
1303 );
1304
1305 PROCEDURE getRasterSubset
1306 (
1307 georaster IN MDSYS.SDO_GEORASTER,
1308 pyramidLevel IN NUMBER,
1309 window IN MDSYS.SDO_GEOMETRY,
1310 layerNumbers IN VARCHAR2,
1311 rasterBlob IN OUT NOCOPY BLOB,
1312 storageParam IN VARCHAR2 DEFAULT NULL,
1313 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL,
1314 polygonClip IN VARCHAR2 DEFAULT NULL
1315 );
1316
1317 PROCEDURE getRasterSubset
1318 (
1319 georaster IN MDSYS.SDO_GEORASTER,
1320 pyramidLevel IN NUMBER,
1321 inWindow IN MDSYS.SDO_GEOMETRY,
1322 layerNumbers IN VARCHAR2,
1323 rasterBlob IN OUT NOCOPY BLOB,
1324 outWindow OUT MDSYS.SDO_NUMBER_ARRAY,
1325 storageParam IN VARCHAR2 DEFAULT NULL,
1326 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL,
1327 polygonClip IN VARCHAR2 DEFAULT NULL
1328 );
1329
1330 --
1331 -- NAME:
1332 -- getRasterData
1333 --
1334 -- DESCRIPTION
1335 -- This function returns a single blob holding all raster data
1336 -- of the input georaster object at the specified pyramid level.
1337 -- If it is blocked, the mosaic of all blocks of the specified
1338 -- pramid level is returned.
1339 --
1340 -- ARGUMENTS
1341 -- georaster - the georaster object to query upon
1342 -- pyramidLevel - the level in pyramid
1343 -- rasterBlob - holds the result, i.e., the raster data
1344 -- storageParam - storage parameters for the output
1345 -- bgValues - background values
1346 --
1347 -- RETURNS
1348 -- BLOB
1349 --
1350 PROCEDURE getRasterData
1351 (
1352 georaster IN MDSYS.SDO_GEORASTER,
1353 pyramidLevel IN NUMBER,
1354 rasterBlob IN OUT NOCOPY BLOB,
1355 storageParam IN VARCHAR2 DEFAULT NULL,
1356 bgValues IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
1357 );
1358
1359
1360 -- ---------------------------------------------------------------------
1361 -- Query GeoRaster Object Metadata and Ancillary Data
1362 -- ---------------------------------------------------------------------
1363
1364 FUNCTION getVersion
1365 (
1366 georaster IN MDSYS.SDO_GEORASTER
1367 )
1368 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1369
1370 FUNCTION getID
1371 (
1372 georaster IN MDSYS.SDO_GEORASTER
1373 )
1374 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1375
1376 FUNCTION isBlank
1377 (
1378 georaster IN MDSYS.SDO_GEORASTER
1379 )
1380 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1381
1382 FUNCTION getBlankCellValue
1383 (
1384 georaster IN MDSYS.SDO_GEORASTER
1385 )
1386 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1387
1388 FUNCTION getDefaultColorLayer
1389 (
1390 georaster IN MDSYS.SDO_GEORASTER
1391 )
1392 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1393
1394 FUNCTION getDefaultRed
1395 (
1396 georaster IN MDSYS.SDO_GEORASTER
1397 )
1398 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1399
1400 FUNCTION getDefaultBlue
1401 (
1402 georaster IN MDSYS.SDO_GEORASTER
1403 )
1404 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1405
1406 FUNCTION getDefaultGreen
1407 (
1408 georaster IN MDSYS.SDO_GEORASTER
1409 )
1410 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1411
1412 FUNCTION getDefaultAlpha
1413 (
1414 georaster IN MDSYS.SDO_GEORASTER
1415 )
1416 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1417
1418 FUNCTION getDefaultPyramidLevel
1419 (
1420 georaster IN MDSYS.SDO_GEORASTER
1421 )
1422 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1423
1424 FUNCTION getSpatialDimNumber
1425 (
1426 georaster IN MDSYS.SDO_GEORASTER
1427 )
1431 (
1428 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1429
1430 FUNCTION getSpatialDimSizes
1432 georaster IN MDSYS.SDO_GEORASTER
1433 )
1434 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1435
1436 FUNCTION getBandDimSize
1437 (
1438 georaster IN MDSYS.SDO_GEORASTER
1439 )
1440 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1441
1442 FUNCTION getCellDepth
1443 (
1444 georaster IN MDSYS.SDO_GEORASTER
1445 )
1446 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1447
1448 FUNCTION getNODATA
1449 (
1450 georaster IN MDSYS.SDO_GEORASTER
1451 )
1452 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1453
1454 FUNCTION getULTCoordinate
1455 (
1456 georaster IN MDSYS.SDO_GEORASTER
1457 )
1458 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1459
1460 FUNCTION getInterleavingType
1461 (
1462 georaster IN MDSYS.SDO_GEORASTER
1463 )
1464 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1465
1466 FUNCTION getCompressionType
1467 (
1468 georaster IN MDSYS.SDO_GEORASTER
1469 )
1470 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1471
1472 FUNCTION getBlockingType
1473 (
1474 georaster IN MDSYS.SDO_GEORASTER
1475 )
1476 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1477
1478 FUNCTION getBlockSize
1479 (
1480 georaster IN MDSYS.SDO_GEORASTER
1481 )
1482 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1483
1484 FUNCTION getPyramidType
1485 (
1486 georaster IN MDSYS.SDO_GEORASTER
1487 )
1488 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1489
1490 FUNCTION getPyramidMaxLevel
1491 (
1492 georaster IN MDSYS.SDO_GEORASTER
1493 )
1494 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1495
1496 FUNCTION isSpatialReferenced
1497 (
1498 georaster IN MDSYS.SDO_GEORASTER
1499 )
1500 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1501
1502 FUNCTION isRectified
1503 (
1504 georaster IN MDSYS.SDO_GEORASTER
1505 )
1506 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1507
1508 FUNCTION isOrthoRectified
1509 (
1510 georaster IN MDSYS.SDO_GEORASTER
1511 )
1512 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1513
1514 FUNCTION getModelSRID
1515 (
1516 georaster IN MDSYS.SDO_GEORASTER
1517 )
1518 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1519
1520 FUNCTION getSpatialResolutions
1521 (
1522 georaster IN MDSYS.SDO_GEORASTER
1523 )
1524 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1525
1526 FUNCTION getSRS
1527 (
1528 georaster IN MDSYS.SDO_GEORASTER
1529 )
1530 RETURN MDSYS.SDO_GEOR_SRS DETERMINISTIC PARALLEL_ENABLE;
1531
1532 FUNCTION getModelCoordLocation
1533 (
1534 georaster IN MDSYS.SDO_GEORASTER
1535 )
1536 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1537
1538 FUNCTION getBeginDateTime
1539 (
1540 georaster IN MDSYS.SDO_GEORASTER
1541 )
1542 RETURN TIMESTAMP WITH TIME ZONE DETERMINISTIC PARALLEL_ENABLE;
1543
1544 FUNCTION getEndDateTime
1545 (
1546 georaster IN MDSYS.SDO_GEORASTER
1547 )
1548 RETURN TIMESTAMP WITH TIME ZONE DETERMINISTIC PARALLEL_ENABLE;
1549
1550 FUNCTION getSpectralUnit
1551 (
1552 georaster IN MDSYS.SDO_GEORASTER
1553 )
1554 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1555
1556 FUNCTION getSpectralResolution
1557 (
1558 georaster IN MDSYS.SDO_GEORASTER
1559 )
1560 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1561
1562 -- for all layer-related get and set functions,
1563 -- layerNumber = 0 means the object layer
1564 -- layerDimension defaults to 'BAND' if not specified
1565
1566 FUNCTION getLayerDimension
1567 (
1568 georaster IN MDSYS.SDO_GEORASTER
1569 )
1570 RETURN MDSYS.SDO_STRING_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1571
1572 FUNCTION getTotalLayerNumber
1573 (
1574 georaster IN MDSYS.SDO_GEORASTER
1575 )
1576 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1577
1578 FUNCTION getLayerOrdinate
1579 (
1580 georaster IN MDSYS.SDO_GEORASTER,
1581 layerNumber IN NUMBER
1582 )
1583 RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
1584
1585 FUNCTION getLayerID
1586 (
1587 georaster IN MDSYS.SDO_GEORASTER,
1588 layerNumber IN NUMBER
1589 )
1590 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1591
1592 FUNCTION getScaling
1593 (
1594 georaster IN MDSYS.SDO_GEORASTER,
1595 layerNumber IN NUMBER
1596 )
1597 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1598
1599 FUNCTION getBinType
1600 (
1601 georaster IN MDSYS.SDO_GEORASTER,
1602 layerNumber IN NUMBER
1603 )
1604 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1605
1606 FUNCTION getBinTable
1607 (
1608 georaster IN MDSYS.SDO_GEORASTER,
1609 layerNumber IN NUMBER
1610 )
1611 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1612
1613 FUNCTION getBinFunction
1614 (
1615 georaster IN MDSYS.SDO_GEORASTER,
1616 layerNumber IN NUMBER
1617 )
1621 (
1618 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1619
1620 FUNCTION getStatistics
1622 georaster IN MDSYS.SDO_GEORASTER,
1623 layerNumber IN NUMBER
1624 )
1625 RETURN MDSYS.SDO_NUMBER_ARRAY DETERMINISTIC PARALLEL_ENABLE;
1626
1627 FUNCTION getHistogram
1628 (
1629 georaster IN MDSYS.SDO_GEORASTER,
1630 layerNumber IN NUMBER
1631 )
1632 RETURN MDSYS.SDO_GEOR_HISTOGRAM DETERMINISTIC PARALLEL_ENABLE;
1633
1634 FUNCTION getHistogramTable
1635 (
1636 georaster IN MDSYS.SDO_GEORASTER,
1637 layerNumber IN NUMBER
1638 )
1639 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1640
1641 FUNCTION hasGrayScale
1642 (
1643 georaster IN MDSYS.SDO_GEORASTER,
1644 layerNumber IN NUMBER
1645 )
1646 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1647
1648 FUNCTION getGrayScale
1649 (
1650 georaster IN MDSYS.SDO_GEORASTER,
1651 layerNumber IN NUMBER
1652 )
1653 RETURN MDSYS.SDO_GEOR_GRAYSCALE DETERMINISTIC PARALLEL_ENABLE;
1654
1655 FUNCTION getGrayScaleTable
1656 (
1657 georaster IN MDSYS.SDO_GEORASTER,
1658 layerNumber IN NUMBER
1659 )
1660 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1661
1662 FUNCTION hasPseudoColor
1663 (
1664 georaster IN MDSYS.SDO_GEORASTER,
1665 layerNumber IN NUMBER
1666 )
1667 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1668
1669 FUNCTION getColorMap
1670 (
1671 georaster IN MDSYS.SDO_GEORASTER,
1672 layerNumber IN NUMBER
1673 )
1674 RETURN MDSYS.SDO_GEOR_COLORMAP DETERMINISTIC PARALLEL_ENABLE;
1675
1676 FUNCTION getColorMapTable
1677 (
1678 georaster IN MDSYS.SDO_GEORASTER,
1679 layerNumber IN NUMBER
1680 )
1681 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1682
1683 FUNCTION getVAT
1684 (
1685 georaster IN MDSYS.SDO_GEORASTER,
1686 layerNumber IN NUMBER
1687 )
1688 RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
1689
1690
1691 -- ---------------------------------------------------------------------
1692 --
1693 -- statistics functions
1694 --
1695 -- ---------------------------------------------------------------------
1696
1697 Function generateStatistics
1698 (
1699 georaster IN OUT MDSYS.SDO_GEORASTER,
1700 samplingFactor IN VARCHAR2,
1701 samplingWindow IN SDO_GEOMETRY,
1702 histogram IN VARCHAR2,
1703 layerNumbers IN VARCHAR2 DEFAULT NULL,
1704 useBin IN VARCHAR2 DEFAULT 'TRUE',
1705 binFunction IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL,
1706 nodata IN VARCHAR2 DEFAULT 'FALSE'
1707 )
1708 return Varchar2;
1709
1710 Function generateStatistics
1711 (
1712 georaster IN OUT MDSYS.SDO_GEORASTER,
1713 samplingFactor IN VARCHAR2,
1714 samplingWindow IN SDO_NUMBER_ARRAY,
1715 histogram IN VARCHAR2,
1716 layerNumbers IN VARCHAR2 DEFAULT NULL,
1717 useBin IN VARCHAR2 DEFAULT 'TRUE',
1718 binFunction IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL,
1719 nodata IN VARCHAR2 DEFAULT 'FALSE'
1720 )
1721 return Varchar2;
1722
1723
1724 Function generateStatistics
1725 (
1726 georaster IN MDSYS.SDO_GEORASTER,
1727 pyramidLevel IN NUMBER,
1728 samplingFactor IN VARCHAR2,
1729 samplingWindow IN SDO_NUMBER_ARRAY,
1730 bandNumbers IN VARCHAR2 DEFAULT NULL,
1731 nodata IN VARCHAR2 DEFAULT 'FALSE'
1732 )
1733 return SDO_NUMBER_ARRAY;
1734
1735 Function generateStatistics
1736 (
1737 georaster IN MDSYS.SDO_GEORASTER,
1738 pyramidLevel IN NUMBER,
1739 samplingFactor IN VARCHAR2,
1740 samplingWindow IN SDO_GEOMETRY,
1741 bandNumbers IN VARCHAR2 DEFAULT NULL,
1742 nodata IN VARCHAR2 DEFAULT 'FALSE',
1743 polygonClip IN VARCHAR2 DEFAULT NULL
1744 )
1745 return SDO_NUMBER_ARRAY;
1746
1747 Function generateStatisticsMax
1748 (
1749 georaster IN MDSYS.SDO_GEORASTER,
1750 pyramidLevel IN NUMBER,
1751 samplingFactor IN VARCHAR2,
1752 samplingWindow IN SDO_NUMBER_ARRAY,
1753 bandNumbers IN VARCHAR2 DEFAULT NULL,
1754 nodata IN VARCHAR2 DEFAULT 'FALSE'
1755 )
1756 return NUMBER;
1757
1758 Function generateStatisticsMax
1759 (
1760 georaster IN MDSYS.SDO_GEORASTER,
1761 pyramidLevel IN NUMBER,
1762 samplingFactor IN VARCHAR2,
1763 samplingWindow IN SDO_GEOMETRY,
1764 bandNumbers IN VARCHAR2 DEFAULT NULL,
1765 nodata IN VARCHAR2 DEFAULT 'FALSE',
1766 polygonClip IN VARCHAR2 DEFAULT NULL
1767 )
1768 return NUMBER;
1769
1770 Function generateStatisticsMin
1771 (
1772 georaster IN MDSYS.SDO_GEORASTER,
1773 pyramidLevel IN NUMBER,
1774 samplingFactor IN VARCHAR2,
1775 samplingWindow IN SDO_NUMBER_ARRAY,
1776 bandNumbers IN VARCHAR2 DEFAULT NULL,
1777 nodata IN VARCHAR2 DEFAULT 'FALSE'
1778 )
1779 return NUMBER;
1780
1781 Function generateStatisticsMin
1785 samplingFactor IN VARCHAR2,
1782 (
1783 georaster IN MDSYS.SDO_GEORASTER,
1784 pyramidLevel IN NUMBER,
1786 samplingWindow IN SDO_GEOMETRY,
1787 bandNumbers IN VARCHAR2 DEFAULT NULL,
1788 nodata IN VARCHAR2 DEFAULT 'FALSE',
1789 polygonClip IN VARCHAR2 DEFAULT NULL
1790 )
1791 return NUMBER;
1792
1793 Function generateStatisticsMean
1794 (
1795 georaster IN MDSYS.SDO_GEORASTER,
1796 pyramidLevel IN NUMBER,
1797 samplingFactor IN VARCHAR2,
1798 samplingWindow IN SDO_NUMBER_ARRAY,
1799 bandNumbers IN VARCHAR2 DEFAULT NULL,
1800 nodata IN VARCHAR2 DEFAULT 'FALSE'
1801 )
1802 return NUMBER;
1803
1804 Function generateStatisticsMean
1805 (
1806 georaster IN MDSYS.SDO_GEORASTER,
1807 pyramidLevel IN NUMBER,
1808 samplingFactor IN VARCHAR2,
1809 samplingWindow IN SDO_GEOMETRY,
1810 bandNumbers IN VARCHAR2 DEFAULT NULL,
1811 nodata IN VARCHAR2 DEFAULT 'FALSE',
1812 polygonClip IN VARCHAR2 DEFAULT NULL
1813 )
1814 return NUMBER;
1815 Function generateStatisticsSTD
1816 (
1817 georaster IN MDSYS.SDO_GEORASTER,
1818 pyramidLevel IN NUMBER,
1819 samplingFactor IN VARCHAR2,
1820 samplingWindow IN SDO_NUMBER_ARRAY,
1821 bandNumbers IN VARCHAR2 DEFAULT NULL,
1822 nodata IN VARCHAR2 DEFAULT 'FALSE'
1823 )
1824 return NUMBER;
1825
1826 Function generateStatisticsSTD
1827 (
1828 georaster IN MDSYS.SDO_GEORASTER,
1829 pyramidLevel IN NUMBER,
1830 samplingFactor IN VARCHAR2,
1831 samplingWindow IN SDO_GEOMETRY,
1832 bandNumbers IN VARCHAR2 DEFAULT NULL,
1833 nodata IN VARCHAR2 DEFAULT 'FALSE',
1834 polygonClip IN VARCHAR2 DEFAULT NULL
1835 )
1836 return NUMBER;
1837
1838
1839 Function generateStatisticsMedian
1840 (
1841 georaster IN MDSYS.SDO_GEORASTER,
1842 pyramidLevel IN NUMBER,
1843 samplingFactor IN VARCHAR2,
1844 samplingWindow IN SDO_NUMBER_ARRAY,
1845 bandNumbers IN VARCHAR2 DEFAULT NULL,
1846 nodata IN VARCHAR2 DEFAULT 'FALSE'
1847 )
1848 return NUMBER;
1849
1850 Function generateStatisticsMedian
1851 (
1852 georaster IN MDSYS.SDO_GEORASTER,
1853 pyramidLevel IN NUMBER,
1854 samplingFactor IN VARCHAR2,
1855 samplingWindow IN SDO_GEOMETRY,
1856 bandNumbers IN VARCHAR2 DEFAULT NULL,
1857 nodata IN VARCHAR2 DEFAULT 'FALSE',
1858 polygonClip IN VARCHAR2 DEFAULT NULL
1859 )
1860 return NUMBER;
1861
1862 Function generateStatisticsMode
1863 (
1864 georaster IN MDSYS.SDO_GEORASTER,
1865 pyramidLevel IN NUMBER,
1866 samplingFactor IN VARCHAR2,
1867 samplingWindow IN SDO_NUMBER_ARRAY,
1868 bandNumbers IN VARCHAR2 DEFAULT NULL,
1869 nodata IN VARCHAR2 DEFAULT 'FALSE'
1870 )
1871 return NUMBER;
1872
1873 Function generateStatisticsMode
1874 (
1875 georaster IN MDSYS.SDO_GEORASTER,
1876 pyramidLevel IN NUMBER,
1877 samplingFactor IN VARCHAR2,
1878 samplingWindow IN SDO_GEOMETRY,
1879 bandNumbers IN VARCHAR2 DEFAULT NULL,
1880 nodata IN VARCHAR2 DEFAULT 'FALSE',
1881 polygonClip IN VARCHAR2 DEFAULT NULL
1882 )
1883 return NUMBER;
1884
1885 -- ---------------------------------------------------------------------
1886 -- Update and Delete GeoRaster Object Metadata and Ancillary Data
1887 --
1888 -- SET procedures function as both UPDATE/MODIFY and DELETE.
1889 -- In SET procedures, if the parameter is given as null, it will DELETE
1890 -- the corresponding item/data in the georaster object only if the item
1891 -- is allowed to be deleted (optional or minOccurs=0 in xml schema) and
1892 -- without other dependency and inter-relationship issues.
1893 -- Validation will be done in those procedures in both cases.
1894 -- To avoid losing data, use them cautiously.
1895 -- ---------------------------------------------------------------------
1896
1897 -- change the last two digits only
1898 PROCEDURE setRasterType
1899 (
1900 georaster IN OUT MDSYS.SDO_GEORASTER,
1901 rasterType IN NUMBER
1902 );
1903
1904 PROCEDURE setID
1905 (
1906 georaster IN OUT MDSYS.SDO_GEORASTER,
1907 id IN VARCHAR2
1908 );
1909
1910 PROCEDURE setBlankCellValue
1911 (
1912 georaster IN OUT MDSYS.SDO_GEORASTER,
1913 value IN NUMBER
1914 );
1915
1916 PROCEDURE setDefaultColorLayer
1917 (
1918 georaster IN OUT MDSYS.SDO_GEORASTER,
1919 defaultRGB IN MDSYS.SDO_NUMBER_ARRAY
1920 );
1921
1922 PROCEDURE setDefaultRed
1923 (
1924 georaster IN OUT MDSYS.SDO_GEORASTER,
1925 defaultRed IN NUMBER
1926 );
1927
1928 PROCEDURE setDefaultGreen
1929 (
1930 georaster IN OUT MDSYS.SDO_GEORASTER,
1931 defaultGreen IN NUMBER
1932 );
1933
1934 PROCEDURE setDefaultBlue
1935 (
1936 georaster IN OUT MDSYS.SDO_GEORASTER,
1940 PROCEDURE setDefaultAlpha
1937 defaultBlue IN NUMBER
1938 );
1939
1941 (
1942 georaster IN OUT MDSYS.SDO_GEORASTER,
1943 defaultAlpha IN NUMBER
1944 );
1945
1946 PROCEDURE setDefaultPyramidLevel
1947 (
1948 georaster IN OUT MDSYS.SDO_GEORASTER,
1949 defaultPyramidLevel IN NUMBER
1950 );
1951
1952 -- only if not spatial, temporal and band referenced
1953 PROCEDURE setULTCoordinate
1954 (
1955 georaster IN OUT MDSYS.SDO_GEORASTER,
1956 ultCoord IN MDSYS.SDO_NUMBER_ARRAY
1957 );
1958
1959 PROCEDURE setSpatialReferenced
1960 (
1961 georaster IN OUT MDSYS.SDO_GEORASTER,
1962 isReferenced IN VARCHAR2
1963 );
1964
1965 -- set TRUE only if spatial referenced
1966 PROCEDURE setRectified
1967 (
1968 georaster IN OUT MDSYS.SDO_GEORASTER,
1969 isRectified IN VARCHAR2
1970 );
1971
1972 -- set TRUE only if rectified
1973 PROCEDURE setOrthoRectified
1974 (
1975 georaster IN OUT MDSYS.SDO_GEORASTER,
1976 isOrthoRectified IN VARCHAR2
1977 );
1978
1979 PROCEDURE setModelSRID
1980 (
1981 georaster IN OUT MDSYS.SDO_GEORASTER,
1982 srid IN NUMBER
1983 );
1984
1985 PROCEDURE setSpatialResolutions
1986 (
1987 georaster IN OUT MDSYS.SDO_GEORASTER,
1988 resolutions IN MDSYS.SDO_NUMBER_ARRAY
1989 );
1990
1991 PROCEDURE setSRS
1992 (
1993 georaster IN OUT MDSYS.SDO_GEORASTER,
1994 srs IN MDSYS.SDO_GEOR_SRS
1995 );
1996
1997 -- value can be set only if spatial referenced
1998 PROCEDURE setModelCoordLocation
1999 (
2000 georaster IN OUT MDSYS.SDO_GEORASTER,
2001 modelCoordLoc IN VARCHAR2
2002 );
2003
2004
2005 PROCEDURE setBeginDateTime
2006 (
2007 georaster IN OUT MDSYS.SDO_GEORASTER,
2008 beginTime IN TIMESTAMP WITH TIME ZONE
2009 );
2010
2011 PROCEDURE setEndDateTime
2012 (
2013 georaster IN OUT MDSYS.SDO_GEORASTER,
2014 endTime IN TIMESTAMP WITH TIME ZONE
2015 );
2016
2017 PROCEDURE setSpectralUnit
2018 (
2019 georaster IN OUT MDSYS.SDO_GEORASTER,
2020 unit IN VARCHAR2
2021 );
2022
2023 PROCEDURE setSpectralResolution
2024 (
2025 georaster IN OUT MDSYS.SDO_GEORASTER,
2026 resolution IN NUMBER
2027 );
2028
2029 PROCEDURE setLayerOrdinate
2030 (
2031 georaster IN OUT MDSYS.SDO_GEORASTER,
2032 layerNumber IN NUMBER,
2033 ordinate IN NUMBER
2034 );
2035
2036 PROCEDURE setLayerID
2037 (
2038 georaster IN OUT MDSYS.SDO_GEORASTER,
2039 layerNumber IN NUMBER,
2040 id IN VARCHAR2
2041 );
2042
2043 PROCEDURE setScaling
2044 (
2045 georaster IN OUT MDSYS.SDO_GEORASTER,
2046 layerNumber IN NUMBER,
2047 scalingFunc IN MDSYS.SDO_NUMBER_ARRAY
2048 );
2049
2050 -- change binType if necessary
2051 PROCEDURE setBinTable
2052 (
2053 georaster IN OUT MDSYS.SDO_GEORASTER,
2054 layerNumber IN NUMBER,
2055 tableName IN VARCHAR2
2056 );
2057
2058 PROCEDURE setBinFunction(
2059 georaster IN OUT MDSYS.SDO_GEORASTER,
2060 layerNumber IN NUMBER,
2061 binFunction IN MDSYS.SDO_NUMBER_ARRAY
2062 );
2063
2064 PROCEDURE setGrayScale
2065 (
2066 georaster IN OUT MDSYS.SDO_GEORASTER,
2067 layerNumber IN NUMBER,
2068 grayScale IN MDSYS.SDO_GEOR_GRAYSCALE
2069 );
2070
2071 PROCEDURE setGrayScaleTable
2072 (
2073 georaster IN OUT MDSYS.SDO_GEORASTER,
2074 layerNumber IN NUMBER,
2075 tableName IN VARCHAR2
2076 );
2077
2078 PROCEDURE setColorMap
2079 (
2080 georaster IN OUT MDSYS.SDO_GEORASTER,
2081 layerNumber IN NUMBER,
2082 colorMap IN MDSYS.SDO_GEOR_COLORMAP
2083 );
2084
2085 PROCEDURE setColorMapTable
2086 (
2087 georaster IN OUT MDSYS.SDO_GEORASTER,
2088 layerNumber IN NUMBER,
2089 tableName IN VARCHAR2
2090 );
2091
2092 PROCEDURE setVAT
2093 (
2094 georaster IN OUT MDSYS.SDO_GEORASTER,
2095 layerNumber IN NUMBER,
2096 vatName IN VARCHAR2
2097 );
2098
2099 PROCEDURE setVersion
2100 (
2101 georaster IN OUT MDSYS.SDO_GEORASTER,
2102 majorVersion IN VARCHAR2,
2103 minorVersion IN VARCHAR2
2104 );
2105
2106 PROCEDURE setStatistics
2107 (
2108 georaster IN OUT MDSYS.SDO_GEORASTER,
2109 layerNumber IN NUMBER,
2110 statistics IN MDSYS.SDO_NUMBER_ARRAY
2111 );
2112
2113 --
2114 -- NOTES
2115 -- 1) Whenever histogram is updated, new statistics must be provided.
2116 -- 2) If statistics is set with different samplingFactor/samplingWindow,
2117 -- existing histogram is removed if not reset.
2118 -- 3) The samplingWindow must be inside the extent in the cell space.
2119 -- 4) If not specified, the default value for samplingFactor is 1.
2120 -- 5) If not specified, the default value for samplingWindow is the
2121 -- whole image and it is removed from the metadata.
2125 georaster IN OUT MDSYS.SDO_GEORASTER,
2122 --
2123 PROCEDURE setStatistics
2124 (
2126 layerNumber IN NUMBER,
2127 statistics IN MDSYS.SDO_NUMBER_ARRAY,
2128 histogram IN MDSYS.SDO_GEOR_HISTOGRAM,
2129 samplingFactor IN NUMBER DEFAULT NULL,
2130 samplingWindow IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
2131 );
2132
2133 -- NOTES
2134 -- 1) The histogram table cannot be set if no statistics exist.
2135 -- 2) The histogram table is removed if histogramTable is NULL.
2136 -- 3) The samplingWindow must be inside the extent in the cell space.
2137 -- 4) If not specified, the default value for samplingFactor is 1.
2138 -- 5) If not specified, the default value for samplingWindow is the
2139 -- whole image and it is removed from the metadata.
2140 --
2141 PROCEDURE setStatistics
2142 (
2143 georaster IN OUT MDSYS.SDO_GEORASTER,
2144 layerNumber IN NUMBER,
2145 statistics IN MDSYS.SDO_NUMBER_ARRAY,
2146 histogramTable IN VARCHAR2,
2147 samplingFactor IN NUMBER DEFAULT NULL,
2148 samplingWindow IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
2149 );
2150
2151 --PROCEDURE setHistogram
2152 --(
2153 -- georaster IN OUT MDSYS.SDO_GEORASTER,
2154 -- layerNumber IN NUMBER,
2155 -- histogram IN MDSYS.SDO_GEOR_HISTOGRAM,
2156 -- samplingFactor IN NUMBER DEFAULT NULL,
2157 -- samplingWindow IN MDSYS.SDO_NUMBER_ARRAY DEFAULT NULL
2158 --);
2159
2160 PROCEDURE setHistogramTable
2161 (
2162 georaster IN OUT MDSYS.SDO_GEORASTER,
2163 layerNumber IN NUMBER,
2164 tableName IN VARCHAR2
2165 );
2166
2167 PROCEDURE setSourceInfo
2168 (
2169 georaster IN OUT MDSYS.SDO_GEORASTER,
2170 sourceInfo IN VARCHAR2
2171 );
2172
2173 PROCEDURE addSourceInfo
2174 (
2175 georaster IN OUT MDSYS.SDO_GEORASTER,
2176 sourceInfo IN VARCHAR2
2177 );
2178
2179 FUNCTION getSourceInfo
2180 (
2181 georaster IN MDSYS.SDO_GEORASTER
2182 ) RETURN MDSYS.SDO_STRING2_ARRAY DETERMINISTIC PARALLEL_ENABLE;
2183
2184 -- ---------------------------------------------------------------------
2185 -- multiple nodata values/value ranges
2186 -- ---------------------------------------------------------------------
2187
2188 -- remove one NODATA value
2189 PROCEDURE deleteNODATA
2190 (
2191 georaster IN OUT MDSYS.SDO_GEORASTER,
2192 layerNumber IN NUMBER,
2193 NODATA IN NUMBER
2194 );
2195
2196 -- remove multiple NODATA values or value ranges
2197 PROCEDURE deleteNODATA
2198 (
2199 georaster IN OUT MDSYS.SDO_GEORASTER,
2200 layerNumber IN NUMBER,
2201 NODATA IN MDSYS.SDO_RANGE_ARRAY
2202 );
2203
2204 -- add one NODATA value
2205 PROCEDURE addNODATA
2206 (
2207 georaster IN OUT MDSYS.SDO_GEORASTER,
2208 layerNumber IN NUMBER,
2209 NODATA IN NUMBER
2210 );
2211
2212 -- add multiple NODATA values or value ranges
2213 PROCEDURE addNODATA(
2214 georaster IN OUT MDSYS.SDO_GEORASTER,
2215 layerNumber IN NUMBER,
2216 NODATA IN MDSYS.SDO_RANGE_ARRAY
2217 );
2218
2219 -- retrieve all NODATA values and value ranges
2220 FUNCTION getNODATA
2221 (
2222 georaster IN MDSYS.SDO_GEORASTER,
2223 layerNumber IN NUMBER
2224 ) RETURN MDSYS.SDO_RANGE_ARRAY DETERMINISTIC PARALLEL_ENABLE;
2225
2226
2227 -- ---------------------------------------------------------------------
2228 -- Bitmap Mask Support
2229 -- ---------------------------------------------------------------------
2230
2231 --
2232 -- NAME:
2233 -- setBitmapMask
2234 --
2235 -- DESCRIPTION
2236 -- Attach, replace or remove a bitmap mask to a given GeoRaster layer
2237 --
2238 -- ARGUMENTS
2239 -- georaster - the GeoRaster object to be operated on
2240 -- layerNumber - an object layer (0) or a subLayer (>0)
2241 -- mask - the 1BIT bitmap mask
2242 -- NODATAMask - spacifies whether the mask is going to be a NODATA mask
2243 --
2244 -- NOTES
2245 -- If the GeoRaster object is NULL, nothing is to be done.
2246 -- If the mask is NULL, any exisiting bitmap mask associated with the given
2247 -- layer is removed.
2248 -- If the mask is not a 1BIT GeoRaster object or has wrong dimension size,
2249 -- error ORA-13470 is raised.
2250 -- If the mask is not NULL or invalid, any exisiting bitmap mask associated
2251 -- with the given layer is replaced with the new one.
2252 --
2253
2254 PROCEDURE setBitmapMask
2255 (
2256 georaster IN OUT MDSYS.SDO_GEORASTER,
2257 layerNumber IN NUMBER,
2258 mask IN MDSYS.SDO_GEORASTER,
2259 NODATAMask IN VARCHAR2 DEFAULT NULL
2260 );
2261
2262 --
2263 -- NAME:
2264 -- getBitmapMask
2265 --
2266 -- DESCRIPTION
2267 -- Retrieve a bitmap mask as a standalone GeoRaster object
2268 --
2269 -- ARGUMENTS
2270 -- georaster - the source GeoRaster object
2271 -- layerNumber - an object layer (0) or a subLayer (>0)
2272 -- storageParam - the storage parameter for the output GeoRaster object
2273 -- mask - the result GeoRaster object
2274 --
2275 -- NOTES
2279 PROCEDURE getBitmapMask
2276 -- If the source GeoRaster object is NULL or there is no bitmap mask
2277 -- associated with the given layer, a NULL GeoRaster object is returned.
2278 --
2280 (
2281 georaster IN MDSYS.SDO_GEORASTER,
2282 layerNumber IN NUMBER,
2283 storageParam IN VARCHAR2,
2284 mask IN OUT MDSYS.SDO_GEORASTER
2285 );
2286
2287 --
2288 -- NAME:
2289 -- getBitmapMaskValue
2290 --
2291 -- DESCRIPTION
2292 -- Retrieve a cell value of a bitmap mask
2293 --
2294 -- ARGUMENTS
2295 -- georaster - the source GeoRaster object
2296 -- layerNumber - an object layer (0) or a subLayer (>0)
2297 -- pyramidLevel - the pyramid level
2298 -- rowNumber - row number in cell space
2299 -- colNumber - column number in cell space
2300 -- ptGeom - a point geometry in either cell space
2301 -- or model space
2302 -- RETURNS
2303 -- Number
2304 --
2305 -- NOTES
2306 -- If the source GeoRaster object is NULL or there is no bitmap mask
2307 -- associated with the specfied raster layer, NULL is returned.
2308 -- If the point position is out of scope, ORA-13415 is raised.
2309 --
2310 FUNCTION getBitmapMaskValue
2311 (
2312 georaster IN MDSYS.SDO_GEORASTER,
2313 layerNumber IN NUMBER,
2314 pyramidLevel IN NUMBER,
2315 rowNumber IN NUMBER,
2316 colNumber IN NUMBER
2317 ) RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
2318
2319 FUNCTION getBitmapMaskValue
2320 (
2321 georaster IN MDSYS.SDO_GEORASTER,
2322 layerNumber IN NUMBER,
2323 pyramidLevel IN NUMBER,
2324 ptGeom IN MDSYS.SDO_GEOMETRY
2325 ) RETURN NUMBER DETERMINISTIC PARALLEL_ENABLE;
2326
2327 --
2328 -- NAME:
2329 -- getBitmapMaskSubset
2330 --
2331 -- DESCRIPTION
2332 -- Retrieve a subset of a bitmap mask
2333 --
2334 -- ARGUMENTS
2335 -- georaster - the source GeoRaster object
2336 -- layerNumber - an object layer (0) or a subLayer (>0)
2337 -- pyramidLevel - the pyramid level
2338 -- window/inWindow - the area of interest
2339 -- rasterBlob - the BLOB holding the output
2340 -- outWindow - the actual output window
2341 -- storageParam - storage parameters for the output
2342 --
2343 -- NOTES
2344 -- If the source GeoRaster object is NULL or there is no bitmap mask
2345 -- associated with the specfied raster layer, the result BLOB is empty.
2346 -- If not specified, the storageParm for the output follows that of
2347 -- the source GeoRaster object.
2348 --
2349 PROCEDURE getBitmapMaskSubset
2350 (
2351 georaster IN MDSYS.SDO_GEORASTER,
2352 layerNumber IN NUMBER,
2353 pyramidLevel IN NUMBER,
2354 window IN MDSYS.SDO_NUMBER_ARRAY,
2355 rasterBlob IN OUT NOCOPY BLOB,
2356 storageParam IN VARCHAR2 DEFAULT NULL
2357 );
2358
2359 PROCEDURE getBitmapMaskSubset
2360 (
2361 georaster IN MDSYS.SDO_GEORASTER,
2362 layerNumber IN NUMBER,
2363 pyramidLevel IN NUMBER,
2364 window IN MDSYS.SDO_GEOMETRY,
2365 rasterBlob IN OUT NOCOPY BLOB,
2366 storageParam IN VARCHAR2 DEFAULT NULL
2367 );
2368
2369 PROCEDURE getBitmapMaskSubset
2370 (
2371 georaster IN MDSYS.SDO_GEORASTER,
2372 layerNumber IN NUMBER,
2373 pyramidLevel IN NUMBER,
2374 inWindow IN MDSYS.SDO_NUMBER_ARRAY,
2375 rasterBlob IN OUT NOCOPY BLOB,
2376 outWindow OUT MDSYS.SDO_NUMBER_ARRAY,
2377 storageParam IN VARCHAR2 DEFAULT NULL
2378 );
2379
2380 PROCEDURE getBitmapMaskSubset
2381 (
2382 georaster IN MDSYS.SDO_GEORASTER,
2383 layerNumber IN NUMBER,
2384 pyramidLevel IN NUMBER,
2385 inWindow IN MDSYS.SDO_GEOMETRY,
2386 rasterBlob IN OUT NOCOPY BLOB,
2387 outWindow OUT MDSYS.SDO_NUMBER_ARRAY,
2388 storageParam IN VARCHAR2 DEFAULT NULL
2389 );
2390
2391 --
2392 -- NAME:
2393 -- hasBitmapMask
2394 --
2395 -- DESCRIPTION
2396 -- Check whether a bitmap map exists for the specified GeoRaster layer
2397 --
2398 -- ARGUMENTS
2399 -- georaster - the source GeoRaster object
2400 -- layerNumber - an object layer (0) or a subLayer (>0)
2401 --
2402 -- RETURN
2403 -- 'NULL' if the GeoRaster object is NULL
2404 -- 'TRUE' if a bitmap mask exists
2405 -- 'FALSE' otherwise
2406 --
2407 FUNCTION hasBitmapMask
2408 (
2409 georaster IN MDSYS.SDO_GEORASTER,
2410 layerNumber IN NUMBER
2411 ) RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
2412
2413 --
2414 -- NAME:
2415 -- hasNODATAMask
2416 --
2417 -- DESCRIPTION
2418 -- Check whether a NODATA bitmap map exists for the specified GeoRaster layer
2419 --
2420 -- ARGUMENTS
2421 -- georaster - the source GeoRaster object
2422 -- layerNumber - an object layer (0) or a subLayer (>0)
2423 --
2424 -- RETURN
2425 -- 'NULL' if the GeoRaster object is NULL
2426 -- 'TRUE' if a bitmap mask exists and is a NODATA mask
2427 -- 'FALSE' otherwise
2428 --
2429 FUNCTION hasNODATAMask
2433 ) RETURN VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
2430 (
2431 georaster IN MDSYS.SDO_GEORASTER,
2432 layerNumber IN NUMBER
2434
2435 --
2436 -- NAME:
2437 -- setNODATAMask
2438 --
2439 -- DESCRIPTION
2440 -- Specifies whether or not a bitmap mask on the specified GeoRaster layer
2441 -- is NODATA mask.
2442 --
2443 -- ARGUMENTS
2444 -- georaster - the source GeoRaster object
2445 -- layerNumber - an object layer (0) or a subLayer (>0)
2446 -- isNODATAMask - 'TRUE' or 'FALSE'
2447 --
2448 -- RETURN
2449 -- 'NULL' if the GeoRaster object is NULL
2450 -- 'TRUE' if a bitmap mask exists and is a NODATA mask
2451 -- 'FALSE' otherwise
2452 --
2453 PROCEDURE setNODATAMask
2454 (
2455 georaster IN OUT MDSYS.SDO_GEORASTER,
2456 layerNumber IN NUMBER,
2457 isNODATAMask IN VARCHAR2
2458 );
2459
2460
2461 -- ---------------------------------------------------------------------
2462 -- Validate GeoRaster Objects
2463 -- ---------------------------------------------------------------------
2464
2465 --
2466 -- NAME:
2467 -- validateGeoRaster
2468 --
2469 -- DESCRIPTION
2470 -- validate a GeoRaster object
2471 --
2472 -- ARGUMENTS
2473 -- georaster - The SDO_GEORASTER object to be validated
2474 --
2475 -- RETURNS
2476 -- 1. 'TRUE' if the georaster is valid
2477 -- 2. 'NULL' if the georaster object is null
2478 -- 3. A Oracle standard error code for known errors
2479 -- 4. 'FALSE' for unknown errors
2480 --
2481 FUNCTION validateGeoRaster
2482 (
2483 georaster IN MDSYS.SDO_GEORASTER
2484 )
2485 return VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
2486
2487
2488 --
2489 -- NAME:
2490 -- schemaValidate
2491 --
2492 -- DESCRIPTION
2493 -- Validate GeoRaster Metadata against the GeoRaster XML Schema
2494 -- It explains the reasons if the metadata is not valid
2495 --
2496 -- ARGUMENTS
2497 -- georaster - The SDO_GEORASTER object of which the metadata is
2498 -- to be validated
2499 --
2500 -- RETURNS
2501 -- 1. 'TRUE' if the georaster is valid against XML schema
2502 -- 2. 'NULL' if the georaster or its metadata is null
2503 -- 3. Otherwise it prints Oracle standard error codes for
2504 -- detailed errors and stop directly
2505 --
2506 FUNCTION schemaValidate
2507 (
2508 georaster IN MDSYS.SDO_GEORASTER
2509 )
2510 return VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
2511
2512
2513 -- ---------------------------------------------------------------------
2514 -- import from and export to other raster sources/formats:
2515 -- local FILE, HTTP file, ORDImage, BLOB, BFILE, GeoHeader files, etc
2516 -- ---------------------------------------------------------------------
2517
2518 --
2519 -- NAME:
2520 -- importFrom procedures
2521 --
2522 -- DESCRIPTION
2523 -- import from FILE, HTTP into a GeoRaster object
2524 --
2525 -- ARGUMENTS
2526 -- sourceFormat - source format, such as JPEG, TIFF, etc.
2527 -- sourceType - FILE or HTTP, etc.
2528 -- sourceName - source file name with fullpath
2529 -- storageParam - the GeoRaster object storage formats
2530 -- georaster - original and result GeoRaster object
2531 -- It must be an existing GeoRaster object
2532 -- r_sourceFormat - raster sourceFormat as above
2533 -- r_sourceType - raster sourceType as above
2534 -- r_sourceName - raster sourceName as above
2535 -- r_sourceBlob - Blob holding source image file
2536 -- h_sourceFormat - geo-header sourceFormat as above
2537 -- h_sourceType - geo-header sourceType as above
2538 -- h_sourceName - geo-header sourceName as above
2539 -- h_sourceClob - Clob holding source geo-header file
2540 --
2541 -- RETURNS
2542 -- sdo_georaster object
2543 --
2544
2545 PROCEDURE importFrom
2546 (
2547 georaster IN OUT MDSYS.SDO_GEORASTER,
2548 storageParam IN VARCHAR2,
2549 r_sourceFormat IN VARCHAR2,
2550 r_sourceType IN VARCHAR2,
2551 r_sourceName IN VARCHAR2,
2552 h_sourceFormat IN VARCHAR2 default null,
2553 h_sourceType IN VARCHAR2 default null,
2554 h_sourceName IN VARCHAR2 default null
2555 );
2556
2557 PROCEDURE importFrom
2558 (
2559 georaster IN OUT MDSYS.SDO_GEORASTER,
2560 storageParam IN VARCHAR2,
2561 r_sourceFormat IN VARCHAR2,
2562 r_sourceBlob IN BLOB,
2563 h_sourceFormat IN VARCHAR2 default null,
2564 h_sourceClob IN CLOB default null
2565 );
2566
2567 --
2568 -- NAME:
2569 -- exportTo procedures
2570 --
2571 -- DESCRIPTION
2572 -- export GeoRaster object to other types
2573 --
2574 -- ARGUMENTS
2575 -- destFormat - dest format, such as JPEG, TIFF, etc.
2576 -- destType - FILE, etc.
2577 -- destName - dest file name with fullpath
2578 -- subsetParam - subset/crop parameters for output a subset
2579 -- georaster - the GeoRaster object to be exported
2580 -- r_destFormat - raster destFormat as above
2581 -- r_destType - raster destType as above
2582 -- r_destName - raster destName as above
2583 -- r_destBlob - Blob to hold the output image file
2587 -- h_destClob - Clob to hold the output geo-header file
2584 -- h_destFormat - geo-header destFormat as above
2585 -- h_destType - geo-header destType as above
2586 -- h_destName - geo-header destName as above
2588 --
2589 -- RETURNS
2590 --
2591
2592 PROCEDURE exportTo
2593 (
2594 georaster IN MDSYS.SDO_GEORASTER,
2595 subsetParam IN VARCHAR2,
2596 r_destFormat IN VARCHAR2,
2597 r_destType IN VARCHAR2,
2598 r_destName IN VARCHAR2,
2599 h_destFormat IN VARCHAR2 default null,
2600 h_destType IN VARCHAR2 default null,
2601 h_destName IN VARCHAR2 default null
2602 );
2603
2604 PROCEDURE exportTo
2605 (
2606 georaster IN MDSYS.SDO_GEORASTER,
2607 subsetParam IN VARCHAR2,
2608 destFormat IN VARCHAR2,
2609 destBlob IN OUT NOCOPY BLOB
2610 );
2611
2612 PROCEDURE exportTo
2613 (
2614 georaster IN MDSYS.SDO_GEORASTER,
2615 subsetParam IN VARCHAR2,
2619 h_destClob IN OUT NOCOPY CLOB
2616 r_destFormat IN VARCHAR2,
2617 r_destBlob IN OUT NOCOPY BLOB,
2618 h_destFormat IN VARCHAR2,
2620 );
2621
2622 --
2623 -- NAME:
2624 -- getGeoreferenceType function
2625 --
2626 -- DESCRIPTION
2627 -- retrieve GeoReference type for the specified
2628 -- GeoRaster object, so far, only three types are
2629 -- supported by this function as below, for all other
2630 -- types, UNKNOWN will return
2631 --
2632 -- 1 -- Unknown
2633 -- 2 -- Affine Transform
2634 -- 3 -- Direct Linear Transform (DLT)
2635 -- 4 -- Rational Polynomial Coefficient (RPC)
2636 --
2637 -- ARGUMENTS
2638 -- georaster - geoRaster object
2639 --
2640 -- RETURNS
2641 -- an integer to represent GeoReference type
2642 FUNCTION getGeoreferenceType
2643 (
2644 georaster IN MDSYS.SDO_GEORASTER
2645 )
2646 return number;
2647
2648 --
2649 -- NAME:
2650 -- isLossless
2651 --
2652 -- DESCRIPTION
2653 -- Returns a string value that indicates whether or not the GeoRaster
2654 -- object is compressed losslessly or lossily, or not compressed at all.
2655 --
2656 -- ARGUMENTS
2657 -- georaster - The SDO_GEORASTER object of which losslessness is to be
2658 -- determined.
2659 --
2660 -- RETURNS
2661 -- 1. 'TRUE' if GeoRaster object is losslessly compressed
2662 -- 2. 'NULL' if the georaster or its metadata is null, or if the
2663 -- GeoRaster object is not compressed.
2664 -- 3. 'FALSE' if GeoRaster object is lossily compressed
2665 --
2666 FUNCTION isLossless
2667 (
2668 geor IN MDSYS.SDO_GEORASTER
2669 )
2670 return VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
2671
2672
2673 -- ---------------------------------------------------------------------
2674 -- Reproject GeoRaster Objects
2675 --
2676 -- ---------------------------------------------------------------------
2677
2678 --
2679 -- NAME:
2680 -- reproject
2681 --
2682 -- DESCRIPTION
2683 -- Re-project a geo-referenced GeoRaster object into a new projection
2684 -- defined by SRID which is different from the current projection.
2685 --
2686 -- NOTE:
2687 -- (1) The input GeoRaster object should have a supported projection;
2688 -- (2) If not georeferenced, use setSRS to setup if the projection
2689 -- was known;
2690 -- (3) The new projection should be valid and different from current one.
2691 --
2692 -- ARGUMENTS
2693 -- inGeoRaster - The source SDO_GEORASTER object to be re-projected
2694 -- pyramidLevel - The pyramid level of the source GeoRaster object
2695 -- cropArea - The crop area to be re-projected. If it is of
2696 -- - SDO_GEOMETRY type, it can be in any coordinate space.
2697 -- If it is of SDO_NUMBER_ARRAY, it is in cell space only
2698 -- layerNumbers - The logical layers
2699 -- bandNumbers - The physical bands in cell space
2700 -- resampleParam - The resampling method
2701 -- storageParam - A string specifying storage parameters for the result.
2702 -- The details of the parameters are explained in
2703 -- GeoRaster Manual
2704 -- outSRID - The SRID defines the new projection
2705 -- outGeoRaster - The re-projected persistent GeoRaster Object
2706 -- rasterBlob - The re-projected transient GeoRaster Object
2707 -- outArea - The re-projected transient GeoRaster Object extent
2708 -- in model coordinates.
2709 -- outWindow - The re-projected transient GeoRaster Object extent
2710 -- in cell coordinates.
2711 -- bgValues - background values for filling empty pixels
2712 -- one for each band
2713 --
2714 -- RETURNS
2715 -- In the outGeoRaster is the re-projected GeoRaster object
2716
2717 -- For the persistent reprojection, the new GeoRatser is stored in table
2718 PROCEDURE reproject (
2719 inGeoraster IN MDSYS.SDO_GEORASTER,
2720 resampleParam IN VARCHAR2,
2721 storageParam IN VARCHAR2,
2722 outSRID IN NUMBER,
2723 outGeoraster IN OUT MDSYS.SDO_GEORASTER,
2727 PROCEDURE reproject (
2724 bgValues IN SDO_NUMBER_ARRAY DEFAULT NULL
2725 );
2726
2728 inGeoraster IN MDSYS.SDO_GEORASTER,
2729 pyramidLevel IN NUMBER,
2730 cropArea IN SDO_GEOMETRY,
2731 layerNumbers IN VARCHAR2,
2732 resampleParam IN VARCHAR2,
2733 storageParam IN VARCHAR2,
2734 outSRID IN NUMBER,
2735 outGeoraster IN OUT MDSYS.SDO_GEORASTER,
2736 bgValues IN SDO_NUMBER_ARRAY DEFAULT NULL
2737 );
2738
2739 PROCEDURE reproject (
2740 inGeoraster IN MDSYS.SDO_GEORASTER,
2741 pyramidLevel IN NUMBER,
2742 cropArea IN SDO_NUMBER_ARRAY,
2743 bandNumbers IN VARCHAR2,
2744 resampleParam IN VARCHAR2,
2745 storageParam IN VARCHAR2,
2746 outSRID IN NUMBER,
2747 outGeoraster IN OUT MDSYS.SDO_GEORASTER,
2748 bgValues IN SDO_NUMBER_ARRAY DEFAULT NULL
2749 );
2750
2751 -- For the transient reprojection (on the fly),
2752 -- the new GeoRatser is stored as BLOB
2753 PROCEDURE reproject (
2754 inGeoraster IN MDSYS.SDO_GEORASTER,
2755 pyramidLevel IN NUMBER,
2756 cropArea IN SDO_GEOMETRY,
2757 layerNumbers IN VARCHAR2,
2758 resampleParam IN VARCHAR2,
2759 storageParam IN VARCHAR2,
2760 outSRID IN NUMBER,
2761 rasterBlob IN OUT NOCOPY BLOB,
2762 outArea OUT SDO_GEOMETRY,
2763 outWindow OUT SDO_NUMBER_ARRAY,
2764 bgValues IN SDO_NUMBER_ARRAY DEFAULT NULL
2765 );
2766
2767 PROCEDURE reproject (
2768 inGeoraster IN MDSYS.SDO_GEORASTER,
2769 pyramidLevel IN NUMBER,
2770 cropArea IN SDO_NUMBER_ARRAY,
2771 bandNumbers IN VARCHAR2,
2772 resampleParam IN VARCHAR2,
2773 storageParam IN VARCHAR2,
2774 outSRID IN NUMBER,
2775 rasterBlob IN OUT NOCOPY BLOB,
2776 outArea OUT SDO_GEOMETRY,
2777 outWindow OUT SDO_NUMBER_ARRAY,
2778 bgValues IN SDO_NUMBER_ARRAY DEFAULT NULL
2779 );
2780
2781
2782 -- ---------------------------------------------------------------------
2783 -- Georeference GeoRaster Using Control Points (GCPs)
2784 --
2785 -- ---------------------------------------------------------------------
2786
2787 --
2788 -- NAME:
2789 -- georeference
2790 --
2791 -- DESCRIPTION
2792 -- This function will georeference an image using a set of
2793 -- control points (GCPs).
2794 --
2795 -- ARGUMENTS
2796 --
2797 -- georaster - The source SDO_GEORASTER object to be georeferenced
2798 -- FFMethodType - The (rational) polynomial function used as georeference model
2799 -- nGCP - Number of GCPs provided
2800 -- GCPs - The GCP collection. Each GCP represents a points pair, one on
2801 -- image and another in some coordinate system or another image.
2802 -- gcpGeorefModel - A data structure contains FFMethodType, nGCP, GCPs,solutionAccuracy
2803 -- storeGCP - A flag indicate whether the GCPs should be stored in the georaster
2804 -- metadata.
2805 -- SRID - The GCP's model coordinates SRID
2806 -- modelCoordLoc - The location on cell for the corresponding model coords
2807 -- setResolution - whether to set the spatial resolution in the
2808 -- SRS. "TRUE" or "FALSE" By default it is FALSE.
2809 --
2810 -- RETURNS
2811 -- The solution accuracy (rowRMS, colRMS, totalRMS) and the ground positionning
2812 -- accuracy (xRMS, yRMS, (zRMS), totalModelRMS) if check points provided
2813 --
2814 Function georeference(
2815 inGeoraster IN OUT MDSYS.SDO_GEORASTER,
2816 FFMethodType IN VARCHAR2,
2817 nGCP IN Number,
2818 GCPs IN SDO_GEOR_GCP_COLLECTION,
2819 storeGCP IN VARCHAR2 DEFAULT 'TRUE',
2820 SRID IN Number DEFAULT NULL,
2821 modelCoordinateLocation IN Number DEFAULT NULL,
2822 setResolution IN VARCHAR2 DEFAULT NULL
2823 )Return MDSYS.SDO_NUMBER_ARRAY; -- RMSs
2824
2825
2826 Function georeference(
2830 SRID IN Number DEFAULT NULL,
2827 inGeoraster IN OUT MDSYS.SDO_GEORASTER,
2828 gcpGeorefModel IN SDO_GEOR_GCPGEOREFTYPE,
2829 storeGCP IN VARCHAR2 DEFAULT 'TRUE',
2831 modelCoordinateLocation IN Number DEFAULT NULL,
2832 setResolution IN VARCHAR2 DEFAULT NULL
2833 )Return MDSYS.SDO_NUMBER_ARRAY; -- RMSs
2834
2835 -- For this function, the GCPs should be already stored in the metadata
2836 --
2837 Function georeference(
2838 inGeoraster IN OUT MDSYS.SDO_GEORASTER,
2839 FFMethod IN VARCHAR2 DEFAULT NULL,
2840 SRID IN Number DEFAULT NULL,
2841 modelCoordinateLocation IN Number DEFAULT NULL,
2842 setResolution IN VARCHAR2 DEFAULT NULL
2843 )Return MDSYS.SDO_NUMBER_ARRAY; -- RMSs
2844
2845 --
2846 -- Georeference XML data manipulation functions
2847 --
2848 Function getGCPGeorefModel(
2849 inGeoraster IN MDSYS.SDO_GEORASTER
2850 )Return MDSYS.SDO_GEOR_GCPGEOREFTYPE;
2851
2852 PROCEDURE setGCPGeorefModel(
2853 inGeoraster IN OUT MDSYS.SDO_GEORASTER,
2854 gcpGeorefModel IN SDO_GEOR_GCPGEOREFTYPE
2855 );
2856
2857
2858 Function getGCPGeorefMethod(
2859 inGeoraster IN MDSYS.SDO_GEORASTER
2860 )Return VARCHAR2 DETERMINISTIC PARALLEL_ENABLE;
2861
2862
2863 PROCEDURE setGCPGeorefMethod(
2864 inGeoraster IN OUT MDSYS.SDO_GEORASTER,
2865 georefMethod IN VARCHAR2
2866 );
2867
2868 Function getControlPoint(
2869 inGeoraster IN MDSYS.SDO_GEORASTER,
2870 controlPointID IN VARCHAR2
2871 )Return SDO_GEOR_GCP DETERMINISTIC PARALLEL_ENABLE;
2872
2873 PROCEDURE setControlPoint(
2874 inGeoraster IN OUT MDSYS.SDO_GEORASTER,
2875 controlPoint IN SDO_GEOR_GCP
2876 );
2877
2878 PROCEDURE deleteControlPoint(
2879 inGeoraster IN OUT MDSYS.SDO_GEORASTER,
2880 controlPointID IN VARCHAR2
2881 );
2882
2883
2884 -- ---------------------------------------------------------------------
2885 -- Rectify GeoRaster Objects
2886 --
2887 -- ---------------------------------------------------------------------
2888
2889 --
2890 -- NAME:
2891 -- rectify
2892 --
2893 -- DESCRIPTION
2894 -- Rectify a geo-referenced GeoRaster object.
2895 --
2896 -- NOTE:
2897 -- (1) The input GeoRaster object should be referenced
2898 -- (2) Use average elevation height or dem georaster (Ortho-Rectify)
2899 --
2900 -- ARGUMENTS
2901 --
2902 -- Input:
2903 -- inGeoRaster - Source SDO_GEORASTER object to be re-projected
2904 -- pyramidLevel - The pyramid level of the source GeoRaster object
2905 -- elevationParam - Average elevation height of the surface
2906 -- dem - Digital elevation model for ortho-rectification
2907 --
2908 -- Request:
2909 -- outSRID - The SRID defines the new projection
2910 -- outModelCoordLoc - Specify the output cell coordinate system type,
2911 -- 0 for CENTER or 1 for UPPERLEFT.
2912 -- cropArea - The crop area of the output image to be re-projected.
2913 -- polygonClip - Whether to do polygon clipping. If NULL, defaults
2914 -- to FALSE.
2915 -- layerNumbers - The logical layers to be processed
2916 -- outResolutions - Resolution(s) of each dimension of the output image
2917 -- resolutionUnit - Unit of the resolution
2918 -- referencePoint - The reference point to alligned the output image.
2919 -- If this is null, the reference point implicitly
2920 -- uses the upper left corner of the cropArea, or
2921 -- when the cropArea is null, the upper left corner
2922 -- of the projected output extent.
2923 -- This reference point must be in a SDO_GEOMETRY that
2924 -- describes a point.
2925 -- resampleParam - The resampling method
2926 --
2927 -- Output:
2928 -- storageParam - A string specifying storage parameters for the result.
2929 -- outGeoRaster - Re-projected persistent GeoRaster Object
2930 -- rasterBlob - The re-projected transient GeoRaster Object
2931 -- outArea - The re-projected transient GeoRaster Object extent
2932 -- in model coordinates.
2933 -- outWindow - The re-projected transient GeoRaster Object extent
2934 -- in cell coordinates.
2935 -- bgValues - Background values for filling empty pixels
2936 -- one for each band
2937 --
2938 -- RETURNS
2939 -- For persistent output the outGeoRaster is the rectified GeoRaster object
2940 -- For transient output the rasterBlob is the rectified resulted image and
2941 -- outArea and outWindow specify the transient rasterBlob information
2942
2943 PROCEDURE rectify (
2944 -- input
2945 inGeoRaster IN MDSYS.SDO_GEORASTER,
2946 pyramidLevel IN NUMBER,
2947 elevationParam IN VARCHAR2,
2948 dem IN MDSYS.SDO_GEORASTER,
2949 -- request
2950 outSRID IN NUMBER,
2951 outModelCoordLoc IN NUMBER,
2952 cropArea IN SDO_GEOMETRY,
2953 polygonClip IN VARCHAR2,
2954 layerNumbers IN VARCHAR2,
2955 outResolutions IN SDO_NUMBER_ARRAY,
2956 resolutionUnit IN VARCHAR2,
2957 referencePoint IN MDSYS.SDO_GEOMETRY,
2958 resampleParam IN VARCHAR2,
2959 -- output (georaster)
2960 storageParam IN VARCHAR2,
2961 outGeoRaster IN OUT MDSYS.SDO_GEORASTER,
2962 bgValues IN SDO_NUMBER_ARRAY DEFAULT NULL
2963 );
2964
2965 PROCEDURE rectify (
2966 -- input
2967 inGeoRaster IN MDSYS.SDO_GEORASTER,
2968 pyramidLevel IN NUMBER,
2969 elevationParam IN VARCHAR2,
2970 dem IN MDSYS.SDO_GEORASTER,
2971 -- request
2972 outSRID IN NUMBER,
2973 outModelCoordLoc IN NUMBER,
2974 cropArea IN SDO_GEOMETRY,
2975 polygonClip IN VARCHAR2,
2976 layerNumbers IN VARCHAR2,
2977 outResolutions IN SDO_NUMBER_ARRAY,
2978 resolutionUnit IN VARCHAR2,
2979 referencePoint IN MDSYS.SDO_GEOMETRY,
2980 resampleParam IN VARCHAR2,
2981 -- output (blob)
2982 storageParam IN VARCHAR2,
2983 rasterBlob IN OUT NOCOPY BLOB,
2984 outArea OUT SDO_GEOMETRY,
2985 outWindow OUT SDO_NUMBER_ARRAY,
2986 bgValues IN SDO_NUMBER_ARRAY DEFAULT NULL
2987 );
2988
2989 --
2990 -- NAME:
2991 -- generateSpatialResolutions
2992 --
2993 -- DESCRIPTION
2994 -- Generate the spatial resolutions and set it to the georaster metadata
2995 --
2996 -- NOTE: The input GeoRaster object should be referenced otherwise null
2997 -- is returned.
2998 --
2999 -- PARAMETERS:
3000 -- geoRaster - Source SDO_GEORASTER object
3001 -- outResolution - Output resolution in SDO_NUMBER_ARRAY for pyramid
3002 -- level 0 and in given georaster's SRID and unit.
3003 --
3004
3005 PROCEDURE generateSpatialResolutions(
3006 geoRaster IN OUT MDSYS.SDO_GEORASTER,
3007 outResolution OUT SDO_NUMBER_ARRAY);
3008
3009 --
3010 -- NAME:
3011 -- generateSpatialResolutions
3012 --
3013 -- DESCRIPTION
3014 -- Generate the spatial resolutions
3015 --
3016 -- NOTE: The input GeoRaster object should be referenced otherwise null
3017 -- is returned.
3018 --
3019 -- PARAMETERS:
3020 -- geoRaster - Source SDO_GEORASTER object
3021 -- pyramidLevel - The pyramid level of the returned resolution,
3022 -- default to the pyramid level 0.
3023 -- SRID - The SRID for the returned resolution, default to the
3024 -- given georaster's SRID.
3025 -- resolutionUnit - The unit of the returned resolution. default to the
3026 -- unit of the SRID.
3027 --
3028 -- RETURN:
3029 -- Resolution in SDO_NUMBER_ARRAY for the given georaster.
3030 --
3031 FUNCTION generateSpatialResolutions(
3032 geoRaster IN MDSYS.SDO_GEORASTER,
3033 pyramidLevel IN NUMBER DEFAULT NULL,
3034 SRID IN NUMBER DEFAULT NULL,
3035 resolutionUnit IN VARCHAR2 DEFAULT NULL)
3036 RETURN SDO_NUMBER_ARRAY;
3037
3038 END SDO_GEOR;