PLEASE NOTE : This is the documentation for the avs module executable geomanip, which contains the following modulesi: vexpand vflip vresize vrotate vshrink vtranslat vtranspos Any mention of xvimage is actually a "field 2D". Also, the INPUTs and OUTPUTs, which are mapped to avs parameters, inputs, and outputs, are for the khoros library routine. ********************************************************************************* Documentation for avs module vexpand INPUT image pointer to image structure to be expanded scale scale factor by which to expand the image (integer), must be postitive and non-zero OUTPUT image points to the image structure that has been processed. The output data type is the same as the input data type. Return Value: 1 on success, 0 on failure DESCRIPTION vexpand expands the size of the image pointer to by image by an integer factor by replicating pixels in blocks. The scale factor must be a positive, non-zero integer. Note that image is used for both the input xvimage structure and the resulting output xvimage structure. This is done to save space, but you must be careful not to overwrite impor- tant data. SEE ALSO vexpand(1), intro(3), vipl(3), verror(3), vutils(3) vshrink(1), vresize(1) RESTRICTIONS vexpand does not work on BIT or COMPLEX data types. vex- pand does not work on explicit location data. AUTHOR Scott Wilson COPYRIGHT Copyright 1991, University of New Mexico. All rights reserved. ********************************************************************************* Documentation for avs module vflip INPUT image pointer to the xvimage structure to be pro- cessed r if nonzero, then do right-for-left flip (int) t if nonzero, then do top-for-bottom flip (int) OUTPUT image holds the result of the operation. The out- put data type is the same as the input data type. Return Value: 1 on success, 0 on failure. DESCRIPTION vflip performs reflection or "flip" operations on an image. The flip can be specified to be top-for-bottom or right- for-left or both (which does a 180 degree rotation. Note that image is used for both the input xvimage structure and the resulting output xvimage structure. This is done to save space, but you must be careful not to overwrite impor- tant data. SEE ALSO vflip(1), intro(3), vipl(3), verror(3), vutils(3) vro- tate(1), vwarp(1) RESTRICTIONS vflip does not work on BIT, COMPLEX, or transformed data types. vflip will work with explicit location data, but only the image part will be flipped. The location data will not be flipped. AUTHOR Scott Wilson COPYRIGHT Copyright 1991, University of New Mexico. All rights reserved. ********************************************************************************* Documentation for avs module vresize INPUT image pointer to xvimage structure to be processed hmag magnification factor in the horizontal (X) direction (float) vmag magnification factor in the vertical (Y) direction (float) xc X coordinate of center of action (float) yc Y coordinate of center of action (float) OUTPUT image holds the result of the resize operation. The output data type is the same as the input data type. Return Value: 1 on success, 0 on failure. DESCRIPTION vresize is used to magnify or reduce an image by using bil- inear interpolation. The resultant image is the same size and type as the original, but the pixels in the input image are magnified or reduced in the output image. If the input image is reduced (magnification factor < 1.0) then unknown pixels are set to zero. If the input image is magnified (magnification factor > 1.0) then input pixels that would be mapped outside of the output image are lost. The magnification factor cannot be zero. The magnification or reduction is done about a center point that can be specified to be anywhere in the X-Y plane (even outside the image). The correct way to think about this is by analogy to a magnifying glass where you place the magni- fying glass over the point of interest and then choose the lens to get the magnification you want. Note that image is used for both the input xvimage structure and the resulting output xvimage structure. This is done to save space, but you must be careful not to overwrite impor- tant data. SEE ALSO vresize(1), intro(3), vipl(3), verror(3), vutils(3) vwarp(1), vshrink(1), vexpand(1), vrotate(1) RESTRICTIONS vresize does not work on COMPLEX data types. vresize does not work on explicit location data. AUTHOR Scott Wilson COPYRIGHT Copyright 1991, University of New Mexico. All rights reserved. ********************************************************************************* Documentation for avs module vrotate INPUT image pointer to xvimage structure to be processed ang angle in degrees to rotate by, positive is clockwise (float) xc X coordinate of center of rotation (float) yc Y coordinate of center of rotation (float) OUTPUT image holds the result of the operation. The out- put data type is the same as the input data type. Return Value: 1 on success, 0 on failure. DESCRIPTION vrotate rotates an image by a specfied angle, about a specified point. The rotation is performed using bilinear interpolation. Portions of the output image that do not have a corresponding pixel in the input image are set to zero. Note that image is used for both the input xvimage structure and the resulting output xvimage structure. This is done to save space, but you must be careful not to overwrite impor- tant data. SEE ALSO vrotate(1), intro(3), vipl(3), verror(3), vutils(3) vresize(1), vwarp(1), vshrink(1), vexpand(1) RESTRICTIONS vrotate does not work on BIT or COMPLEX data types. vro- tate does not work on explicit location data. AUTHOR Scott Wilson COPYRIGHT Copyright 1991, University of New Mexico. All rights reserved. ********************************************************************************* Documentation for avs module vshrink INPUT image pointer to xvimage structure to be processed scale size reduction factor (integer), must be pos- titive, non-zero OUTPUT image holds the result of the operation. The out- put data type is the same as the input data type. Return Value: 1 on success, 0 on failure. DESCRIPTION vshrink decreases the size of an image by skipping to every s'th pixel where s is the scale argument. The resul- tant image will be 1/s the size of the original image. The scale factor must be a positive, non-zero number. The output data type is the same asn the input data type. Note that image is used for both the input xvimage structure and the resulting output xvimage structure. This is done to save space, but you must be careful not to overwrite impor- tant data. SEE ALSO vshrink(1), intro(3), vipl(3), verror(3), vutils(3) vex- pand(1), vresize(1) RESTRICTIONS vshrink does not work on COMPLEX data types. vshrink does not work on explicit location data. AUTHOR Scott Wilson COPYRIGHT Copyright 1991, University of New Mexico. All rights reserved. ********************************************************************************* Documentation fora avs module vtranslat INPUT img - an xvimage structure (input image). vi - integer: Translation along i axis vj - integer: Translation along j axis wflg - integer: flag set to one if wrapping selected or zero if padding with padding value pad - float: padding value used to set the pixels of the result image that have not received any value dur- ing the translation process. OUTPUT img - Holds the result of the translation. DESCRIPTION vtranslat Computes the translation of an xvimage structure by a vector (i,j). Includes a Wrap option or a padding value. The tranlation is processed in the following manner: For each pixel (x,y) of the input image, the algorithm cal- culates the transformed coordinates (x+i,y+j) and determines if the translated pixel is outside of the output image. If the new pixel is inside of the image border, its initial value is stored in its new location. If the new location does not fit inside of the image, a modulo (size of rows and columns) is taken into con- sideration to write either the padding value in the output image (if wrap flag not selected) or the initial value of the pixel (x,y) (if wrap selected). SEE ALSO vtranslat(1), intro(3), vipl(3), verror(3), vutils(3) vtranslat(1) RESTRICTIONS vtranslat will not operate on Bit data storage types. vtranslat does not work on explicit location data. AUTHOR Pascal ADAM COPYRIGHT Copyright 1991, University of New Mexico. All rights reserved. ********************************************************************************* Documentation for avs module vtranspos INPUT img - a pointer on an xvimage structure. OUTPUT img - holds the result of the transposition. DESCRIPTION ltranspos Computes the transpose of the rows and columns in an image. The transpose is computed by scanning the input image and applying the function: Transpose(x,y) = pixel(y,x) SEE ALSO vtranspos(1), intro(3), vipl(3), verror(3), vutils(3) vtran- spos(1) RESTRICTIONS vtranspos will not operate on Bit, DOUBLE, or DCOMPLEX data storage types. vtranspos will not operate on explicit location data. AUTHOR Pascal ADAM COPYRIGHT Copyright 1991, University of New Mexico. All rights reserved. *********************************************************************************