Woolz Image Processing  Version 1.7.5
WlzArray.c File Reference

Functions for converting between domain objects and arrays. More...

Functions

WlzErrorNum WlzToBArray2D (WlzIVertex2 *dstSizeArrayDat, WlzUByte ***dstArrayDat, WlzObject *srcObj, WlzIVertex2 origin, WlzIVertex2 size, int noiseFlag)
 Extracts a Alc bit array from any Woolz 2D domain object. More...
 
WlzErrorNum WlzToIArray2D (WlzIVertex2 *dstSizeArrayDat, int ***dstArrayDat, WlzObject *srcObj, WlzIVertex2 origin, WlzIVertex2 size, int noiseFlag)
 Extracts a Alc int array from any Woolz 2D domain object. More...
 
WlzErrorNum WlzToSArray2D (WlzIVertex2 *dstSizeArrayDat, short ***dstArrayDat, WlzObject *srcObj, WlzIVertex2 origin, WlzIVertex2 size, int noiseFlag)
 Extracts a Alc short array from any Woolz 2D domain object. More...
 
WlzErrorNum WlzToUArray2D (WlzIVertex2 *dstSizeArrayDat, WlzUByte ***dstArrayDat, WlzObject *srcObj, WlzIVertex2 origin, WlzIVertex2 size, int noiseFlag)
 Extracts a Alc unsigned byte array from any Woolz 2D domain object. More...
 
WlzErrorNum WlzToFArray2D (WlzIVertex2 *dstSizeArrayDat, float ***dstArrayDat, WlzObject *srcObj, WlzIVertex2 origin, WlzIVertex2 size, int noiseFlag)
 Extracts aAlc float array from any Woolz 2D domain object. More...
 
WlzErrorNum WlzToDArray2D (WlzIVertex2 *dstSizeArrayDat, double ***dstArrayDat, WlzObject *srcObj, WlzIVertex2 origin, WlzIVertex2 size, int noiseFlag)
 Extracts a Alc double array from any Woolz 2D domain object. More...
 
WlzErrorNum WlzToRArray2D (WlzIVertex2 *dstSizeArrayDat, unsigned int ***dstArrayDat, WlzObject *srcObj, WlzIVertex2 origin, WlzIVertex2 size, int noiseFlag)
 Extracts a Alc unsigned int array for RGBA values from any Woolz 2D domain object. More...
 
WlzErrorNum WlzToArray2D (void ***dstP, WlzObject *srcObj, WlzIVertex2 size, WlzIVertex2 origin, int noiseFlag, WlzGreyType dstGreyType)
 Extracts an Alc array from any Woolz 2D domain object. If the destination pointer points to a non-NULL pointer then it is assumed to be a suitable Alc array. The data are assumed to be within the valid range. More...
 
WlzErrorNum WlzToBArray3D (WlzIVertex3 *dstSizeArrayDat, WlzUByte ****dstArrayDat, WlzObject *srcObj, WlzIVertex3 origin, WlzIVertex3 size, int noiseFlag)
 Extracts a bit Alc array from any Woolz 3D domain object. More...
 
WlzErrorNum WlzToIArray3D (WlzIVertex3 *dstSizeArrayDat, int ****dstArrayDat, WlzObject *srcObj, WlzIVertex3 origin, WlzIVertex3 size, int noiseFlag)
 Extracts a int Alc array from any Woolz 3D domain object. More...
 
WlzErrorNum WlzToSArray3D (WlzIVertex3 *dstSizeArrayDat, short ****dstArrayDat, WlzObject *srcObj, WlzIVertex3 origin, WlzIVertex3 size, int noiseFlag)
 Extracts a short Alc array from any Woolz 3D domain object. More...
 
WlzErrorNum WlzToUArray3D (WlzIVertex3 *dstSizeArrayDat, WlzUByte ****dstArrayDat, WlzObject *srcObj, WlzIVertex3 origin, WlzIVertex3 size, int noiseFlag)
 Extracts a unsigned byte Alc array from any Woolz 3D domain object. More...
 
WlzErrorNum WlzToFArray3D (WlzIVertex3 *dstSizeArrayDat, float ****dstArrayDat, WlzObject *srcObj, WlzIVertex3 origin, WlzIVertex3 size, int noiseFlag)
 Extracts a float Alc array from any Woolz 3D domain object. More...
 
WlzErrorNum WlzToDArray3D (WlzIVertex3 *dstSizeArrayDat, double ****dstArrayDat, WlzObject *srcObj, WlzIVertex3 origin, WlzIVertex3 size, int noiseFlag)
 Extracts a double Alc array from any Woolz 3D domain object. More...
 
WlzErrorNum WlzToRArray3D (WlzIVertex3 *dstSizeArrayDat, unsigned int ****dstArrayDat, WlzObject *srcObj, WlzIVertex3 origin, WlzIVertex3 size, int noiseFlag)
 Extracts an unsigned int Alc array for RGBA values from any Woolz 3D domain object. More...
 
WlzErrorNum WlzToArray3D (void ****dstP, WlzObject *srcObj, WlzIVertex3 size, WlzIVertex3 origin, int noiseFlag, WlzGreyType dstGreyType)
 Extracts an Alc array from any Woolz 3D domain object. If the destination pointer points to a non-NULL pointer then it is assumed to be a suitable Alc array. The data are assumed to be within the valid range. More...
 
