 |
vlcreate_volume, vlcopy_volume
NAME
vlcreate_volume - Create a 3-D volume data
structure with multiple variables
vlcopy_volume - Copy an existing
volume's meta information into a new volume data structure
SYNOPSIS
#include <parvox.h>
vlvolume* vlcreate_volume(int idim, int jdim,
int kdim, int num_vars)
vlvolume* vlcopy_volume (vlvolume *vol)
DESCRIPTION
vlcreate_volume()
creates a new vlvolume data structure and initializes
the meta information for the volume. It takes the dimensions of the
volume, idim, jdim,
and kdim, and number of variables,
num_vars, as the input arguments.
The information stored in vlvolume are common to all the variables
for this volume, such as spacing, the relative space resolution along each
dimension, the "nodata" value and color, etc... The variable-specific
meta information is stored in vlvariable data structure. Num_vars
of vlvariable will be allocated and initialized in vlcreate_volume().
The vlblock_info data structure stores the block dimension and other
related information for block decomposition. It will be filled when
the volume data is filled in.
vlcopy_volume() creates a new vlvolume
data structure and copies the meta information from an existing volume,
vol, to the new one. The
information of the vlvariable will not be copied from vol,
instead, new vlvariable array is created and initialized to its
default values.
vlvolume, vlvariable, and vlblock_info
datatypes are defined in vlvoxel.h, which is included in parvox.h.
typedef struct volume
short idim, jdim,
kdim, /* the dimension of the volume */
num_vars,
/* number of variables per voxel */
num_blocks,
/* number of subvolumes in this set */
num_time_steps, /* Number of time steps
*/
flag;
/* type of the data set */
float nodata;
/* the value for "missing data" */
vlcolor nodata_col;
/* the color for the missing data,
default black */
vlpoint spacing;
/* the space ratio on each dim. */
vlvariable *vars;
/* array of variables one for each
voxel variable. */
vlblock_info **metas;
/* the meta data for each block */
} vlvolume;
Both vlcreate_volume() and vlcopy_volume() return
a pointer to the newly created vlvolume data structure.
SEE ALSO
vlread_block,
vldelete_volume
BACK TO INDEX
|
 |