Provided by: libvolpack1-dev_1.0b3-9_amd64 bug

NAME

       vpSetVoxelSize - define the size of a voxel

SYNOPSIS

       #include <volpack.h>

       vpResult
       vpSetVoxelSize(vpc,       bytes_per_voxel,       num_voxel_fields,       num_shade_fields,
               num_classify_fields)
           vpContext *vpc;
           int bytes_per_voxel;
           int num_voxel_fields;
           int num_shade_fields;
           int num_classify_fields;

ARGUMENTS

       vpc    VolPack context from vpCreateContext.

       bytes_per_voxel
              Size of one voxel in bytes.

       num_voxel_fields
              Number of fields in a voxel.

       num_shade_fields
              Number of voxel fields that are arguments to the shading function.

       num_classify_fields
              Number of voxel fields that are arguments to the opacity transfer function.

DESCRIPTION

       vpSetVoxelSize is used to define the size in bytes and the number of fields  in  a  voxel.
       Each  voxel  field is analogous to a field in a C structure and the contents of each field
       is user-defined.  See the vpSetVoxelField function (vpSetVoxelField(3))  for  setting  the
       size and offset of each field.  vpSetVoxelSize should be called before vpSetVoxelField and
       before any functions that access the contents of a voxel.

       Typically, some of the voxel fields are used as arguments to a shading function  and  some
       (possibly  the  same)  fields  are  used as arguments to an opacity transfer function (for
       classification).  The fields that are used for shading should come first, i.e. they should
       have  the  smallest offsets, followed by any fields that are only used for classification.
       The classification fields can then be stripped off to save space during the precomputation
       stage  for  the  fast  rendering  algorithm.  The parameter num_shade_fields indicates the
       number of fields (starting from the first) that must not be stripped off.

       The parameter num_clsfy_fields indicates the total number  of  fields  that  are  used  as
       parameters  to  the opacity transfer function.  These fields do not necessarily have to be
       contiguous, although any fields that are not also used for  shading  should  be  the  last
       fields in the voxel.

       If the call to vpSetVoxelSize succeeds, any existing precomputed volume data structures in
       the context are destroyed.

STATE VARIABLES

       The current voxel size parameters can be retrieved with the following state variable codes
       (see    vpGeti(3)):    VP_BYTES_PER_VOXEL,   VP_VOXEL_FIELD_COUNT,   VP_SHADE_FIELD_COUNT,
       VP_CLASSIFY_FIELD_COUNT.

ERRORS

       The normal return value is VP_OK.  The following error return values are possible:

       VPERROR_LIMIT_EXCEEDED
              The number of voxel fields exceeds the implementation limit.   This  limit  can  be
              increased by editing volpack.h and recompiling the library.

       VPERROR_BAD_VALUE
              Either num_clsfy_fields or num_shade_fields is out of range.

SEE ALSO

       VolPack(3), vpCreateContext(3), vpSetVoxelField(3)