WlzObjectWlzFromBArray2D (WlzIVertex2 arraySizeDat, WlzUByte **arrayDat, WlzIVertex2 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 2D domain object from the given Alc array. More...
 
WlzObjectWlzFromIArray2D (WlzIVertex2 arraySizeDat, int **arrayDat, WlzIVertex2 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 2D domain object from the given Alc array. More...
 
WlzObjectWlzFromSArray2D (WlzIVertex2 arraySizeDat, short **arrayDat, WlzIVertex2 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 2D domain object from the given Alc array. More...
 
WlzObjectWlzFromUArray2D (WlzIVertex2 arraySizeDat, WlzUByte **arrayDat, WlzIVertex2 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 2D domain object from the given Alc array. More...
 
WlzObjectWlzFromFArray2D (WlzIVertex2 arraySizeDat, float **arrayDat, WlzIVertex2 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 2D domain object from the given Alc array. More...
 
WlzObjectWlzFromDArray2D (WlzIVertex2 arraySizeDat, double **arrayDat, WlzIVertex2 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 2D domain object from the given Alc array. More...
 
WlzObjectWlzFromArray2D (void **arrayP, WlzIVertex2 arraySize, WlzIVertex2 arrayOrigin, WlzGreyType dstGreyType, WlzGreyType srcGreyType, double valOffset, double valScale, int clampFlag, int noCopyFlag, WlzErrorNum *dstErr)
 Creates a Woolz 2D domain object from the given Alc array. The data are assumed to be within the valid range. If the noCopyFlag is set (non-zero) then the array data space is used for the onjects values without copying. For this to be valid both the source and destination grey type must be the same. More...
 
WlzObjectWlzFromBArray3D (WlzIVertex3 arraySizeDat, WlzUByte ***arrayDat, WlzIVertex3 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 3D domain object from the given Alc array. More...
 
WlzObjectWlzFromIArray3D (WlzIVertex3 arraySizeDat, int ***arrayDat, WlzIVertex3 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 3D domain object from the given Alc array. More...
 
WlzObjectWlzFromSArray3D (WlzIVertex3 arraySizeDat, short ***arrayDat, WlzIVertex3 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 3D domain object from the given Alc array. More...
 
WlzObjectWlzFromUArray3D (WlzIVertex3 arraySizeDat, WlzUByte ***arrayDat, WlzIVertex3 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 3D domain object from the given Alc array. More...
 
WlzObjectWlzFromFArray3D (WlzIVertex3 arraySizeDat, float ***arrayDat, WlzIVertex3 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 3D domain object from the given Alc array. More...
 
WlzObjectWlzFromDArray3D (WlzIVertex3 arraySizeDat, double ***arrayDat, WlzIVertex3 arrayOrigin, WlzErrorNum *dstErr)
 Creates a Woolz 3D domain object from the given Alc array. More...
 
WlzObjectWlzFromArray3D (void ***arrayP, WlzIVertex3 arraySize, WlzIVertex3 arrayOrigin, WlzGreyType dstGreyType, WlzGreyType srcGreyType, double valOffset, double valScale, int clampFlag, int noCopyFlag, WlzErrorNum *dstErr)
 Creates a Woolz 3D domain object from the given Alc array. The data are assumed to be within the valid range. If the noCopyFlag is set (non-zero) then the array data space is used for the onjects values without copying. For this to be valid both the source and destination grey type must be the same. More...
 
int WlzArrayStats3D (void ***arrayP, WlzIVertex3 arraySize, WlzGreyType greyType, double *dstMin, double *dstMax, double *dstSum, double *dstSumSq, double *dstMean, double *dstStdDev)
 Calculates simple statistics for the given Alc array. More...
 
int WlzArrayStats2D (void **arrayP, WlzIVertex2 arraySize, WlzGreyType greyType, double *dstMin, double *dstMax, double *dstSum, double *dstSumSq, double *dstMean, double *dstStdDev)
 Calculates simple statistics for the given Alc array. More...
 
int WlzArrayStats1D (void *arrayP, int arraySize, WlzGreyType greyType, double *dstMin, double *dstMax, double *dstSum, double *dstSumSq, double *dstMean, double *dstStdDev)
 Calculates simple statistics for the given Alc array. More...
 
WlzObjectWlzFromBArray1D (WlzIVertex2 arraySizeDat, WlzUByte *bitData, WlzIVertex2 arrayOrigin, WlzErrorNum *dstErr)
 Converts a 1D bit array as generated by the Java interfaces to a 2D woolz object. More...
 
WlzObjectWlzFromArray1D (WlzObjectType oType, WlzIVertex3 sz, WlzIVertex3 org, WlzGreyType gType, unsigned int vpe, WlzGreyP gDat, int noCopy, WlzErrorNum *dstErr)
 Creates a new 2D or 3D domain object from the given 1D array. The object created is rectangular/cuboid with the given origin and size. The background value of the new object is set to zero. The returned object can be free'd using WlzFreeObj(), irespective of whether the noCopy flag is set, but if an object created with the noCopy flag set is free'd the data must be free'd independently after the returned object. The no copy option was originaly intended for efficient output of Woolz objects to a file in non-Woolz applications. More...
 
WlzErrorNum WlzToArray1D (WlzGreyP gP, WlzGreyType gType, WlzIBox3 gBufBox, int gOffset, WlzObject *obj)
 Sets values in the given buffer to those of the given object. The given buffer must be large enough to hold the given bounding box of image values. Only values within the domain of the object are set. More...
 

Detailed Description

Functions for converting between domain objects and arrays.

Author
Bill Hill
Date
March 1999
Version
Id
00ecb847db11597a494d8900518202e586590553
Address: MRC Human Genetics Unit, MRC Institute of Genetics and Molecular Medicine, University of Edinburgh, Western General Hospital, Edinburgh, EH4 2XU, UK.
Copyright (C), [2012], The University Court of the University of Edinburgh, Old College, Edinburgh, UK.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.