he z dimension is left var
iable, thus allowing for dynamic growing and shrinking of the cube.
The operation "From all VTs, cut along the three spatial axes through point (x0,y0,z0)" reads in RasQL as follows:
select
vt.cube[ x0, *:*, *:* ],
vt.cube[ *:*, y0, *:* ],
vt.cube[ *:*, *:*, z0 ]
from VolumeTomograms as vt
For each operation available on the MDD cell type, a corresponding so-called induced operation is provided, which simultaneously applies the operation to all cells of an MDD. Both unary (e.g., record access and contrast enhancement) and binary (e.g., masking an image) operations can be induced.
In addition to these basic operations, general constructs are available that let you compose complex queries involving histograms, aggregations, convolutions, and the discrete Fourier transform (DFT).
Because of the large size of the data items involved, support for partial MDD updates is important. Thus, the SQL update statement is extended in RasQL to specify an
MDD cutout on the left side of the assignment clause. The operation "Append another CAT scan to a VT" reads in RasQL as follows:
update VolumeTomograms
set cube
[ *:*, *:*, spatial_domain
(cube)[2].hi+1 ] =
<CAT scan data>
where ...