Woolz Image Processing Version 1.4.0
|
Files | |
file | WlzAssign.c |
Woolz objects domains and values maintain a linkcount, which records it's usage by other objects, domains or values. To increment a linkcount the appropriate assignment function should be used. | |
file | WlzBuildObj.c |
Functions to allow spatial domain objects with values to be built incrementally. | |
file | WlzConstruct3D.c |
Functions to construct 3D domain objects from 2D domain objects. | |
file | WlzCopy.c |
Functions to make 'deep' copies of objects. | |
file | WlzFreeSpace.c |
Functions for freeing objects and their components. | |
file | WlzMakeCompound.c |
Makes compound objects. | |
file | WlzMakeIntervalValues.c |
Makes an interval values table. | |
file | WlzMakeStructs.c |
Functions for allocating woolz structures. | |
file | WlzTiledValues.c |
Functions construct and convert tiled objects. | |
Functions | |
WlzObject * | WlzAssignObject (WlzObject *obj, WlzErrorNum *dstErr) |
Assign an object (increment it's linkcount) by first checking for NULL, then the value of linkcount, before incrementing the linkcount. If used concientiously, assignment should avoid memory errors. | |
WlzDomain | WlzAssignDomain (WlzDomain domain, WlzErrorNum *dstErr) |
Assign a domain by incrementing it's linkcount. | |
WlzValues | WlzAssignValues (WlzValues values, WlzErrorNum *dstErr) |
Assign a values by incrementing it's linkcount. | |
WlzProperty | WlzAssignProperty (WlzProperty property, WlzErrorNum *dstErr) |
Assign a property by incrementing it's linkcount. | |
WlzAffineTransform * | WlzAssignAffineTransform (WlzAffineTransform *trans, WlzErrorNum *dstErr) |
Assign an affine transform by incrementing it's linkcount. | |
WlzTransform | WlzAssignTransform (WlzTransform t, WlzErrorNum *dstErr) |
Assign a transform by incrementing it's linkcount. | |
WlzThreeDViewStruct * | WlzAssign3DViewStruct (WlzThreeDViewStruct *viewStr, WlzErrorNum *dstErr) |
Assign an woolz 3D view structure by incrementing it's linkcount. | |
WlzBoundList * | WlzAssignBoundList (WlzBoundList *blist, WlzErrorNum *dstErr) |
Assign a boundary list by incrementing it's linkcount. | |
WlzPolygonDomain * | WlzAssignPolygonDomain (WlzPolygonDomain *poly, WlzErrorNum *dstErr) |
Assign a polygon domain by incrementing it's linkcount. | |
WlzGMModel * | WlzAssignGMModel (WlzGMModel *model, WlzErrorNum *dstErr) |
Assign a geometric model by incrementing it's linkcount. | |
int | WlzUnlink (int *linkcount, WlzErrorNum *dstErr) |
Unlink an object, domain or values by decrementing and testing it's linkcount. | |
WlzObject * | WlzBuildObj3U (WlzObject *cObj, WlzIVertex3 og, WlzIVertex2 sz, int bufSz, WlzUByte *buf, WlzErrorNum *dstErr) |
Wrapper for WlzBuildObj3() with WlzUByte values. | |
WlzObject * | WlzBuildObj3S (WlzObject *cObj, WlzIVertex3 og, WlzIVertex2 sz, int bufSz, short *buf, WlzErrorNum *dstErr) |
Wrapper for WlzBuildObj3() with short values. | |
WlzObject * | WlzBuildObj3I (WlzObject *cObj, WlzIVertex3 og, WlzIVertex2 sz, int bufSz, int *buf, WlzErrorNum *dstErr) |
Wrapper for WlzBuildObj3() with int values. | |
WlzObject * | WlzBuildObj3F (WlzObject *cObj, WlzIVertex3 og, WlzIVertex2 sz, int bufSz, float *buf, WlzErrorNum *dstErr) |
Wrapper for WlzBuildObj3() with float values. | |
WlzObject * | WlzBuildObj3D (WlzObject *cObj, WlzIVertex3 og, WlzIVertex2 sz, int bufSz, double *buf, WlzErrorNum *dstErr) |
Wrapper for WlzBuildObj3() with double values. | |
WlzObject * | WlzBuildObj3R (WlzObject *cObj, WlzIVertex3 og, WlzIVertex2 sz, int bufSz, WlzUInt *buf, WlzErrorNum *dstErr) |
Wrapper for WlzBuildObj3() with RGBA values. | |
WlzObject * | WlzBuildObj3B (WlzObject *cObj, WlzIVertex3 og, WlzIVertex2 sz, WlzGreyType gType, int bufSz, char *buf, WlzErrorNum *dstErr) |
Wrapper for WlzBuildObj3() with buffer passed as bytes. | |
WlzObject * | WlzBuildObj3 (WlzObject *cObj, WlzIVertex3 og, WlzIVertex2 sz, WlzGreyType gType, int bufSz, WlzGreyP bufP, WlzErrorNum *dstErr) |
Creates a new or adds to an existing 3D spatial domain object using a rectangular buffer of values to a single plane of the given current object (which may be NULL or empty if the object is to be created). The returned object will share domains and values of planes other than the given plane with the current object. | |
WlzObject * | WlzConstruct3DObjFromFile (int nFileStr, char **fileStr, int plane1, float xSz, float ySz, float zSz, WlzErrorNum *dstErr) |
Constructs a 3D domain object from 2D domain objects read from the given files. Each file is read in turn and added to the 3D object. An empty plane can be specified by setting the file string to NULL. Either all or none of the 2D objects must have values. When the 2D objects have values then the background value of the first 2D object is set to be the background value of the 3D object. | |
WlzObject * | WlzConstruct3DObjFromObj (int nObjs, WlzObject **objs, int plane1, float xSz, float ySz, float zSz, WlzErrorNum *dstErr) |
Constructs a 3D domain object from 2D domain objects. Each 2D object is assigned in turn to the 3D object no domains or values are copied. An empty can be specified by setting the 2D object to NULL. Either all or none of the 2D objects must have values. When the 2D objects have values then the background value of the first 2D object is set to be the background value of the 3D object. | |
WlzObject * | WlzCopyObject (WlzObject *inObj, WlzErrorNum *dstErr) |
Copies a Woolz object together with it's domain, values and properties and then returns the copy. | |
WlzDomain | WlzCopyDomain (WlzObjectType inObjType, WlzDomain inDom, WlzErrorNum *dstErr) |
Copies the given objects domain. | |
WlzValues | WlzCopyValues (WlzObjectType inObjType, WlzValues inVal, WlzDomain inDom, WlzErrorNum *dstErr) |
Copies the given values. | |
WlzPropertyList * | WlzCopyPropertyList (WlzPropertyList *gList, WlzErrorNum *dstErr) |
Copies the given property list. | |
WlzErrorNum | WlzCopyObjectGreyValues (WlzObject *dObj, WlzObject *sObj) |
Copies the grey values of the source object to the destination object, overwriting the values of the destination object. | |
WlzErrorNum | WlzFreeObj (WlzObject *obj) |
Free space allocated to a woolz object. | |
WlzErrorNum | WlzFreeIntervalDomain (WlzIntervalDomain *idom) |
Free an interval domain - convenience link to WlzFreeDomain() | |
WlzErrorNum | WlzFreeHistogramDomain (WlzHistogramDomain *hist) |
Free a histogram domain. | |
WlzErrorNum | WlzFreeDomain (WlzDomain domain) |
Free a domain structure of any type. All domain structures must have a type and linkcount. Most also have a freeptr by which, if set, all the space allocated can be freed, however there are some special cases. | |
WlzErrorNum | WlzFreePlaneDomain (WlzPlaneDomain *planedm) |
Free a planedomain. | |
WlzErrorNum | WlzFreeValueTb (WlzRagRValues *vdmn) |
Convenience routine to free a ragged rect valuetable. | |
WlzErrorNum | WlzFreeValues (WlzValues values) |
Free a values structure, currently only WlzRagRValues and WlzRectValues DO NOT call this function with any other values structure types! | |
WlzErrorNum | WlzFreeVoxelValueTb (WlzVoxelValues *voxtab) |
Free a voxel value table. | |
WlzErrorNum | WlzFreeConvHull (WlzConvHullValues *c) |
Free convex hull values. | |
WlzErrorNum | WlzFreePolyDmn (WlzPolygonDomain *poly) |
Free a polygon domain. | |
WlzErrorNum | WlzFreeBoundList (WlzBoundList *b) |
Recursively free a boundary list. | |
WlzErrorNum | WlzFree3DWarpTrans (Wlz3DWarpTrans *obj) |
Free a 3D warp transform. | |
WlzErrorNum | WlzFreeContour (WlzContour *ctr) |
Free's a WlzContour data structure. | |
WlzErrorNum | WlzFreeIndexedValues (WlzIndexedValues *ixv) |
Frees an indexed valuetable. | |
WlzErrorNum | WlzFreePointValues (WlzPointValues *pv) |
Frees a points valuetable. | |
WlzLBTDomain2D * | WlzMakeLBTDomain2D (WlzObjectType type, int l1, int ll, int k1, int kl, WlzErrorNum *dstErr) |
Creates a linear binary tree domain without creating any nodes, leaving the nodes pointer NULL. Only the type, bounding box and depth are set. The depth ![]()
where | |
WlzLBTDomain3D * | WlzMakeLBTDomain3D (WlzObjectType type, int p1, int pl, int l1, int ll, int k1, int kl, WlzErrorNum *dstErr) |
Creates a linear binary tree domain without creating any nodes, leaving the nodes pointer NULL. Only the type, bounding box and depth are set. The depth ![]()
where | |
WlzErrorNum | WlzFreeLBTDomain3D (WlzLBTDomain3D *lDom) |
Frees the given 3D linear binary tree domain. | |
WlzErrorNum | WlzFreeLBTDomain2D (WlzLBTDomain2D *lDom) |
Frees the given 2D linear binary tree domain. | |
WlzCompoundArray * | WlzMakeCompoundArray (WlzObjectType type, int mode, int n, WlzObject **ol, WlzObjectType otype, WlzErrorNum *dstErr) |
Makes a new Woolz compound array object. | |
WlzIntervalValues * | WlzMakeIntervalValues (WlzObjectType type, WlzObject *obj, WlzPixelV bckgrnd, WlzErrorNum *dstErr) |
Make in interval values table to match the input object The table will have linkcount set to zero. | |
WlzIntervalDomain * | WlzMakeIntervalDomain (WlzObjectType type, int l1, int ll, int k1, int kl, WlzErrorNum *dstErr) |
Allocate space for an interval domain structure. If the type is WLZ_INTERVALDOMAIN_INTVL then allocate space for the interval line array and set the pointer. | |
WlzPlaneDomain * | WlzMakePlaneDomain (WlzObjectType type, int p1, int pl, int l1, int ll, int k1, int kl, WlzErrorNum *dstErr) |
Allocate space for a plane domain and the domain pointers. | |
WlzObject * | WlzNewObjectValues (WlzObject *sObj, WlzObjectType tType, WlzPixelV bgdV, int setFG, WlzPixelV fgdV, WlzErrorNum *dstErr) |
Creaes a new object with the domain of the given object and a new values. | |
WlzVoxelValues * | WlzNewValuesVox (WlzObject *sObj, WlzObjectType gTType, WlzPixelV bgdV, WlzErrorNum *dstErr) |
From the domain of the given source object a new voxel value table is created with the given grey type and background value. | |
WlzObject * | WlzMakeMain (WlzObjectType type, WlzDomain domain, WlzValues values, WlzPropertyList *plist, WlzObject *assoc, WlzErrorNum *dstErr) |
Make a top-level woolz object assigning domain, values and other pointers as required . The type is checked. The domain is not checked for NULL although this should only apply to the WLZ_EMPTY_OBJ. | |
WlzRagRValues * | WlzMakeValueTb (WlzObjectType type, int l1, int ll, int k1, WlzPixelV backgrnd, WlzObject *orig, WlzErrorNum *dstErr) |
Allocate and initialise space for a ragged-rectangle value table only. | |
WlzVoxelValues * | WlzMakeVoxelValueTb (WlzObjectType type, int p1, int pl, WlzPixelV backgrnd, WlzObject *orig, WlzErrorNum *dstErr) |
Allocate space for a voxel table. | |
WlzRectValues * | WlzMakeRectValueTb (WlzObjectType type, int line1, int lastln, int kol1, int width, WlzPixelV backgrnd, int *values, WlzErrorNum *dstErr) |
Make rectangular value table attaching values if set. Note the values pointer is just copied and will not be freed when the object is freed unless the freeptr is set using AlcFreePointerPush(). | |
WlzErrorNum | WlzMakeInterval (int line, WlzIntervalDomain *idom, int nints, WlzInterval *intptr) |
Attach and interval pointer to a an interval domain in the appropriate place and set the number of intervals on the line. Note this procedure makes no checks on the arguments because it is often used in deeply nested loops. | |
WlzErrorNum | WlzMakeValueLine (WlzRagRValues *vtb, int line, int k1, int kl, int *greyptr) |
Attach the grey values for a valueline within a ragged- rectangle value table. Not this procedure does not check the input arguments because it is often at the core of nested loops. | |
WlzPointValues * | WlzNewPointValues (WlzObject *obj, int rank, int *dim, WlzGreyType vType, WlzErrorNum *dstErr) |
Makes a new point value table which covers the points of the given object. | |
WlzPointValues * | WlzMakePointValues (size_t nP, int rank, int *dim, WlzGreyType vType, WlzErrorNum *dstErr) |
Makes a new point value table with space for the requested number of points. | |
WlzPolygonDomain * | WlzMakePolygonDomain (WlzObjectType type, int n, WlzIVertex2 *vertices, int maxv, int copy, WlzErrorNum *dstErr) |
Make a polygon domain, allocating space and copying as required: | |
WlzBoundList * | WlzMakeBoundList (WlzObjectType type, int wrap, WlzPolygonDomain *poly, WlzErrorNum *dstErr) |
Allocate space and initialise a boundlist structure. | |
WlzIVertex2 * | WlzMakeIVertex (int nverts, WlzErrorNum *dstErr) |
Make an integer vertex array. | |
WlzObject * | WlzMakeRect (int line1, int lastln, int kol1, int lastkl, WlzGreyType pixeltype, int *grey_values, WlzPixelV backgrnd, WlzPropertyList *plist, WlzObject *assoc_obj, WlzErrorNum *dstErr) |
Make a top-level rectangular object, setting values if non-NULL, uses WlzMakeRectValueTb() to assign values which by default will not be freed when the object is freed. The freeptr needs to be explicitly set by the calling procedure. This is a convenience procedure calling WlzMakeIntervalDomain() then WlzMakeRectValueTb() then WlzMakeMain(). | |
WlzObject * | WlzMakeCuboid (int plane1, int lastpl, int line1, int lastln, int kol1, int lastkl, WlzGreyType pixType, WlzPixelV bgdV, WlzPropertyList *plist, WlzObject *assocObj, WlzErrorNum *dstErr) |
Creates a 3D domain object with values, for which the domain is a cuboid and the values are of the given type and initialized to have value zero. | |
WlzHistogramDomain * | WlzMakeHistogramDomain (WlzObjectType type, int maxBins, WlzErrorNum *dstErr) |
Allocates space for a histogram domain with the space for the given maximum number of bins of the appropriate type. | |
WlzObject * | WlzMakeEmpty (WlzErrorNum *dstErr) |
Convenience procedure to make a top-level empty object. | |
WlzObject * | WlzMakeHistogram (WlzObjectType type, int maxBins, WlzErrorNum *dstErr) |
Convenience procedure to make a top-level object with a histogram domain. | |
WlzObject * | WlzNewGrey (WlzObject *iobj, WlzErrorNum *dstErr) |
Make a top-level object with the same domain as iobj (pointer copied and linkcount incremented) and new valuetable with values copied from iobj. If iobj has no valuetable then the returned object will have no value- table. This allows a copy of a 2D grey-value object. | |
WlzRagRValues * | WlzNewValueTb (WlzObject *obj, WlzObjectType type, WlzPixelV backgrnd, WlzErrorNum *dstErr) |
Create a value table of required type with the same size and shape as the domain of obj. This must be of type WLZ_2D_DOMAINOBJ. | |
WlzIntervalDomain * | WlzNewIDomain (WlzObjectType outDomType, WlzIntervalDomain *inDom, WlzErrorNum *dstErr) |
Make a copy of an intervaldomain. | |
WlzContour * | WlzMakeContour (WlzErrorNum *dstErr) |
Makes a new contour data structure. | |
WlzIndexedValues * | WlzMakeIndexedValues (WlzObject *obj, int rank, int *dim, WlzGreyType vType, WlzValueAttach attach, WlzErrorNum *dstErr) |
Makes a new indexed value table. | |
WlzTiledValues * | WlzMakeTiledValues (int dim, WlzErrorNum *dstErr) |
Allocates a new tiled value table, but without allocating any indices or tiles. int dim Dimension. | |
WlzErrorNum | WlzFreeTiledValues (WlzTiledValues *tVal) |
Frees a tiled value table. | |
WlzObject * | WlzMakeTiledValuesFromObj (WlzObject *gObj, size_t tileSz, int copyValues, WlzGreyType gType, WlzPixelV bgdV, WlzErrorNum *dstErr) |
Creates a tiled object from the given object. | |
WlzErrorNum | WlzMakeTiledValuesTiles (WlzTiledValues *tVal) |
Allocates tiles for the tiles values but does not set the values within the tiles. |
WlzObject* WlzAssignObject | ( | WlzObject * | obj, |
WlzErrorNum * | dstErr | ||
) |
Assign an object (increment it's linkcount) by first checking for NULL, then the value of linkcount, before incrementing the linkcount. If used concientiously, assignment should avoid memory errors.
obj | Given object. |
dstErr | Destination error pointer, may be NULL. |
References _WlzObject::linkcount, WLZ_ERR_LINKCOUNT_DATA, WLZ_ERR_NONE, and WLZ_ERR_OBJECT_NULL.
Referenced by main(), Wlz3DSectionOcc(), Wlz3DSectionSegmentObject(), Wlz3DViewTransformBitmap(), WlzBoundaryToPolyObjArray(), WlzCannyDeriche(), WlzCMeshFromObj2D(), WlzCMeshFromObj3D(), WlzCMeshIntersectDom2D5(), WlzCMeshTransformManyObjAsIdx(), WlzCopyValues(), WlzDistanceTransform(), WlzDrawDomainObj(), WlzEffReadObjAm(), WlzEffReadObjAnl(), WlzEffReadObjTiff(), WlzGauss2(), WlzGetPatchTree(), WlzGetProjectionFromObject(), WlzGreyMask(), WlzGreyModGradient(), WlzGreySetValue(), WlzImageArithmetic(), WlzIndexObjFromCompound(), WlzIndexObjToCompound(), WlzInit3DViewStruct(), WlzLabel(), WlzLabel3d(), WlzMakeCompoundArray(), WlzMakeMain(), WlzMakePatchTree(), WlzPatchTreeToObject(), WlzPolyToObj(), WlzProj3DToSection(), WlzProjectObjToPlane(), WlzRegCCorObjs(), WlzRegisterPatchTreeBF(), WlzRGBAMultiThreshold(), WlzScalarFeatures2D(), WlzSepTrans(), and WlzSplitObj().
WlzDomain WlzAssignDomain | ( | WlzDomain | domain, |
WlzErrorNum * | dstErr | ||
) |
Assign a domain by incrementing it's linkcount.
domain | Given domain. |
dstErr | Destination error pointer, may be NULL. |
References _WlzDomain::core, _WlzCoreDomain::linkcount, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_LINKCOUNT_DATA, and WLZ_ERR_NONE.
Referenced by Wlz3DSectionSegmentObject(), Wlz3DViewTransformObj(), WlzBasisFnTransformBoundList(), WlzBoundaryToObj(), WlzBuildObj3(), WlzClipObjToBox3D(), WlzConstruct3DObjFromFile(), WlzConstruct3DObjFromObj(), WlzCopyDomain(), WlzCutObjToValBox3D(), WlzDiffDomain3d(), WlzDomainFill(), WlzEffReadObjTiff(), WlzFillBlankPlanes(), WlzIntersect3d(), WlzMakeCuboid(), WlzMakeCuboidObject(), WlzMakeMain(), WlzMakeSphereObject(), WlzMeshTransformObj_3D(), WlzObjToBoundary(), WlzPDomainFromPItv3D(), WlzPolygonToObj(), WlzShiftDomain(), WlzStructDilation(), WlzStructErosion(), and WlzUnion3d().
WlzValues WlzAssignValues | ( | WlzValues | values, |
WlzErrorNum * | dstErr | ||
) |
Assign a values by incrementing it's linkcount.
values | Given values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzValues::core, _WlzCoreValues::linkcount, WLZ_ERR_LINKCOUNT_DATA, WLZ_ERR_NONE, and WLZ_ERR_VALUES_NULL.
Referenced by Wlz3DViewTransformObj(), WlzBasisFnInvertMakeCMeshTr2D(), WlzBasisFnInvertMakeCMeshTr3D(), WlzBasisFnMakeCMeshTr2D(), WlzBasisFnMakeCMeshTr3D(), WlzBuildObj3(), WlzClipObjToBox3D(), WlzCMeshCompSurfMapIdx(), WlzCMeshTransformFromObj(), WlzCMeshTransformObj(), WlzConstruct3DObjFromFile(), WlzConstruct3DObjFromObj(), WlzCopyScaleCMeshValue(), WlzCopyValues(), WlzCutObjToValBox3D(), WlzDiffDomain3d(), WlzDistanceTransform(), WlzEffReadObjTiff(), WlzFillBlankPlanes(), WlzGetProjectionFromObject(), WlzGreyMask(), WlzGreyMeanDifference(), WlzGreyTemplate(), WlzGreyTransfer(), WlzIntersect3d(), WlzIntersectN(), WlzLBTMakeNodeIndexObj2D(), WlzLBTMakeNodeIndexObj3D(), WlzMakeCuboid(), WlzMakeMain(), WlzMeshTransformObj_3D(), WlzNewValuesVox(), WlzObjToConvexHull(), WlzScalarBinaryOp2(), WlzShiftValues(), WlzTransposeObj(), WlzUnion3d(), and WlzUnionN().
WlzProperty WlzAssignProperty | ( | WlzProperty | property, |
WlzErrorNum * | dstErr | ||
) |
Assign a property by incrementing it's linkcount.
property | Given property. |
dstErr | Destination error pointer, may be NULL. |
References _WlzProperty::core, _WlzCoreProperty::linkcount, WLZ_ERR_LINKCOUNT_DATA, WLZ_ERR_NONE, and WLZ_ERR_PROPERTY_NULL.
Referenced by WlzCopyPropertyList().
WlzAffineTransform* WlzAssignAffineTransform | ( | WlzAffineTransform * | trans, |
WlzErrorNum * | dstErr | ||
) |
Assign an affine transform by incrementing it's linkcount.
trans | Given affine transform. |
dstErr | Destination error pointer, may be NULL. |
References _WlzAffineTransform::linkcount, WLZ_ERR_LINKCOUNT_DATA, WLZ_ERR_NONE, and WLZ_ERR_OBJECT_NULL.
Referenced by main(), SecListToTransforms(), WlzMake3DViewStruct(), WlzMake3DViewStructCopy(), WlzMatchICPCtr(), and WlzRegICPVerticesWSD2D().
WlzTransform WlzAssignTransform | ( | WlzTransform | t, |
WlzErrorNum * | dstErr | ||
) |
Assign a transform by incrementing it's linkcount.
t | Given transform. |
dstErr | Destination error pointer, may be NULL. |
References _WlzTransform::core, _WlzCoreTransform::linkcount, WLZ_ERR_LINKCOUNT_DATA, and WLZ_ERR_NONE.
WlzThreeDViewStruct* WlzAssign3DViewStruct | ( | WlzThreeDViewStruct * | viewStr, |
WlzErrorNum * | dstErr | ||
) |
Assign an woolz 3D view structure by incrementing it's linkcount.
viewStr | Given 3D view structure. |
dstErr | Destination error pointer, may be NULL. |
References _WlzThreeDViewStruct::linkcount, WLZ_ERR_LINKCOUNT_DATA, WLZ_ERR_NONE, and WLZ_ERR_OBJECT_NULL.
WlzBoundList* WlzAssignBoundList | ( | WlzBoundList * | blist, |
WlzErrorNum * | dstErr | ||
) |
Assign a boundary list by incrementing it's linkcount.
blist | Given boundary list. |
dstErr | Destination error pointer, may be NULL. |
References _WlzBoundList::linkcount, WLZ_ERR_LINKCOUNT_DATA, WLZ_ERR_NONE, and WLZ_ERR_OBJECT_NULL.
Referenced by WlzBoundDecimate(), WlzBoundSmooth(), and WlzConvertBoundType().
WlzPolygonDomain* WlzAssignPolygonDomain | ( | WlzPolygonDomain * | poly, |
WlzErrorNum * | dstErr | ||
) |
Assign a polygon domain by incrementing it's linkcount.
poly | Given boundary list. |
dstErr | Destination error pointer, may be NULL. |
References _WlzPolygonDomain::linkcount, WLZ_ERR_LINKCOUNT_DATA, WLZ_ERR_NONE, and WLZ_ERR_OBJECT_NULL.
Referenced by WlzBoundDecimate(), WlzBoundSmooth(), WlzConvertBoundType(), WlzMakeBoundList(), and WlzObjToBoundary().
WlzGMModel* WlzAssignGMModel | ( | WlzGMModel * | model, |
WlzErrorNum * | dstErr | ||
) |
Assign a geometric model by incrementing it's linkcount.
model | Given geometric model. |
dstErr | Destination error pointer, may be NULL. |
References _WlzGMModel::linkcount, WLZ_ERR_LINKCOUNT_DATA, and WLZ_ERR_NONE.
Referenced by WlzAffineTransformContour(), WlzAffineTransformGMModel(), WlzBasisFnTransformContour(), WlzCMeshToContour(), WlzContourGrdObj2D(), WlzCopyDomain(), WlzEffReadObjObj(), WlzEffReadObjPly2(), WlzEffReadObjSMesh(), WlzEffReadObjStl(), and WlzShiftDomain().
int WlzUnlink | ( | int * | linkcount, |
WlzErrorNum * | dstErr | ||
) |
Unlink an object, domain or values by decrementing and testing it's linkcount.
linkcount | Given linkcount pointer. |
dstErr | Destination error pointer, may be NULL. |
References WLZ_ERR_LINKCOUNT_DATA, WLZ_ERR_NONE, and WLZ_ERR_PARAM_NULL.
Referenced by WlzCMeshFree2D(), WlzCMeshFree2D5(), WlzCMeshFree3D(), WlzFree3DViewStruct(), WlzFreeAffineTransform(), WlzFreeBoundList(), WlzFreeContour(), WlzFreeConvHull(), WlzFreeDomain(), WlzFreeEMAPProperty(), WlzFreeEmptyTransform(), WlzFreeLUTValues(), WlzFreeObj(), WlzFreePlaneDomain(), WlzFreePolyDmn(), WlzFreeProperty(), WlzFreePropertyList(), WlzFreePropertyListEntry(), WlzFreeSimpleProperty(), WlzFreeTiledValues(), WlzFreeValues(), and WlzFreeVoxelValueTb().
WlzObject* WlzBuildObj3U | ( | WlzObject * | cObj, |
WlzIVertex3 | og, | ||
WlzIVertex2 | sz, | ||
int | bufSz, | ||
WlzUByte * | buf, | ||
WlzErrorNum * | dstErr | ||
) |
Wrapper for WlzBuildObj3() with WlzUByte values.
cObj | Given current object. |
og | Origin of rectangular buffer. |
sz | Buffer size (note 2D). |
bufSz | Number of values in the buffer (ie sz.vtX * sz.vtY). |
buf | Given buffer of values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzGreyP::ubp, WLZ_GREY_UBYTE, and WlzBuildObj3().
WlzObject* WlzBuildObj3S | ( | WlzObject * | cObj, |
WlzIVertex3 | og, | ||
WlzIVertex2 | sz, | ||
int | bufSz, | ||
short * | buf, | ||
WlzErrorNum * | dstErr | ||
) |
Wrapper for WlzBuildObj3() with short values.
cObj | Given current object. |
og | Origin of rectangular buffer. |
sz | Buffer size (note 2D). |
bufSz | Number of values in the buffer (ie sz.vtX * sz.vtY). |
buf | Given buffer of values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzGreyP::shp, WLZ_GREY_SHORT, and WlzBuildObj3().
WlzObject* WlzBuildObj3I | ( | WlzObject * | cObj, |
WlzIVertex3 | og, | ||
WlzIVertex2 | sz, | ||
int | bufSz, | ||
int * | buf, | ||
WlzErrorNum * | dstErr | ||
) |
Wrapper for WlzBuildObj3() with int values.
cObj | Given current object. |
og | Origin of rectangular buffer. |
sz | Buffer size (note 2D). |
bufSz | Number of values in the buffer (ie sz.vtX * sz.vtY). |
buf | Given buffer of values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzGreyP::inp, WLZ_GREY_INT, and WlzBuildObj3().
WlzObject* WlzBuildObj3F | ( | WlzObject * | cObj, |
WlzIVertex3 | og, | ||
WlzIVertex2 | sz, | ||
int | bufSz, | ||
float * | buf, | ||
WlzErrorNum * | dstErr | ||
) |
Wrapper for WlzBuildObj3() with float values.
cObj | Given current object. |
og | Origin of rectangular buffer. |
sz | Buffer size (note 2D). |
bufSz | Number of values in the buffer (ie sz.vtX * sz.vtY). |
buf | Given buffer of values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzGreyP::flp, WLZ_GREY_FLOAT, and WlzBuildObj3().
WlzObject* WlzBuildObj3D | ( | WlzObject * | cObj, |
WlzIVertex3 | og, | ||
WlzIVertex2 | sz, | ||
int | bufSz, | ||
double * | buf, | ||
WlzErrorNum * | dstErr | ||
) |
Wrapper for WlzBuildObj3() with double values.
cObj | Given current object. |
og | Origin of rectangular buffer. |
sz | Buffer size (note 2D). |
bufSz | Number of values in the buffer (ie sz.vtX * sz.vtY). |
buf | Given buffer of values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzGreyP::dbp, WLZ_GREY_DOUBLE, and WlzBuildObj3().
WlzObject* WlzBuildObj3R | ( | WlzObject * | cObj, |
WlzIVertex3 | og, | ||
WlzIVertex2 | sz, | ||
int | bufSz, | ||
WlzUInt * | buf, | ||
WlzErrorNum * | dstErr | ||
) |
Wrapper for WlzBuildObj3() with RGBA values.
cObj | Given current object. |
og | Origin of rectangular buffer. |
sz | Buffer size (note 2D). |
bufSz | Number of values in the buffer (ie sz.vtX * sz.vtY). |
buf | Given buffer of values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzGreyP::rgbp, WLZ_GREY_RGBA, and WlzBuildObj3().
WlzObject* WlzBuildObj3B | ( | WlzObject * | cObj, |
WlzIVertex3 | og, | ||
WlzIVertex2 | sz, | ||
WlzGreyType | gType, | ||
int | bufSz, | ||
char * | buf, | ||
WlzErrorNum * | dstErr | ||
) |
Wrapper for WlzBuildObj3() with buffer passed as bytes.
cObj | Given current object. |
og | Origin of rectangular buffer. |
sz | Buffer size (note 2D). |
gType | The grey type. |
bufSz | Number of values in the buffer (ie sz.vtX * sz.vtY * sizeof(<gType>))). |
buf | Given buffer of values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzGreyP::ubp, WLZ_ERR_GREY_TYPE, WLZ_ERR_NONE, WlzBuildObj3(), and WlzGreySize().
WlzObject* WlzBuildObj3 | ( | WlzObject * | cObj, |
WlzIVertex3 | og, | ||
WlzIVertex2 | sz, | ||
WlzGreyType | gType, | ||
int | bufSz, | ||
WlzGreyP | bufP, | ||
WlzErrorNum * | dstErr | ||
) |
Creates a new or adds to an existing 3D spatial domain object using a rectangular buffer of values to a single plane of the given current object (which may be NULL or empty if the object is to be created). The returned object will share domains and values of planes other than the given plane with the current object.
cObj | Given current object. |
og | Origin of rectangular buffer. |
sz | Buffer size (note 2D). |
gType | Grey type which must be consistent with the current object (if it is valid) and the buffer of values. |
bufSz | Number of values in the buffer (ie sz.vtX * sz.vtY). |
bufP | Given buffer of values. |
dstErr | Destination error pointer, may be NULL. |
References ALG_MAX, ALG_MIN, _WlzValues::core, _WlzDomain::core, _WlzObject::domain, _WlzPlaneDomain::domains, _WlzGreyV::inv, _WlzPlaneDomain::kol1, _WlzPlaneDomain::lastkl, _WlzPlaneDomain::lastln, _WlzPlaneDomain::lastpl, _WlzPlaneDomain::line1, _WlzDomain::p, _WlzPlaneDomain::plane1, _WlzPixelV::type, _WlzObject::type, _WlzPixelV::v, _WlzVoxelValues::values, _WlzObject::values, _WlzValues::vox, _WlzPlaneDomain::voxel_size, _WlzIVertex2::vtX, _WlzIVertex3::vtX, _WlzIVertex2::vtY, _WlzIVertex3::vtY, _WlzIVertex3::vtZ, WLZ_2D_DOMAINOBJ, WLZ_3D_DOMAINOBJ, WLZ_EMPTY_OBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_GREY_TYPE, WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE, WLZ_ERR_VALUES_NULL, WLZ_GREY_ERROR, WLZ_GREY_INT, WLZ_PLANEDOMAIN_DOMAIN, WLZ_VOXELVALUETABLE_GREY, WlzAssignDomain(), WlzAssignValues(), WlzFreeObj(), WlzGetBackground(), WlzGreyTypeFromObj(), WlzMakeMain(), WlzMakePlaneDomain(), WlzMakeVoxelValueTb(), _WlzIBox3::xMax, _WlzIBox3::xMin, _WlzIBox3::yMax, _WlzIBox3::yMin, _WlzIBox3::zMax, and _WlzIBox3::zMin.
Referenced by WlzBuildObj3B(), WlzBuildObj3D(), WlzBuildObj3F(), WlzBuildObj3I(), WlzBuildObj3R(), WlzBuildObj3S(), and WlzBuildObj3U().
WlzObject* WlzConstruct3DObjFromFile | ( | int | nFileStr, |
char ** | fileStr, | ||
int | plane1, | ||
float | xSz, | ||
float | ySz, | ||
float | zSz, | ||
WlzErrorNum * | dstErr | ||
) |
Constructs a 3D domain object from 2D domain objects read from the given files. Each file is read in turn and added to the 3D object. An empty plane can be specified by setting the file string to NULL. Either all or none of the 2D objects must have values. When the 2D objects have values then the background value of the first 2D object is set to be the background value of the 3D object.
nFileStr | Number of file strings. |
fileStr | File strings. |
plane1 | The plane coordinate of the first 2D object. |
xSz | Column voxel size. |
ySz | Line voxel size. |
zSz | Plane voxel size. |
dstErr | Destination error pointer, may be NULL. |
References _WlzValues::core, _WlzDomain::core, _WlzObject::domain, _WlzPlaneDomain::domains, _WlzDomain::p, _WlzObject::type, _WlzVoxelValues::values, _WlzObject::values, _WlzValues::vox, _WlzPlaneDomain::voxel_size, WLZ_2D_DOMAINOBJ, WLZ_3D_DOMAINOBJ, WLZ_EMPTY_OBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE, WLZ_ERR_PARAM_NULL, WLZ_ERR_READ_EOF, WLZ_ERR_VALUES_NULL, WLZ_PLANEDOMAIN_DOMAIN, WLZ_VOXELVALUETABLE_GREY, WlzAssignDomain(), WlzAssignValues(), WlzFreeDomain(), WlzFreeObj(), WlzFreeValues(), WlzGetBackground(), WlzMakeMain(), WlzMakePlaneDomain(), WlzMakeVoxelValueTb(), WlzReadObj(), and WlzStandardPlaneDomain().
WlzObject* WlzConstruct3DObjFromObj | ( | int | nObjs, |
WlzObject ** | objs, | ||
int | plane1, | ||
float | xSz, | ||
float | ySz, | ||
float | zSz, | ||
WlzErrorNum * | dstErr | ||
) |
Constructs a 3D domain object from 2D domain objects. Each 2D object is assigned in turn to the 3D object no domains or values are copied. An empty can be specified by setting the 2D object to NULL. Either all or none of the 2D objects must have values. When the 2D objects have values then the background value of the first 2D object is set to be the background value of the 3D object.
nObjs | Number of objects. |
objs | The 2D objects, the first of which MUST not be NULL. |
plane1 | The plane coordinate of the first 2D object. |
xSz | Column voxel size. |
ySz | Line voxel size. |
zSz | Plane voxel size. |
dstErr | Destination error pointer, may be NULL. |
References _WlzValues::core, _WlzDomain::core, _WlzObject::domain, _WlzPlaneDomain::domains, _WlzDomain::p, _WlzObject::type, _WlzVoxelValues::values, _WlzObject::values, _WlzValues::vox, _WlzPlaneDomain::voxel_size, WLZ_2D_DOMAINOBJ, WLZ_3D_DOMAINOBJ, WLZ_EMPTY_OBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_OBJECT_TYPE, WLZ_ERR_PARAM_NULL, WLZ_ERR_VALUES_NULL, WLZ_PLANEDOMAIN_DOMAIN, WLZ_VOXELVALUETABLE_GREY, WlzAssignDomain(), WlzAssignValues(), WlzFreeDomain(), WlzFreeValues(), WlzGetBackground(), WlzMakeMain(), WlzMakePlaneDomain(), WlzMakeVoxelValueTb(), and WlzStandardPlaneDomain().
WlzObject* WlzCopyObject | ( | WlzObject * | inObj, |
WlzErrorNum * | dstErr | ||
) |
Copies a Woolz object together with it's domain, values and properties and then returns the copy.
inObj | The given object. |
dstErr | Destination error pointer, may be NULL. |
References AlcVectorFree(), _WlzIndexedValues::attach, _WlzDomain::cm2, _WlzValues::core, _WlzDomain::core, _WlzIndexedValues::dim, _WlzObject::domain, _WlzCMeshP::m2, _WlzObject::plist, _WlzIndexedValues::rank, _WlzCoreValues::type, _WlzObject::type, _WlzIndexedValues::values, _WlzObject::values, _WlzIndexedValues::vType, WLZ_2D_DOMAINOBJ, WLZ_2D_POLYGON, WLZ_3D_DOMAINOBJ, WLZ_3D_POLYGON, WLZ_3D_VIEW_STRUCT, WLZ_3D_WARP_TRANS, WLZ_AFFINE_TRANS, WLZ_BOUNDLIST, WLZ_CMESH_2D, WLZ_CMESH_2D5, WLZ_CMESH_3D, WLZ_COMPOUND_ARR_1, WLZ_COMPOUND_ARR_2, WLZ_COMPOUND_LIST_1, WLZ_COMPOUND_LIST_2, WLZ_CONTOUR, WLZ_CONV_HULL, WLZ_CONVOLVE_FLOAT, WLZ_CONVOLVE_INT, WLZ_EMPTY_OBJ, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_OBJECT_TYPE, WLZ_ERR_VALUES_TYPE, WLZ_FMATCHOBJ, WLZ_HISTOGRAM, WLZ_INDEXED_VALUES, WLZ_LUT, WLZ_PROPERTY_OBJ, WLZ_RECTANGLE, WLZ_TEXT, WLZ_TRANS_OBJ, WLZ_WARP_TRANS, WlzCMeshCopy(), WlzCopyDomain(), WlzCopyPropertyList(), WlzCopyValues(), WlzFreeDomain(), WlzFreePropertyList(), WlzFreeValues(), WlzIndexedValueSize(), WlzMakeEmpty(), WlzMakeIndexedValues(), WlzMakeMain(), and _WlzValues::x.
Referenced by Wlz2DContains(), WlzCopyValues(), WlzGreyScale(), WlzGreyShift(), WlzGreyTransfer(), WlzGreyValueMixing_s(), WlzHistogramFindPeaks(), WlzHistogramFitPeaks(), and WlzTransformProduct().
WlzDomain WlzCopyDomain | ( | WlzObjectType | inObjType, |
WlzDomain | inDom, | ||
WlzErrorNum * | dstErr | ||
) |
Copies the given objects domain.
inObjType | Type of given domain's parent object. |
inDom | Domain to be copied. |
dstErr | Destination error pointer, may be NULL. |
References _WlzDomain::b, _WlzLUTDomain::bin1, _WlzHistogramDomain::binSize, _WlzHistogramDomain::binValues, _WlzDomain::cm2, _WlzDomain::cm2d5, _WlzDomain::cm3, _WlzDomain::core, _WlzDomain::ctr, _WlzPlaneDomain::domains, _WlzBoundList::down, _WlzDomain::hist, _WlzDomain::i, _WlzPlaneDomain::kol1, _WlzLUTDomain::lastbin, _WlzPlaneDomain::lastkl, _WlzPlaneDomain::lastln, _WlzPlaneDomain::lastpl, _WlzPlaneDomain::line1, _WlzDomain::lut, _WlzHistogramDomain::maxBins, _WlzPolygonDomain::maxvertices, _WlzContour::model, _WlzHistogramDomain::nBins, _WlzBoundList::next, _WlzPolygonDomain::nvertices, _WlzHistogramDomain::origin, _WlzDomain::p, _WlzPlaneDomain::plane1, _WlzBoundList::poly, _WlzDomain::poly, _WlzDomain::t, _WlzBoundList::type, _WlzPolygonDomain::type, _WlzHistogramDomain::type, _WlzPlaneDomain::type, _WlzIntervalDomain::type, _WlzPlaneDomain::voxel_size, _WlzDomain::vs3d, _WlzPolygonDomain::vtx, WLZ_2D_DOMAINOBJ, WLZ_2D_POLYGON, WLZ_3D_DOMAINOBJ, WLZ_3D_POLYGON, WLZ_3D_VIEW_STRUCT, WLZ_3D_WARP_TRANS, WLZ_AFFINE_TRANS, WLZ_BOUNDLIST, WLZ_CMESH_2D, WLZ_CMESH_2D5, WLZ_CMESH_3D, WLZ_COMPOUND_ARR_1, WLZ_COMPOUND_ARR_2, WLZ_COMPOUND_LIST_1, WLZ_COMPOUND_LIST_2, WLZ_CONTOUR, WLZ_CONV_HULL, WLZ_CONVOLVE_FLOAT, WLZ_CONVOLVE_INT, WLZ_EMPTY_OBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE, WLZ_FMATCHOBJ, WLZ_GREY_DOUBLE, WLZ_GREY_INT, WLZ_HISTOGRAM, WLZ_HISTOGRAMDOMAIN_INT, WLZ_LUT, WLZ_PROPERTY_OBJ, WLZ_RECTANGLE, WLZ_TEXT, WLZ_TRANS_OBJ, WLZ_WARP_TRANS, WlzAffineTransformCopy(), WlzAssignDomain(), WlzAssignGMModel(), WlzCMeshCopy2D(), WlzCMeshCopy2D5(), WlzCMeshCopy3D(), WlzFreeBoundList(), WlzFreeDomain(), WlzFreePolyDmn(), WlzGMModelCopy(), WlzMake3DViewStructCopy(), WlzMakeBoundList(), WlzMakeContour(), WlzMakeHistogramDomain(), WlzMakeLUTDomain(), WlzMakePlaneDomain(), WlzMakePolygonDomain(), WlzNewIDomain(), WlzValueCopyGreyToGrey(), and _WlzBoundList::wrap.
Referenced by WlzCopyObject(), WlzDiffDomain3d(), and WlzUnion3d().
WlzValues WlzCopyValues | ( | WlzObjectType | inObjType, |
WlzValues | inVal, | ||
WlzDomain | inDom, | ||
WlzErrorNum * | dstErr | ||
) |
Copies the given values.
inObjType | Type of given values parent object. |
inVal | Values to be copied. |
inDom | Domain over which values are defined (parent object's domain). |
dstErr | Destination error pointer, may be NULL. |
References _WlzVoxelValues::bckgrnd, _WlzDomain::core, _WlzValues::core, _WlzPlaneDomain::domains, _WlzVoxelValues::lastpl, _WlzCoreValues::linkcount, _WlzValues::lut, _WlzValues::obj, _WlzDomain::p, _WlzVoxelValues::plane1, _WlzCoreDomain::type, _WlzVoxelValues::type, _WlzVoxelValues::values, _WlzObject::values, _WlzValues::vox, WLZ_2D_DOMAINOBJ, WLZ_2D_POLYGON, WLZ_3D_DOMAINOBJ, WLZ_3D_POLYGON, WLZ_3D_WARP_TRANS, WLZ_AFFINE_TRANS, WLZ_BOUNDLIST, WLZ_COMPOUND_ARR_1, WLZ_COMPOUND_ARR_2, WLZ_COMPOUND_LIST_1, WLZ_COMPOUND_LIST_2, WLZ_CONTOUR, WLZ_CONV_HULL, WLZ_CONVOLVE_FLOAT, WLZ_CONVOLVE_INT, WLZ_EMPTY_OBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE, WLZ_ERR_VALUES_NULL, WLZ_ERR_VALUES_TYPE, WLZ_FMATCHOBJ, WLZ_HISTOGRAM, WLZ_LUT, WLZ_PLANEDOMAIN_DOMAIN, WLZ_PROPERTY_OBJ, WLZ_RECTANGLE, WLZ_TEXT, WLZ_TRANS_OBJ, WLZ_VOXELVALUETABLE_GREY, WLZ_WARP_TRANS, WlzAssignObject(), WlzAssignValues(), WlzCopyObject(), WlzFreeObj(), WlzFreeValues(), WlzMakeMain(), WlzMakeVoxelValueTb(), and WlzNewGrey().
Referenced by WlzCopyObject(), WlzGreyModGradient(), WlzRsvFilterObj(), and WlzUnion3d().
WlzPropertyList* WlzCopyPropertyList | ( | WlzPropertyList * | gList, |
WlzErrorNum * | dstErr | ||
) |
Copies the given property list.
A new property list is created with a zero link count and a linked list for the properties. Each property of given list is then copied and assigned to the new list. The order of the properties in the new list is the same as that in the given list, although a property that occurs more than once in the given list will have many copies created.
gList | Given property list. |
dstErr | Destination error pointer, may be NULL. |
References ALC_ER_NONE, AlcDLPListEntryAppend(), _WlzEMAPProperty::anatomyUID, _WlzEMAPProperty::comment, _WlzProperty::core, _WlzProperty::emap, _WlzEMAPProperty::emapType, _AlcDLPItem::entry, _WlzEMAPProperty::fileName, _WlzProperty::greyV, _AlcDLPList::head, _WlzPropertyList::list, _WlzEMAPProperty::modelName, _WlzEMAPProperty::modelUID, _WlzGreyProperty::name, _WlzNameProperty::name, _WlzProperty::name, _AlcDLPItem::next, _WlzProperty::simple, _WlzEMAPProperty::stage, _WlzEMAPProperty::subStage, _WlzEMAPProperty::targetUID, _WlzEMAPProperty::targetVersion, _WlzCoreProperty::type, _WlzGreyProperty::value, _WlzEMAPProperty::version, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PROPERTY_NULL, WLZ_ERR_PROPERTY_TYPE, WLZ_PROPERTY_EMAP, WLZ_PROPERTY_GREY, WLZ_PROPERTY_NAME, WLZ_PROPERTY_SIMPLE, WlzAssignProperty(), WlzFreePropertyList(), WlzFreePropertyListEntry(), WlzMakeEMAPProperty(), WlzMakeGreyProperty(), WlzMakeNameProperty(), and WlzMakePropertyList().
Referenced by WlzCopyObject().
WlzErrorNum WlzCopyObjectGreyValues | ( | WlzObject * | dObj, |
WlzObject * | sObj | ||
) |
Copies the grey values of the source object to the destination object, overwriting the values of the destination object.
dObj | Destination object. |
sObj | Source object. |
References _WlzValues::core, _WlzDomain::core, _WlzObject::domain, _WlzObject::type, _WlzObject::values, WLZ_2D_DOMAINOBJ, WLZ_3D_DOMAINOBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_OBJECT_TYPE, and WLZ_ERR_VALUES_NULL.
WlzErrorNum WlzFreeObj | ( | WlzObject * | obj | ) |
Free space allocated to a woolz object.
obj | Object to be freed. |
References AlcFree(), _WlzObject::assoc, _WlzDomain::b, _WlzValues::c, _WlzDomain::cm2, _WlzDomain::cm2d5, _WlzDomain::cm3, _WlzValues::core, _WlzDomain::ctr, _WlzObject::domain, _WlzDomain::hist, _WlzDomain::i, _WlzPlaneDomain::linkcount, _WlzCoreValues::linkcount, _WlzIntervalDomain::linkcount, _WlzObject::linkcount, _WlzCompoundArray::n, _WlzCompoundArray::o, _WlzValues::obj, _WlzDomain::p, _WlzObject::plist, _WlzDomain::poly, _WlzValues::pts, _WlzDomain::pts, _WlzDomain::r, _WlzDomain::t, _WlzValues::t, _WlzCoreValues::type, _WlzObject::type, _WlzValues::v, _WlzObject::values, _WlzValues::vox, WLZ_2D_DOMAINOBJ, WLZ_2D_POLYGON, WLZ_3D_DOMAINOBJ, WLZ_AFFINE_TRANS, WLZ_BOUNDLIST, WLZ_CMESH_2D, WLZ_CMESH_2D5, WLZ_CMESH_3D, WLZ_COMPOUND_ARR_1, WLZ_COMPOUND_ARR_2, WLZ_CONTOUR, WLZ_CONV_HULL, WLZ_DBG, WLZ_DBG_ALLOC, WLZ_DBG_LVL_1, WLZ_DBG_LVL_FN, WLZ_EMPTY_OBJ, WLZ_ERR_MEM_FREE, WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE, WLZ_GREY_TAB_TILED, WLZ_HISTOGRAM, WLZ_LUT, WLZ_POINTS, WLZ_PROPERTY_OBJ, WLZ_RECTANGLE, WLZ_TRANS_OBJ, WlzCMeshFree2D(), WlzCMeshFree2D5(), WlzCMeshFree3D(), WlzFreeAffineTransform(), WlzFreeBoundList(), WlzFreeContour(), WlzFreeConvHull(), WlzFreeDomain(), WlzFreeIndexedValues(), WlzFreeLUTValues(), WlzFreePlaneDomain(), WlzFreePointValues(), WlzFreePolyDmn(), WlzFreePropertyList(), WlzFreeTiledValues(), WlzFreeValueTb(), WlzFreeVoxelValueTb(), WlzGreyTableIsTiled(), WlzUnlink(), and _WlzValues::x.
Referenced by DumbRegMatch(), main(), SecListToTransforms(), Wlz2DContains(), Wlz3DSectionOcc(), Wlz3DSectionSegmentObject(), Wlz3DViewTransformBitmap(), Wlz3DViewTransformObj(), WlzAffineTransformObjCb(), WlzBasisFnInvertMakeCMeshTr2D(), WlzBasisFnInvertMakeCMeshTr3D(), WlzBasisFnMakeCMeshTr2D(), WlzBasisFnMakeCMeshTr3D(), WlzBoundaryToObj(), WlzBoundTo8Bound(), WlzBoundToObj(), WlzBuildObj3(), WlzCannyDeriche(), WlzCCorS2D(), WlzClipObjToBox2D(), WlzClipObjToBox3D(), WlzCMeshComputeCurvatures(), WlzCMeshComputeCurvaturesFromNodNorm(), WlzCMeshComputeNormalsElm(), WlzCMeshComputeNormalsIxv2D5(), WlzCMeshComputeNormalsNod(), WlzCMeshCurvToImage(), WlzCMeshDistance2D(), WlzCMeshDistance3D(), WlzCMeshFlatten2D5(), WlzCMeshFromObj2D(), WlzCMeshFromObj3D(), WlzCMeshIntersectDom2D5(), WlzCMeshStrainTensor(), WlzCMeshStrainTensorAtPts(), WlzCMeshToDomObj(), WlzCMeshTransformFromObj(), WlzCMeshTransformManyObjAsIdx(), WlzCompoundArrayToScalar(), WlzConstruct3DObjFromFile(), WlzContourGrdObj2D(), WlzContourRBFBndObj3D(), WlzCopyScaleCMeshValue(), WlzCopyValues(), WlzCutObjToValBox3D(), WlzDbgObjWrite(), WlzDiffDomain(), WlzDiffDomain3d(), WlzDistanceTransform(), WlzDomainFill(), WlzDomainOccupancy(), WlzDrawDomainObj(), WlzEffReadObjAm(), WlzEffReadObjAnl(), WlzEffReadObjIPL(), WlzEffReadObjJpeg(), WlzEffReadObjObj(), WlzEffReadObjPly2(), WlzEffReadObjSlc(), WlzEffReadObjSMesh(), WlzEffReadObjStl(), WlzEffReadObjTiff(), WlzEffWriteObjBmp2D(), WlzEffWriteObjJpeg(), WlzEffWriteObjPnm2D(), WlzEffWriteObjTiff(), WlzEffWriteObjTxt(), WlzEMAPDomainTransform(), WlzEMAPFreeMapping(), WlzExplode3D(), WlzFillBlankPlanes(), WlzFree3DViewStruct(), WlzFreePatchTree(), WlzFreeTransform(), WlzGauss2(), WlzGaussNoise(), WlzGeometryTrackUpAndDown_s(), WlzGetMaskedSectionFromObject(), WlzGetPatchTree(), WlzGetPatchTreeToDepth(), WlzGetProjectionFromObject(), WlzGreyMask(), WlzGreyMeanDifference(), WlzGreyModGradient(), WlzGreyScale(), WlzGreySetRange(), WlzGreySetRangeLut(), WlzGreySetValue(), WlzGreyShift(), WlzGreyStats(), WlzGreyTemplate(), WlzGreyTransfer(), WlzHasIntersection(), WlzHistogramFindPeaks(), WlzHistogramFitPeaks(), WlzHistogramMapValues(), WlzHistogramMatchObj(), WlzHistogramObj(), WlzHyThreshold(), WlzImageArithmetic(), WlzIndexObjFromCompound(), WlzIndexObjToCompound(), WlzInit3DViewStruct(), WlzIntersect3d(), WlzIntersectN(), WlzIterateWSpFree(), WlzLabel3d(), WlzLBTDomain2DFromIDomain(), WlzLBTDomain3DFromPDomain(), WlzLBTMakeNodeIndexObj2D(), WlzLBTMakeNodeIndexObj3D(), WlzLUTGreyTransformNew(), WlzLUTTransformObj(), WlzMakeCuboidObject(), WlzMakeMarkers(), WlzMakeSphereObject(), WlzMakeStdStructElement(), WlzMarkerLattice(), WlzMeshTransformObj_3D(), WlzNewGrey(), WlzNewObjectValues(), WlzNewValuesVox(), WlzNMSuppress(), WlzNObjGreyStats(), WlzObjToBoundary(), WlzPatchTreeToObject(), WlzPointsToDomObj(), WlzPolarSample(), WlzPolygonToObj(), WlzPolyToObj(), WlzProj3DToSection(), WlzProjectObjToPlane(), WlzReadObj(), WlzRegCCorObjs(), WlzRegConCalcRCC8(), WlzRegICPObjsGrd(), WlzRegICPVerticesWSD2D(), WlzRegisterPatchTreeBF(), WlzRGBAGreyScale(), WlzRGBAGreyStats(), WlzRGBAImageArithmetic(), WlzRGBAModGradient(), WlzRGBAMultiThreshold(), WlzRGBAScalarBinaryOp(), WlzRGBChanRatio(), WlzRsvFilterObj(), WlzSampleObjPoint3D(), WlzScalarBinaryOp2(), WlzScalarFeatures2D(), WlzSepTrans(), WlzSetBackground(), WlzShadeCorrectBFDF(), WlzSobel(), WlzSplitMontageObj(), WlzSplitObj(), WlzStructDilation(), WlzStructErosion(), WlzToArray1D(), WlzTransposeObj(), WlzUnion3d(), WlzUnionN(), WlzVerifyObject(), WlzVerticesFromObj3I(), WlzVerticesFromObjBnd2I(), WlzVerticesFromObjBnd3I(), WlzVolume(), and WlzWindow().
WlzErrorNum WlzFreeIntervalDomain | ( | WlzIntervalDomain * | idom | ) |
Free an interval domain - convenience link to WlzFreeDomain()
idom | interval domain pointer to be freed. |
References _WlzDomain::i, and WlzFreeDomain().
Referenced by Wlz3DSectionSegmentObject(), WlzCbThreshold(), WlzDiffDomain(), WlzIDomainFromPItv2D(), WlzIntersectN(), WlzLBTMakeNodeIndexObj2D(), WlzLBTMakeNodeIndexObj3D(), WlzMakeCircleObject(), WlzNewIDomain(), WlzStandardPlaneDomain(), WlzStructDilation(), WlzThreshold(), and WlzUnionN().
WlzErrorNum WlzFreeHistogramDomain | ( | WlzHistogramDomain * | hist | ) |
Free a histogram domain.
hist | Histogram domain to be freed. |
References _WlzDomain::hist, and WlzFreeDomain().
Referenced by WlzBasisFnFree().
WlzErrorNum WlzFreeDomain | ( | WlzDomain | domain | ) |
Free a domain structure of any type. All domain structures must have a type and linkcount. Most also have a freeptr by which, if set, all the space allocated can be freed, however there are some special cases.
domain | Domain to be freed. |
References ALC_ER_NONE, AlcFree(), AlcFreeStackFree(), _WlzDomain::cm2, _WlzDomain::cm3, _WlzDomain::core, _WlzCoreDomain::freeptr, _WlzCoreDomain::linkcount, _WlzCoreDomain::type, _WlzDomain::vs3d, WLZ_3D_VIEW_STRUCT, WLZ_CMESH_2D, WLZ_CMESH_3D, WLZ_ERR_MEM_FREE, WLZ_ERR_NONE, WlzCMeshFree2D(), WlzCMeshFree3D(), WlzFree3DViewStruct(), and WlzUnlink().
Referenced by WlzAffineTransformObjCb(), WlzBasisFnTransformObj(), WlzCMeshTransformFromObj(), WlzCMeshTransformObj(), WlzConstruct3DObjFromFile(), WlzConstruct3DObjFromObj(), WlzCopyDomain(), WlzCopyObject(), WlzDilation(), WlzEffReadObjTiff(), WlzErosion(), WlzErosion4(), WlzFreeHistogramDomain(), WlzFreeIntervalDomain(), WlzFreeLBTDomain2D(), WlzFreeLBTDomain3D(), WlzFreeObj(), WlzFreePlaneDomain(), WlzFromArray1D(), WlzGetProjectionFromObject(), WlzMakeCuboid(), WlzMakeLUTObject(), WlzMakeQuadrilateral(), WlzMakeRect(), WlzMakeSinglePixelObject(), WlzPolyToObj(), WlzSampleObjPoint3D(), WlzShiftDomain(), WlzShiftObject(), WlzStructDilation(), and WlzStructErosion().
WlzErrorNum WlzFreePlaneDomain | ( | WlzPlaneDomain * | planedm | ) |
Free a planedomain.
planedm | Pointer to planedomain structure to be freed. |
References AlcFree(), _WlzPlaneDomain::domains, _WlzPlaneDomain::lastpl, _WlzPlaneDomain::linkcount, _WlzPlaneDomain::plane1, _WlzPlaneDomain::type, WLZ_ERR_NONE, WLZ_ERR_PLANEDOMAIN_TYPE, WLZ_PLANEDOMAIN_AFFINE, WLZ_PLANEDOMAIN_BOUNDLIST, WLZ_PLANEDOMAIN_DOMAIN, WLZ_PLANEDOMAIN_HISTOGRAM, WLZ_PLANEDOMAIN_POLYGON, WlzFreeAffineTransform(), WlzFreeBoundList(), WlzFreeDomain(), WlzFreePolyDmn(), and WlzUnlink().
Referenced by Wlz3DSectionSegmentObject(), WlzBoundaryToObj(), WlzFree3DWarpTrans(), WlzFreeObj(), WlzFromArray1D(), WlzMakeCuboidObject(), WlzMakeSphereObject(), WlzObjToBoundary(), WlzPDomainFromPItv3D(), and WlzPolygonToObj().
WlzErrorNum WlzFreeValueTb | ( | WlzRagRValues * | vdmn | ) |
Convenience routine to free a ragged rect valuetable.
vdmn | Value domain to be freed. |
References _WlzValues::v, WLZ_ERR_NONE, and WlzFreeValues().
Referenced by WlzFreeObj(), WlzIndexObjFromCompound(), WlzLBTMakeNodeIndexObj2D(), WlzLBTMakeNodeIndexObj3D(), WlzLUTTransformObj(), WlzNewValueTb(), and WlzStandardPlaneDomain().
WlzErrorNum WlzFreeValues | ( | WlzValues | values | ) |
Free a values structure, currently only WlzRagRValues and WlzRectValues DO NOT call this function with any other values structure types!
values | Values union to be freed. |
References AlcFree(), AlcFreeStackFree(), _WlzRagRValues::freeptr, _WlzRagRValues::linkcount, _WlzRagRValues::original_table, _WlzValues::v, WLZ_ERR_NONE, WLZ_ERR_VALUES_DATA, and WlzUnlink().
Referenced by WlzCMeshIntersectDom2D5(), WlzConstruct3DObjFromFile(), WlzConstruct3DObjFromObj(), WlzCopyObject(), WlzCopyValues(), WlzEffReadObjTiff(), WlzFreeValueTb(), WlzFreeVoxelValueTb(), WlzFromArray1D(), WlzMakeCuboid(), WlzMakeIntervalValues(), WlzMakeRect(), WlzShiftObject(), and WlzShiftValues().
WlzErrorNum WlzFreeVoxelValueTb | ( | WlzVoxelValues * | voxtab | ) |
Free a voxel value table.
voxtab |
References AlcFree(), AlcFreeStackFree(), _WlzVoxelValues::freeptr, _WlzVoxelValues::lastpl, _WlzVoxelValues::linkcount, _WlzVoxelValues::original_table, _WlzVoxelValues::plane1, _WlzVoxelValues::type, _WlzVoxelValues::values, _WlzValues::vox, WLZ_ERR_NONE, WLZ_ERR_VOXELVALUES_TYPE, WLZ_VOXELVALUETABLE_GREY, WlzFreeValues(), and WlzUnlink().
Referenced by WlzFreeObj(), WlzFromArray1D(), WlzIndexObjFromCompound(), and WlzLUTTransformObj().
WlzErrorNum WlzFreeConvHull | ( | WlzConvHullValues * | c | ) |
Free convex hull values.
c | Pointer to convex hull values to be freed. |
References AlcFree(), _WlzConvHullValues::linkcount, WLZ_ERR_NONE, and WlzUnlink().
Referenced by WlzFreeObj().
WlzErrorNum WlzFreePolyDmn | ( | WlzPolygonDomain * | poly | ) |
Free a polygon domain.
poly | Polygon domain to be freed. |
References AlcFree(), _WlzPolygonDomain::linkcount, WLZ_ERR_NONE, and WlzUnlink().
Referenced by WlzBasisFnTransformPoly2(), WlzBoundaryToPolyObjArray(), WlzConvertPolyType(), WlzCopyDomain(), WlzFreeBoundList(), WlzFreeObj(), WlzFreePlaneDomain(), WlzPolySmooth(), and WlzShiftDomain().
WlzErrorNum WlzFreeBoundList | ( | WlzBoundList * | b | ) |
Recursively free a boundary list.
b | Boundary list structure to be freed (note this will call WlzFreeBoundList recursively). |
References AlcFree(), _WlzBoundList::down, _WlzBoundList::linkcount, _WlzBoundList::next, _WlzBoundList::poly, WLZ_ERR_NONE, WlzFreePolyDmn(), and WlzUnlink().
Referenced by WlzBasisFnTransformBoundList(), WlzBoundDecimate(), WlzBoundSmooth(), WlzConvertBoundType(), WlzCopyDomain(), WlzDomainFill(), WlzFreeObj(), WlzFreePlaneDomain(), WlzShiftDomain(), and WlzTransposeObj().
WlzErrorNum WlzFree3DWarpTrans | ( | Wlz3DWarpTrans * | obj | ) |
Free a 3D warp transform.
obj | 3D warp transform object to be freed. |
References AlcFree(), _Wlz3DWarpTrans::intptdoms, _Wlz3DWarpTrans::pdom, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, and WlzFreePlaneDomain().
WlzErrorNum WlzFreeContour | ( | WlzContour * | ctr | ) |
Free's a WlzContour data structure.
ctr | Contour to be freed. |
References AlcFree(), _WlzGMModel::linkcount, _WlzContour::linkcount, _WlzContour::model, _WlzContour::type, WLZ_CONTOUR, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_NONE, WlzGMModelFree(), and WlzUnlink().
Referenced by WlzAffineTransformContour(), WlzBasisFnTransformContour(), WlzCMeshToContour(), WlzContourGrdObj2D(), WlzEffReadObjObj(), WlzEffReadObjPly2(), WlzEffReadObjSMesh(), WlzEffReadObjStl(), WlzFreeObj(), WlzGetSectionFromObject(), and WlzShiftDomain().
WlzErrorNum WlzFreeIndexedValues | ( | WlzIndexedValues * | ixv | ) |
Frees an indexed valuetable.
ixv | Given indexed valuetable. |
References AlcFree(), AlcVectorFree(), _WlzIndexedValues::dim, _WlzIndexedValues::rank, _WlzIndexedValues::type, _WlzIndexedValues::values, WLZ_ERR_NONE, WLZ_ERR_VALUES_NULL, WLZ_ERR_VALUES_TYPE, and WLZ_INDEXED_VALUES.
Referenced by WlzBasisFnMakeCMeshTr2D(), WlzBasisFnMakeCMeshTr3D(), WlzCMeshComputeCurvaturesFromNodNorm(), WlzCMeshComputeNormalsElm(), WlzCMeshComputeNormalsIxv2D5(), WlzCMeshComputeNormalsNod(), WlzFreeObj(), and WlzMakeIndexedValues().
WlzErrorNum WlzFreePointValues | ( | WlzPointValues * | pv | ) |
Frees a points valuetable.
pv | Given points valuetable. |
References AlcFree(), _WlzPointValues::dim, _WlzPointValues::rank, _WlzPointValues::type, _WlzGreyP::v, _WlzPointValues::values, WLZ_ERR_NONE, WLZ_ERR_VALUES_NULL, WLZ_ERR_VALUES_TYPE, and WLZ_POINT_VALUES.
Referenced by WlzFreeObj(), and WlzMakePointValues().
WlzLBTDomain2D* WlzMakeLBTDomain2D | ( | WlzObjectType | type, |
int | l1, | ||
int | ll, | ||
int | k1, | ||
int | kl, | ||
WlzErrorNum * | dstErr | ||
) |
Creates a linear binary tree domain without creating any nodes, leaving the nodes pointer NULL. Only the type, bounding box and depth are set. The depth is set such that
where ,
,
and
are the first column, last column, first line and last line respectively.
type | Type of domain, which must be WLZ_LBTDOMAIN_2D. |
l1 | First line. |
ll | last line. |
k1 | First column. |
kl | Last column. |
dstErr | Destination error pointer, may be NULL. |
References AlcCalloc(), AlgBitNextPowerOfTwo(), _WlzLBTDomain2D::depth, _WlzLBTDomain2D::kol1, _WlzLBTDomain2D::lastkl, _WlzLBTDomain2D::lastln, _WlzLBTDomain2D::line1, _WlzLBTDomain2D::type, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_LBTDOMAIN_2D, and WLZ_MAX.
Referenced by WlzLBTDomain2DFromIDomain().
WlzLBTDomain3D* WlzMakeLBTDomain3D | ( | WlzObjectType | type, |
int | p1, | ||
int | pl, | ||
int | l1, | ||
int | ll, | ||
int | k1, | ||
int | kl, | ||
WlzErrorNum * | dstErr | ||
) |
Creates a linear binary tree domain without creating any nodes, leaving the nodes pointer NULL. Only the type, bounding box and depth are set. The depth is set such that
where ,
,
and
are the first column, last column, first line and last line respectively.
type | Type of domain, which must be WLZ_LBTDOMAIN_3D. |
p1 | First plane. |
pl | Last plane. |
l1 | First line. |
ll | Last line. |
k1 | First column. |
kl | Last column. |
dstErr | Destination error pointer, may be NULL. |
References AlcCalloc(), AlgBitNextPowerOfTwo(), _WlzLBTDomain3D::depth, _WlzLBTDomain3D::kol1, _WlzLBTDomain3D::lastkl, _WlzLBTDomain3D::lastln, _WlzLBTDomain3D::lastpl, _WlzLBTDomain3D::line1, _WlzLBTDomain3D::plane1, _WlzLBTDomain3D::type, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_LBTDOMAIN_3D, and WLZ_MAX.
Referenced by WlzLBTDomain3DFromPDomain().
WlzErrorNum WlzFreeLBTDomain3D | ( | WlzLBTDomain3D * | lDom | ) |
Frees the given 3D linear binary tree domain.
lDom | Given LBT domain. |
References _WlzDomain::l3, WLZ_ERR_NONE, and WlzFreeDomain().
Referenced by WlzCMeshFromObj3D().
WlzErrorNum WlzFreeLBTDomain2D | ( | WlzLBTDomain2D * | lDom | ) |
Frees the given 2D linear binary tree domain.
lDom | Given LBT domain. |
References _WlzDomain::l2, WLZ_ERR_NONE, and WlzFreeDomain().
Referenced by WlzCMeshFromObj2D().
WlzCompoundArray* WlzMakeCompoundArray | ( | WlzObjectType | type, |
int | mode, | ||
int | n, | ||
WlzObject ** | ol, | ||
WlzObjectType | otype, | ||
WlzErrorNum * | dstErr | ||
) |
Makes a new Woolz compound array object.
type | Type of compound array which should be either WLZ_COMPOUND_ARR_1 or WLZ_COMPOUND_ARR_2. |
mode | Action to be performed, which may have the values:
|
n | Number of objects. |
ol | Input object list. |
otype | Woolz object type if objects are type checked. |
dstErr | Destination pointer for error number, may be NULL. |
References AlcCalloc(), _WlzCompoundArray::linkcount, _WlzCompoundArray::n, _WlzCompoundArray::o, _WlzCompoundArray::otype, _WlzCompoundArray::type, WLZ_COMPOUND_ARR_1, WLZ_COMPOUND_ARR_2, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE, WLZ_ERR_PARAM_DATA, and WlzAssignObject().
Referenced by WlzEffReadObjAnl(), WlzEffReadObjTiff(), WlzGreyModGradient(), WlzIndexObjToCompound(), WlzRGBAGreyScale(), WlzRGBAImageArithmetic(), WlzRGBAToCompound(), WlzSepTrans(), and WlzShadeCorrectBFDF().
WlzIntervalValues* WlzMakeIntervalValues | ( | WlzObjectType | type, |
WlzObject * | obj, | ||
WlzPixelV | bckgrnd, | ||
WlzErrorNum * | dstErr | ||
) |
Make in interval values table to match the input object The table will have linkcount set to zero.
type | Required table type. |
obj | Input object. |
bckgrnd | Values table background value. |
dstErr | Error return. |
References AlcCalloc(), AlcFreeStackPush(), _WlzIntervalValues::bckgrnd, _WlzIntervalWSpace::colrmn, _WlzValues::core, _WlzDomain::core, _WlzGreyP::dbp, _WlzObject::domain, _WlzGreyP::flp, _WlzIntervalValues::freeptr, _WlzDomain::i, _WlzValues::i, _WlzGreyP::inp, _WlzIntervalDomain::kol1, _WlzIntervalValues::kol1, _WlzIntervalDomain::lastkl, _WlzIntervalValues::lastln, _WlzIntervalDomain::lastln, _WlzIntervalWSpace::lftpos, _WlzIntervalValues::line1, _WlzIntervalDomain::line1, _WlzIntervalValues::linkcount, _WlzValueIntervalLine::nintvs, _WlzIntervalWSpace::nwlpos, _WlzIntervalValues::original_table, _WlzGreyP::rgbp, _WlzIntervalWSpace::rgtpos, _WlzGreyP::shp, _WlzIntervalValues::type, _WlzObject::type, _WlzGreyP::ubp, _WlzValueLine::values, _WlzIntervalValues::vil, _WlzValueLine::vkol1, _WlzValueLine::vlastkl, _WlzValueIntervalLine::vtbint, _WlzIntervalValues::width, WLZ_2D_DOMAINOBJ, WLZ_EMPTY_OBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_EOO, WLZ_ERR_GREY_TYPE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_GREY_DOUBLE, WLZ_GREY_FLOAT, WLZ_GREY_INT, WLZ_GREY_RGBA, WLZ_GREY_SHORT, WLZ_GREY_UBYTE, WLZ_RASTERDIR_ILIC, WlzArea(), WlzFreeValues(), WlzGreyTableTypeToGreyType(), WlzGreyTableTypeToTableType(), WlzInitRasterScan(), WlzIntervalCount(), and WlzNextInterval().
Referenced by WlzNewValueTb().
WlzIntervalDomain* WlzMakeIntervalDomain | ( | WlzObjectType | type, |
int | l1, | ||
int | ll, | ||
int | k1, | ||
int | kl, | ||
WlzErrorNum * | dstErr | ||
) |
Allocate space for an interval domain structure. If the type is WLZ_INTERVALDOMAIN_INTVL then allocate space for the interval line array and set the pointer.
type | Required interval domain type. |
l1 | First line |
ll | Last line. |
k1 | First column |
kl | Last column |
dstErr | error return values: WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_ERR_MEM_ALLOC |
References AlcCalloc(), AlcMalloc(), _WlzIntervalDomain::freeptr, _WlzIntervalDomain::intvlines, _WlzIntervalDomain::kol1, _WlzIntervalDomain::lastkl, _WlzIntervalDomain::lastln, _WlzIntervalDomain::line1, _WlzIntervalDomain::linkcount, _WlzIntervalDomain::type, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_INTERVALDOMAIN_INTVL, and WLZ_INTERVALDOMAIN_RECT.
Referenced by Wlz3DSectionSegmentObject(), Wlz3DViewTransformObj(), WlzCbThreshold(), WlzClipObjToBox2D(), WlzDiffDomain(), WlzDilation(), WlzErosion(), WlzErosion4(), WlzFillBlankPlanes(), WlzFromArray1D(), WlzGetProjectionFromObject(), WlzIDomainFromPItv2D(), WlzIntersectN(), WlzLabel(), WlzMakeCircleObject(), WlzMakeCuboid(), WlzMakeQuadrilateral(), WlzMakeRect(), WlzMakeRectangleObject(), WlzMeshTransformObj_3D(), WlzNewIDomain(), WlzPDomainFromPItv3D(), WlzPolyToObj(), WlzSampleObjPoint2D(), WlzStructDilation(), WlzStructErosion(), WlzThreshold(), and WlzUnionN().
WlzPlaneDomain* WlzMakePlaneDomain | ( | WlzObjectType | type, |
int | p1, | ||
int | pl, | ||
int | l1, | ||
int | ll, | ||
int | k1, | ||
int | kl, | ||
WlzErrorNum * | dstErr | ||
) |
Allocate space for a plane domain and the domain pointers.
type | PlaneDomain type. |
p1 | First plane |
pl | Last plane. |
l1 | First line. |
ll | Last line. |
k1 | First column. |
kl | Last column. |
dstErr | error return values: WLZ_ERR_NONE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_PARAM_DATA. |
References AlcCalloc(), AlcFree(), AlcMalloc(), _WlzPlaneDomain::domains, _WlzPlaneDomain::freeptr, _WlzPlaneDomain::kol1, _WlzPlaneDomain::lastkl, _WlzPlaneDomain::lastln, _WlzPlaneDomain::lastpl, _WlzPlaneDomain::line1, _WlzPlaneDomain::linkcount, _WlzPlaneDomain::plane1, _WlzPlaneDomain::type, _WlzPlaneDomain::voxel_size, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_PLANEDOMAIN_AFFINE, WLZ_PLANEDOMAIN_BOUNDLIST, WLZ_PLANEDOMAIN_DOMAIN, WLZ_PLANEDOMAIN_HISTOGRAM, WLZ_PLANEDOMAIN_POLYGON, and WLZ_PLANEDOMAIN_WARP.
Referenced by SecListToTransforms(), Wlz3DSectionSegmentObject(), Wlz3DViewTransformObj(), WlzBoundaryToObj(), WlzBuildObj3(), WlzClipObjToBox3D(), WlzConstruct3DObjFromFile(), WlzConstruct3DObjFromObj(), WlzCopyDomain(), WlzCutObjToValBox3D(), WlzDiffDomain3d(), WlzDomainFill(), WlzEffReadObjTiff(), WlzFromArray1D(), WlzIntersect3d(), WlzMakeCuboid(), WlzMakeCuboidObject(), WlzMakeSphereObject(), WlzMeshTransformObj_3D(), WlzObjToBoundary(), WlzPDomainFromPItv3D(), WlzPolygonToObj(), WlzSampleObjPoint3D(), WlzShiftDomain(), and WlzUnion3d().
WlzObject* WlzNewObjectValues | ( | WlzObject * | sObj, |
WlzObjectType | tType, | ||
WlzPixelV | bgdV, | ||
int | setFG, | ||
WlzPixelV | fgdV, | ||
WlzErrorNum * | dstErr | ||
) |
Creaes a new object with the domain of the given object and a new values.
This function conveniently wraps up WlzNewValueTb(), WlzNewValuesVox(), WlzMakeMain() and WlzGreySetValue().
sObj | Given object. |
tType | Grey table type. |
bgdV | Background value. |
setFG | Set forground value if non zero. |
fgdV | Foreground value to be set. |
dstErr | Destinaition error pointer, may be NULL. |
References _WlzDomain::core, _WlzObject::domain, _WlzObject::type, _WlzValues::v, _WlzValues::vox, WLZ_2D_DOMAINOBJ, WLZ_3D_DOMAINOBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_OBJECT_TYPE, WlzFreeObj(), WlzGreySetValue(), WlzMakeMain(), WlzNewValuesVox(), and WlzNewValueTb().
Referenced by WlzDomainOccupancy(), and WlzNObjGreyStats().
WlzVoxelValues* WlzNewValuesVox | ( | WlzObject * | sObj, |
WlzObjectType | gTType, | ||
WlzPixelV | bgdV, | ||
WlzErrorNum * | dstErr | ||
) |
From the domain of the given source object a new voxel value table is created with the given grey type and background value.
sObj | Source object. |
gTType | Given grey table type for the plane value tables. |
bgdV | Background value. |
dstErr | Destination error pointer, may be NULL. |
References _WlzDomain::core, _WlzValues::core, _WlzObject::domain, _WlzPlaneDomain::domains, _WlzPlaneDomain::lastpl, _WlzDomain::p, _WlzPlaneDomain::plane1, _WlzCoreDomain::type, _WlzObject::type, _WlzValues::v, _WlzVoxelValues::values, WLZ_2D_DOMAINOBJ, WLZ_3D_DOMAINOBJ, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_OBJECT_TYPE, WLZ_PLANEDOMAIN_DOMAIN, WLZ_VOXELVALUETABLE_GREY, WlzAssignValues(), WlzFreeObj(), WlzMakeMain(), WlzMakeVoxelValueTb(), and WlzNewValueTb().
Referenced by WlzContourRBFBndObj3D(), WlzDistanceTransform(), WlzIndexObjFromCompound(), WlzLBTMakeNodeIndexObj3D(), WlzLUTTransformObj(), and WlzNewObjectValues().
WlzObject* WlzMakeMain | ( | WlzObjectType | type, |
WlzDomain | domain, | ||
WlzValues | values, | ||
WlzPropertyList * | plist, | ||
WlzObject * | assoc, | ||
WlzErrorNum * | dstErr | ||
) |
Make a top-level woolz object assigning domain, values and other pointers as required . The type is checked. The domain is not checked for NULL although this should only apply to the WLZ_EMPTY_OBJ.
type | Object type. |
domain | Domain to be assigned using WlzAssignDomain() |
values | Values to be attached using WlzAssignValues() |
plist | Property list attached using WlzAssignPropertyList() |
assoc | Associated Object attached using WlzAssignObject(). |
dstErr | error return values: WLZ_ERR_NONE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_PARAM_DATA snd error values from WlzAssign procedures. |
References AlcFree(), AlcMalloc(), _WlzObject::assoc, _WlzValues::core, _WlzDomain::core, _WlzObject::domain, _WlzCoreValues::linkcount, _WlzCoreDomain::linkcount, _WlzObject::linkcount, _WlzObject::plist, _WlzObject::type, _WlzObject::values, WLZ_2D_DOMAINOBJ, WLZ_2D_POLYGON, WLZ_3D_DOMAINOBJ, WLZ_3D_POLYGON, WLZ_3D_VIEW_STRUCT, WLZ_3D_WARP_TRANS, WLZ_AFFINE_TRANS, WLZ_BOUNDLIST, WLZ_CMESH_2D, WLZ_CMESH_2D5, WLZ_CMESH_3D, WLZ_CMESH_TRANS, WLZ_CONTOUR, WLZ_CONV_HULL, WLZ_DBG, WLZ_DBG_ALLOC, WLZ_DBG_LVL_1, WLZ_EMPTY_OBJ, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_HISTOGRAM, WLZ_LUT, WLZ_MESH_TRANS, WLZ_POINTS, WLZ_PROPERTY_OBJ, WLZ_RECTANGLE, WLZ_TRANS_OBJ, WLZ_WARP_TRANS, WlzAssignDomain(), WlzAssignObject(), WlzAssignPropertyList(), and WlzAssignValues().
Referenced by SecListToTransforms(), Wlz3DSectionSegmentObject(), Wlz3DViewTransformObj(), WlzAffineTransformObjCb(), WlzBasisFnInvertMakeCMeshTr2D(), WlzBasisFnInvertMakeCMeshTr3D(), WlzBasisFnMakeCMeshTr2D(), WlzBasisFnMakeCMeshTr3D(), WlzBasisFnTransformObj(), WlzBoundaryToObj(), WlzBoundaryToPolyObjArray(), WlzBoundTo8Bound(), WlzBuildObj3(), WlzCannyDeriche(), WlzCbThreshold(), WlzClipObjToBox2D(), WlzClipObjToBox3D(), WlzCMeshCompSurfMapIdx(), WlzCMeshComputeCurvaturesFromNodNorm(), WlzCMeshComputeNormalsElm(), WlzCMeshComputeNormalsIxv2D5(), WlzCMeshComputeNormalsNod(), WlzCMeshCurvToImage(), WlzCMeshDistance2D(), WlzCMeshDistance3D(), WlzCMeshExtract2D(), WlzCMeshFlatten2D5(), WlzCMeshIntersect(), WlzCMeshIntersectDom2D5(), WlzCMeshMeshMeshProduct(), WlzCMeshToContour(), WlzCMeshTransformFromObj(), WlzCMeshTransformObj(), WlzConstruct3DObjFromFile(), WlzConstruct3DObjFromObj(), WlzContourRBFBndObj3D(), WlzConvertPix(), WlzConvertVtx(), WlzCopyObject(), WlzCopyScaleCMeshValue(), WlzCopyValues(), WlzCutObjToValBox3D(), WlzDiffDomain(), WlzDiffDomain3d(), WlzDilation(), WlzDistanceTransform(), WlzDomainFill(), WlzEffReadObjEMT(), WlzEffReadObjMesh(), WlzEffReadObjNodeEle(), WlzEffReadObjObj(), WlzEffReadObjPly2(), WlzEffReadObjSMesh(), WlzEffReadObjStl(), WlzEffReadObjTiff(), WlzEffReadObjVMesh(), WlzEffWriteObjTiff(), WlzErosion(), WlzErosion4(), WlzExplode3D(), WlzFillBlankPlanes(), WlzFromArray1D(), WlzGaussNoise(), WlzGetMaskedSectionFromObject(), WlzGetProjectionFromObject(), WlzGetSectionFromObject(), WlzGreyMask(), WlzGreyMeanDifference(), WlzGreyModGradient(), WlzGreySetRange(), WlzGreySetRangeLut(), WlzGreySetValue(), WlzGreyStats(), WlzGreyTemplate(), WlzGreyTransfer(), WlzHasIntersection(), WlzHistogramMapValues(), WlzHistogramMatchObj(), WlzHistogramObj(), WlzHyThreshold(), WlzImageArithmetic(), WlzIndexObjFromCompound(), WlzIndexObjToCompound(), WlzIndexToRGBA(), WlzIntersect3d(), WlzIntersectN(), WlzIntRescaleObj(), WlzLabel(), WlzLabel3d(), WlzLBTDomain2DFromIDomain(), WlzLBTDomain3DFromPDomain(), WlzLBTMakeNodeIndexObj2D(), WlzLBTMakeNodeIndexObj3D(), WlzLUTTransformObj(), WlzMakeCircleObject(), WlzMakeCuboid(), WlzMakeCuboidObject(), WlzMakeEmpty(), WlzMakeHistogram(), WlzMakeLUTObject(), WlzMakeQuadrilateral(), WlzMakeRect(), WlzMakeRectangleObject(), WlzMakeSinglePixelObject(), WlzMakeSphereObject(), WlzMarkerLattice(), WlzMeshTransformObj_3D(), WlzNewGrey(), WlzNewObjectValues(), WlzNewValuesVox(), WlzNMSuppress(), WlzObjToBoundary(), WlzObjToConvexPolygon(), WlzPatchTreeToObject(), WlzPolygonToObj(), WlzPolyTo8Polygon(), WlzPolyToObj(), WlzProjectObjToPlane(), WlzReadObj(), WlzRegICPObjsGrd(), WlzRGBAModGradient(), WlzRGBAMultiThreshold(), WlzRGBAToChannel(), WlzRGBAToCompound(), WlzRGBAToModulus(), WlzRsvFilterObj(), WlzSampleObjPoint2D(), WlzSampleObjPoint3D(), WlzScalarBinaryOp2(), WlzSepTrans(), WlzSetBackground(), WlzShadeCorrectBFDF(), WlzShiftObject(), WlzStructDilation(), WlzStructErosion(), WlzThreshold(), WlzToArray1D(), WlzTransposeObj(), WlzUnion3d(), WlzUnionN(), WlzVerifyObject(), WlzVerticesFromObj3I(), and WlzVolume().
WlzRagRValues* WlzMakeValueTb | ( | WlzObjectType | type, |
int | l1, | ||
int | ll, | ||
int | k1, | ||
WlzPixelV | backgrnd, | ||
WlzObject * | orig, | ||
WlzErrorNum * | dstErr | ||
) |
Allocate and initialise space for a ragged-rectangle value table only.
type | Values structure type. Must be a correct type as given by WlzGreyTableType() with table_type = WLZ_GREY_TAB_RAGR. |
l1 | First line. |
ll | Last line. |
k1 | First column. |
backgrnd | Background pixel value |
orig | Original object holding the grey-value data. |
dstErr | Error return values: WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_ERR_LINE_DATA, WLZ_ERR_MEM_ALLOC |
References AlcCalloc(), AlcFree(), _WlzRagRValues::bckgrnd, _WlzValues::core, _WlzRagRValues::freeptr, _WlzRagRValues::kol1, _WlzRagRValues::lastln, _WlzRagRValues::line1, _WlzRagRValues::linkcount, _WlzRagRValues::original_table, _WlzRagRValues::type, _WlzRagRValues::vtblines, _WlzRagRValues::width, WLZ_ERR_LINE_DATA, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_GREY_DOUBLE, WLZ_GREY_FLOAT, WLZ_GREY_INT, WLZ_GREY_RGBA, WLZ_GREY_SHORT, WLZ_GREY_TAB_INTL, WLZ_GREY_TAB_RAGR, WLZ_GREY_TAB_RECT, WLZ_GREY_UBYTE, WlzGreyTableTypeToGreyType(), WlzGreyTableTypeToTableType(), and WlzValueConvertPixel().
Referenced by WlzNewValueTb(), and WlzShiftValues().
WlzVoxelValues* WlzMakeVoxelValueTb | ( | WlzObjectType | type, |
int | p1, | ||
int | pl, | ||
WlzPixelV | backgrnd, | ||
WlzObject * | orig, | ||
WlzErrorNum * | dstErr | ||
) |
Allocate space for a voxel table.
type | Voxel table type. |
p1 | Fist plane. |
pl | Last plane. |
backgrnd | Background pixel value. |
orig | Original object holding the voxel table |
dstErr | Error return values: WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_ERR_MEM_ALLOC |
References AlcCalloc(), _WlzVoxelValues::bckgrnd, _WlzValues::core, _WlzVoxelValues::freeptr, _WlzVoxelValues::lastpl, _WlzVoxelValues::linkcount, _WlzVoxelValues::original_table, _WlzVoxelValues::plane1, _WlzVoxelValues::type, _WlzVoxelValues::values, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_ERR_PLANE_DATA, and WLZ_VOXELVALUETABLE_GREY.
Referenced by Wlz3DViewTransformObj(), WlzBuildObj3(), WlzClipObjToBox3D(), WlzConstruct3DObjFromFile(), WlzConstruct3DObjFromObj(), WlzCopyValues(), WlzCutObjToValBox3D(), WlzDiffDomain3d(), WlzDistanceTransform(), WlzEffReadObjTiff(), WlzFromArray1D(), WlzIntersect3d(), WlzMakeCuboid(), WlzMeshTransformObj_3D(), WlzNewValuesVox(), WlzSampleObjPoint3D(), WlzScalarBinaryOp2(), WlzShiftValues(), and WlzUnion3d().
WlzRectValues* WlzMakeRectValueTb | ( | WlzObjectType | type, |
int | line1, | ||
int | lastln, | ||
int | kol1, | ||
int | width, | ||
WlzPixelV | backgrnd, | ||
int * | values, | ||
WlzErrorNum * | dstErr | ||
) |
Make rectangular value table attaching values if set. Note the values pointer is just copied and will not be freed when the object is freed unless the freeptr is set using AlcFreePointerPush().
type | Value table type. Must be a valid table type e.g. as returned by WlzGreyTableType() with table_type = WLZ_GREY_TAB_RECT. |
line1 | First line |
lastln | Last line. |
kol1 | First column |
width | Width |
backgrnd | Background pixel value. |
values | Pointer to array of pixel values. |
dstErr | Error return values: WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_ERR_MEM_ALLOC |
References AlcFree(), AlcMalloc(), _WlzRectValues::bckgrnd, _WlzValues::core, _WlzRectValues::freeptr, _WlzGreyP::inp, _WlzRectValues::kol1, _WlzRectValues::lastln, _WlzRectValues::line1, _WlzRectValues::linkcount, _WlzRectValues::original_table, _WlzRectValues::type, _WlzRectValues::values, _WlzRectValues::width, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_GREY_DOUBLE, WLZ_GREY_FLOAT, WLZ_GREY_INT, WLZ_GREY_RGBA, WLZ_GREY_SHORT, WLZ_GREY_TAB_INTL, WLZ_GREY_TAB_RAGR, WLZ_GREY_TAB_RECT, WLZ_GREY_UBYTE, WlzGreyTableTypeToGreyType(), WlzGreyTableTypeToTableType(), and WlzValueConvertPixel().
Referenced by WlzFromArray1D(), WlzMakeCuboid(), WlzMakeRect(), WlzNewValueTb(), and WlzShiftValues().
WlzErrorNum WlzMakeInterval | ( | int | line, |
WlzIntervalDomain * | idom, | ||
int | nints, | ||
WlzInterval * | intptr | ||
) |
Attach and interval pointer to a an interval domain in the appropriate place and set the number of intervals on the line. Note this procedure makes no checks on the arguments because it is often used in deeply nested loops.
line | Line on which the interval array is to be attached. |
idom | Pointer to the interval domain to hold the intervals. |
nints | Number of intervals in the array. |
intptr | Pointer to the set of intervals. |
References _WlzIntervalDomain::intvlines, _WlzIntervalLine::intvs, _WlzIntervalDomain::line1, _WlzIntervalLine::nintvs, and WLZ_ERR_NONE.
Referenced by Wlz3DSectionSegmentObject(), Wlz3DViewTransformObj(), WlzCbThreshold(), WlzClipObjToBox2D(), WlzDiffDomain(), WlzDilation(), WlzErosion(), WlzErosion4(), WlzIntersectN(), WlzLabel(), WlzMakeCircleObject(), WlzMakeQuadrilateral(), WlzNewIDomain(), WlzPolyToObj(), WlzSampleObjPoint2D(), WlzSkStrip4(), WlzStructDilation(), WlzStructErosion(), WlzThreshold(), and WlzUnionN().
WlzErrorNum WlzMakeValueLine | ( | WlzRagRValues * | vtb, |
int | line, | ||
int | k1, | ||
int | kl, | ||
int * | greyptr | ||
) |
Attach the grey values for a valueline within a ragged- rectangle value table. Not this procedure does not check the input arguments because it is often at the core of nested loops.
vtb | Pointer to a ragged rectangle value table. |
line | Line for the values to be set. |
k1 | First column of grey interval. |
kl | Last column of grey interval. |
greyptr | Grey values pointer cast type int *. |
References _WlzGreyP::inp, _WlzRagRValues::kol1, _WlzRagRValues::line1, _WlzValueLine::values, _WlzValueLine::vkol1, _WlzValueLine::vlastkl, _WlzRagRValues::vtblines, and WLZ_ERR_NONE.
Referenced by WlzNewValueTb().
WlzPointValues* WlzNewPointValues | ( | WlzObject * | obj, |
int | rank, | ||
int * | dim, | ||
WlzGreyType | vType, | ||
WlzErrorNum * | dstErr | ||
) |
Makes a new point value table which covers the points of the given object.
obj | Given object, the domain of which is used to determine the value allocation. This must have type WLZ_POINTS. |
rank | The rank of the individual values. |
dim | The dimensions of individual indexed values. |
vType | The type of the data in the individual values. |
dstErr | Destination error pointer, may be NULL. |
References _WlzDomain::core, _WlzObject::domain, _WlzPoints::nPoints, _WlzDomain::pts, _WlzObject::type, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_OBJECT_TYPE, WLZ_POINTS, and WlzMakePointValues().
WlzPointValues* WlzMakePointValues | ( | size_t | nP, |
int | rank, | ||
int * | dim, | ||
WlzGreyType | vType, | ||
WlzErrorNum * | dstErr | ||
) |
Makes a new point value table with space for the requested number of points.
nP,: | Number of points to allocate space for. |
rank | The rank of the individual values. |
dim | The dimensions of individual indexed values. |
vType | The type of the data in the individual values. |
dstErr | Destination error pointer, may be NULL. |
References AlcCalloc(), AlcMalloc(), _WlzPointValues::dim, _WlzPointValues::maxPoints, _WlzPointValues::pSz, _WlzPointValues::rank, _WlzPointValues::type, _WlzGreyP::v, _WlzPointValues::values, _WlzPointValues::vType, WLZ_ERR_GREY_TYPE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_GREY_BIT, WLZ_POINT_VALUES, WlzFreePointValues(), and WlzGreySize().
Referenced by WlzNewPointValues().
WlzPolygonDomain* WlzMakePolygonDomain | ( | WlzObjectType | type, |
int | n, | ||
WlzIVertex2 * | vertices, | ||
int | maxv, | ||
int | copy, | ||
WlzErrorNum * | dstErr | ||
) |
Make a polygon domain, allocating space and copying as required:
type | one of WLZ_POLYGON_INT, WLZ_POLYGON_FLOAT, WLZ_POLYGON_DOUBLE |
n | number of vertices if vertices!=NULL. |
vertices | vertices to be set, see type for value options. |
maxv | size of array if vertices!=NULL else number of vertices for which space it to be allocated. |
copy | copy flag see description for values. |
dstErr | Error return, values: WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_ERR_MEM_ALLOC. |
References AlcCalloc(), _WlzPolygonDomain::linkcount, _WlzPolygonDomain::maxvertices, _WlzPolygonDomain::nvertices, _WlzPolygonDomain::type, _WlzPolygonDomain::vtx, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_POLYGON_DOUBLE, WLZ_POLYGON_FLOAT, and WLZ_POLYGON_INT.
Referenced by WlzBasisFnTransformPoly2(), WlzConvertPolyType(), WlzCopyDomain(), WlzObjToBoundary(), WlzObjToConvexPolygon(), WlzPolyDecimate(), WlzPolyEquispace(), WlzPolyReverse(), WlzPolyTo8Polygon(), and WlzShiftDomain().
WlzBoundList* WlzMakeBoundList | ( | WlzObjectType | type, |
int | wrap, | ||
WlzPolygonDomain * | poly, | ||
WlzErrorNum * | dstErr | ||
) |
Allocate space and initialise a boundlist structure.
type | BoundList type, one of: WLZ_BOUNDLIST_PIECE or WLZ_BOUNDLIST_HOLE. |
wrap | number of vertices by which the polygon is "wrapped" ie number of vertices overlapping at the beginning and end. |
poly | polygon for this boundary structure |
dstErr | Error return, values: WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_ERR_MEM_ALLOC. |
References AlcFree(), AlcMalloc(), _WlzBoundList::down, _WlzBoundList::freeptr, _WlzBoundList::linkcount, _WlzBoundList::next, _WlzBoundList::poly, _WlzBoundList::type, _WlzBoundList::up, WLZ_BOUNDLIST_HOLE, WLZ_BOUNDLIST_PIECE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WlzAssignPolygonDomain(), and _WlzBoundList::wrap.
Referenced by WlzBoundDecimate(), WlzBoundSmooth(), WlzBoundTo8Bound(), WlzConvertBoundType(), WlzCopyDomain(), WlzObjToBoundary(), and WlzShiftDomain().
WlzIVertex2* WlzMakeIVertex | ( | int | nverts, |
WlzErrorNum * | dstErr | ||
) |
Make an integer vertex array.
nverts | Number of vertices. |
dstErr | Error return, values: WLZ_ERR_NONE, WLZ_ERR_MEM_ALLOC. |
References AlcMalloc(), WLZ_ERR_MEM_ALLOC, and WLZ_ERR_NONE.
WlzObject* WlzMakeRect | ( | int | line1, |
int | lastln, | ||
int | kol1, | ||
int | lastkl, | ||
WlzGreyType | pixeltype, | ||
int * | grey_values, | ||
WlzPixelV | backgrnd, | ||
WlzPropertyList * | plist, | ||
WlzObject * | assoc_obj, | ||
WlzErrorNum * | dstErr | ||
) |
Make a top-level rectangular object, setting values if non-NULL, uses WlzMakeRectValueTb() to assign values which by default will not be freed when the object is freed. The freeptr needs to be explicitly set by the calling procedure. This is a convenience procedure calling WlzMakeIntervalDomain() then WlzMakeRectValueTb() then WlzMakeMain().
line1 | First line. |
lastln | Last line |
kol1 | First column |
lastkl | last column |
pixeltype | Pixel type for the grey values. If WLZ_GREY_ERROR is given then no values are created. |
grey_values | Pointer to the grey values array. |
backgrnd | Background pixel value. |
plist | Property list to be attached. |
assoc_obj | Associated object. |
dstErr | Error return, values: WLZ_ERR_NONE and valuea from WlzMakeRectValueTb() and WlzMakeMain(). |
References _WlzValues::core, _WlzDomain::i, _WlzValues::r, WLZ_2D_DOMAINOBJ, WLZ_ERR_NONE, WLZ_GREY_ERROR, WLZ_GREY_TAB_RECT, WLZ_INTERVALDOMAIN_RECT, WlzFreeDomain(), WlzFreeValues(), WlzGreyTableType(), WlzMakeIntervalDomain(), WlzMakeMain(), and WlzMakeRectValueTb().
Referenced by WlzEffReadObjAnl(), WlzEffReadObjJpeg(), and WlzPolarSample().
WlzObject* WlzMakeCuboid | ( | int | plane1, |
int | lastpl, | ||
int | line1, | ||
int | lastln, | ||
int | kol1, | ||
int | lastkl, | ||
WlzGreyType | pixType, | ||
WlzPixelV | bgdV, | ||
WlzPropertyList * | plist, | ||
WlzObject * | assocObj, | ||
WlzErrorNum * | dstErr | ||
) |
Creates a 3D domain object with values, for which the domain is a cuboid and the values are of the given type and initialized to have value zero.
plane1 | First plane. |
lastpl | Last plane. |
line1 | First line. |
lastln | Last line. |
kol1 | First column. |
lastkl | Last column. |
pixType | Pixel type for the grey values. If WLZ_GREY_ERROR is given then no values are created. |
bgdV | Background pixel value. |
plist | Property list to be attached. |
assocObj | Associated object. |
dstErr | Destination error pointer, may be NULL. |
References ALC_ER_NONE, AlcCalloc(), AlcFree(), AlcFreeStackPush(), _WlzValues::core, _WlzDomain::core, _WlzPlaneDomain::domains, _WlzRectValues::freeptr, _WlzDomain::i, _WlzDomain::p, _WlzValues::r, _WlzVoxelValues::values, _WlzValues::vox, _WlzPlaneDomain::voxel_size, WLZ_3D_DOMAINOBJ, WLZ_ERR_GREY_TYPE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_GREY_ERROR, WLZ_GREY_TAB_RECT, WLZ_INTERVALDOMAIN_RECT, WLZ_PLANEDOMAIN_DOMAIN, WLZ_VOXELVALUETABLE_GREY, WlzAssignDomain(), WlzAssignValues(), WlzFreeDomain(), WlzFreeValues(), WlzGreySize(), WlzGreyTableType(), WlzMakeIntervalDomain(), WlzMakeMain(), WlzMakePlaneDomain(), WlzMakeRectValueTb(), and WlzMakeVoxelValueTb().
Referenced by WlzEffReadObjAnl().
WlzHistogramDomain* WlzMakeHistogramDomain | ( | WlzObjectType | type, |
int | maxBins, | ||
WlzErrorNum * | dstErr | ||
) |
Allocates space for a histogram domain with the space for the given maximum number of bins of the appropriate type.
type | histogram type, one of: WLZ_HISTOGRAMDOMAIN_INT or WLZ_HISTOGRAMDOMAIN_FLOAT |
maxBins | Maximum number of histogram bins. |
dstErr | Error return, values: WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_ERR_MEM_ALLOC. |
References ALC_ER_NONE, AlcCalloc(), AlcFree(), AlcFreeStackPush(), _WlzHistogramDomain::binValues, _WlzGreyP::dbp, _WlzHistogramDomain::freeptr, _WlzGreyP::inp, _WlzHistogramDomain::maxBins, _WlzHistogramDomain::type, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, WLZ_HISTOGRAMDOMAIN_FLOAT, and WLZ_HISTOGRAMDOMAIN_INT.
Referenced by WlzCopyDomain(), and WlzMakeHistogram().
WlzObject* WlzMakeEmpty | ( | WlzErrorNum * | dstErr | ) |
Convenience procedure to make a top-level empty object.
dstErr | Error return, values from WlzMakeMain(). |
References _WlzValues::core, _WlzDomain::core, WLZ_EMPTY_OBJ, and WlzMakeMain().
Referenced by main(), Wlz3DSectionSegmentObject(), Wlz3DViewTransformObj(), WlzAffineTransformObjCb(), WlzBasisFnTransformObj(), WlzBoundaryToObj(), WlzCbThreshold(), WlzClipObjToBox2D(), WlzClipObjToBox3D(), WlzCMeshDistance2D(), WlzCMeshDistance3D(), WlzCMeshTransformObj(), WlzCompoundToRGBA(), WlzConvolveObj(), WlzCopyObject(), WlzCutObjToValBox3D(), WlzDiffDomain(), WlzDilation(), WlzDomainFill(), WlzEMAPDomainTransform(), WlzErosion(), WlzErosion4(), WlzGreyCrossing(), WlzGreyDitherObj(), WlzGreyGradient(), WlzGreyMask(), WlzGreyModGradient(), WlzGreyScale(), WlzGreyShift(), WlzGreyTemplate(), WlzGreyTransfer(), WlzGreyVariance(), WlzHistogramObj(), WlzImageArithmetic(), WlzIndexObjToCompound(), WlzIntersect3d(), WlzIntersectN(), WlzIntRescaleObj(), WlzMakeMarkers(), WlzMakeStdStructElement(), WlzMeshTransformObj_3D(), WlzNewGrey(), WlzNMSuppress(), WlzObjToConvexPolygon(), WlzPointsToDomObj(), WlzPolarSample(), WlzPolygonToObj(), WlzPolyTo8Polygon(), WlzPolyToObj(), WlzRasterObj(), WlzRGBAMultiThreshold(), WlzRGBAToChannel(), WlzRGBAToCompound(), WlzRGBAToModulus(), WlzRsvFilterObj(), WlzSampleObj(), WlzSampleObjPoint2D(), WlzScalarBinaryOp2(), WlzSepTrans(), WlzShadeCorrectBFDF(), WlzShiftObject(), WlzSkeleton(), WlzStructDilation(), WlzStructErosion(), WlzThreshold(), WlzTransposeObj(), WlzUnionN(), and WlzWindow().
WlzObject* WlzMakeHistogram | ( | WlzObjectType | type, |
int | maxBins, | ||
WlzErrorNum * | dstErr | ||
) |
Convenience procedure to make a top-level object with a histogram domain.
type | Type of the histogram domain, one of: WLZ_HISTOGRAMDOMAIN_INT or WLZ_HISTOGRAMDOMAIN_FLOAT. |
maxBins | Maximum number of histogram bins. |
dstErr | Error return, values: from WlzMakeHistogramDomain() and WlzMakeMain(). |
References _WlzValues::core, _WlzDomain::hist, WLZ_ERR_NONE, WLZ_HISTOGRAM, WlzMakeHistogramDomain(), and WlzMakeMain().
Referenced by WlzHistogramCopy(), WlzHistogramObj(), and WlzHistogramRebin().
WlzObject* WlzNewGrey | ( | WlzObject * | iobj, |
WlzErrorNum * | dstErr | ||
) |
Make a top-level object with the same domain as iobj (pointer copied and linkcount incremented) and new valuetable with values copied from iobj. If iobj has no valuetable then the returned object will have no value- table. This allows a copy of a 2D grey-value object.
iobj | Input object which defines the domain and grey values for which the new grey table will be defined. |
dstErr | Error return, values: WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE and errors from WlzNewValueTb(), WlzMakeMain(), WlzInitGreyScan() and WlzNextGreyInterval(). |
References _WlzValues::core, _WlzDomain::core, _WlzObject::domain, _WlzIntervalWSpace::lftpos, _WlzGreyWSpace::pixeltype, _WlzObject::plist, _WlzIntervalWSpace::rgtpos, _WlzCoreValues::type, _WlzCoreDomain::type, _WlzObject::type, _WlzGreyWSpace::u_grintptr, _WlzGreyP::ubp, _WlzValues::v, _WlzObject::values, WLZ_2D_DOMAINOBJ, WLZ_EMPTY_OBJ, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_EOO, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_OBJECT_TYPE, WLZ_GREY_DOUBLE, WLZ_GREY_FLOAT, WLZ_GREY_INT, WLZ_GREY_RGBA, WLZ_GREY_SHORT, WLZ_GREY_TAB_RAGR, WLZ_GREY_TAB_RECT, WLZ_GREY_UBYTE, WLZ_INTERVALDOMAIN_INTVL, WLZ_INTERVALDOMAIN_RECT, WlzFreeObj(), WlzGetBackground(), WlzGreyTableType(), WlzGreyTableTypeToGreyType(), WlzInitGreyScan(), WlzMakeEmpty(), WlzMakeMain(), WlzNewValueTb(), and WlzNextGreyInterval().
Referenced by WlzCopyValues(), WlzGreyDitherObj(), WlzGreyMask(), WlzRsvFilterObj(), and WlzSeqPar().
WlzRagRValues* WlzNewValueTb | ( | WlzObject * | obj, |
WlzObjectType | type, | ||
WlzPixelV | backgrnd, | ||
WlzErrorNum * | dstErr | ||
) |
Create a value table of required type with the same size and shape as the domain of obj. This must be of type WLZ_2D_DOMAINOBJ.
obj | Object which defines the shape of the new value table. |
type | Value table type. |
backgrnd | Background pixel value. |
dstErr | Error return, values: WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE, WLZ_ERR_MEM_ALLOC and errors from WlzMakeIntervalValues(), WlzGreyTableTypeToTableType(), WlzLineArea(), WlzMakeValueTb(), WlzInitRasterScan() and WlzMakeValueLine(). |
References AlcFreeStackPush(), AlcMalloc(), _WlzDomain::core, _WlzGreyP::dbp, _WlzGreyV::dbv, _WlzObject::domain, _WlzGreyP::flp, _WlzGreyV::flv, _WlzRectValues::freeptr, _WlzRagRValues::freeptr, _WlzValues::i, _WlzDomain::i, _WlzGreyP::inp, _WlzIntervalWSpace::intrmn, _WlzGreyV::inv, _WlzIntervalDomain::kol1, _WlzIntervalDomain::lastkl, _WlzRectValues::lastln, _WlzIntervalDomain::lastln, _WlzIntervalWSpace::lftpos, _WlzRectValues::line1, _WlzIntervalDomain::line1, _WlzIntervalWSpace::linpos, _WlzIntervalWSpace::nwlpos, _WlzValues::r, _WlzGreyP::rgbp, _WlzGreyV::rgbv, _WlzIntervalWSpace::rgtpos, _WlzGreyP::shp, _WlzGreyV::shv, _WlzObject::type, _WlzGreyP::ubp, _WlzGreyV::ubv, _WlzPixelV::v, _WlzGreyP::v, _WlzValues::v, _WlzRectValues::values, _WlzRectValues::width, _WlzRagRValues::width, WLZ_2D_DOMAINOBJ, WLZ_ERR_EOO, WLZ_ERR_GREY_TYPE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_OBJECT_TYPE, WLZ_GREY_DOUBLE, WLZ_GREY_FLOAT, WLZ_GREY_INT, WLZ_GREY_RGBA, WLZ_GREY_SHORT, WLZ_GREY_TAB_INTL, WLZ_GREY_TAB_RAGR, WLZ_GREY_TAB_RECT, WLZ_GREY_UBYTE, WLZ_RASTERDIR_ILIC, WlzFreeValueTb(), WlzGreyTableTypeToGreyType(), WlzGreyTableTypeToTableType(), WlzInitRasterScan(), WlzLineArea(), WlzMakeIntervalValues(), WlzMakeRectValueTb(), WlzMakeValueLine(), WlzMakeValueTb(), and WlzNextInterval().
Referenced by Wlz3DViewTransformObj(), WlzCMeshCurvToImage(), WlzCMeshIntersectDom2D5(), WlzCMeshTransformObj(), WlzConvertPix(), WlzDistanceTransform(), WlzFillBlankPlanes(), WlzGetProjectionFromObject(), WlzGreyTemplate(), WlzIndexObjFromCompound(), WlzIndexToRGBA(), WlzIntersectN(), WlzLBTMakeNodeIndexObj2D(), WlzLUTTransformObj(), WlzNewGrey(), WlzNewObjectValues(), WlzNewValuesVox(), WlzRGBAModGradient(), WlzRGBAToChannel(), WlzRGBAToCompound(), WlzRGBAToModulus(), WlzScalarBinaryOp2(), WlzTransposeObj(), and WlzUnionN().
WlzIntervalDomain* WlzNewIDomain | ( | WlzObjectType | outDomType, |
WlzIntervalDomain * | inDom, | ||
WlzErrorNum * | dstErr | ||
) |
Make a copy of an intervaldomain.
outDomType | Interval domain type, one of: WLZ_INTERVALDOMAIN_INTVL or WLZ_INTERVALDOMAIN_RECT. |
inDom | Input domain to be copied. |
dstErr | Error return, values: WLZ_ERR_NONE, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_MEM_ALLOC or errors from WlzMakeInterval(), WlzMakeIntervalDomain(). |
References AlcFreeStackPush(), AlcMalloc(), _WlzIntervalDomain::freeptr, _WlzInterval::ileft, _WlzIntervalDomain::intvlines, _WlzIntervalLine::intvs, _WlzInterval::iright, _WlzIntervalDomain::kol1, _WlzIntervalDomain::lastkl, _WlzIntervalDomain::lastln, _WlzIntervalDomain::line1, _WlzIntervalLine::nintvs, _WlzIntervalDomain::type, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_INTERVALDOMAIN_INTVL, WLZ_INTERVALDOMAIN_RECT, WlzFreeIntervalDomain(), WlzMakeInterval(), and WlzMakeIntervalDomain().
Referenced by WlzCopyDomain(), WlzFillBlankPlanes(), WlzShiftDomain(), WlzStructDilation(), and WlzStructErosion().
WlzContour* WlzMakeContour | ( | WlzErrorNum * | dstErr | ) |
Makes a new contour data structure.
dstErr | Error return, values: WLZ_ERR_NONE, WLZ_ERR_MEM_ALLOC. |
References AlcCalloc(), _WlzContour::type, WLZ_CONTOUR, WLZ_ERR_MEM_ALLOC, and WLZ_ERR_NONE.
Referenced by WlzAffineTransformContour(), WlzBasisFnTransformContour(), WlzCMeshToContour(), WlzContourGrdObj2D(), WlzCopyDomain(), WlzEffReadObjObj(), WlzEffReadObjPly2(), WlzEffReadObjSMesh(), WlzEffReadObjStl(), and WlzShiftDomain().
WlzIndexedValues* WlzMakeIndexedValues | ( | WlzObject * | obj, |
int | rank, | ||
int * | dim, | ||
WlzGreyType | vType, | ||
WlzValueAttach | attach, | ||
WlzErrorNum * | dstErr | ||
) |
Makes a new indexed value table.
obj | Given object, the domain of which is used to determine the value allocation. |
rank | The rank of the individual values. |
dim | The dimensions of individual indexed values. |
vType | The type of the data in the individual values. |
attach | Specifies what the values are to be attached to. |
dstErr | Destination error pointer, may be NULL. |
References AlcCalloc(), AlcMalloc(), AlcVectorNew(), _WlzIndexedValues::attach, _AlcVector::blkCnt, _AlcVector::blkSz, _WlzDomain::cm2, _WlzDomain::cm2d5, _WlzDomain::cm3, _WlzDomain::core, _WlzIndexedValues::dim, _WlzObject::domain, _WlzCMeshRes::elm, _WlzCMeshRes::nod, _WlzIndexedValues::rank, _WlzCMesh3D::res, _WlzCMesh2D5::res, _WlzCMesh2D::res, _WlzIndexedValues::type, _WlzCoreDomain::type, _WlzIndexedValues::values, _WlzCMeshEntRes::vec, _WlzIndexedValues::vType, WLZ_CMESH_2D, WLZ_CMESH_2D5, WLZ_CMESH_3D, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_GREY_TYPE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, WLZ_ERR_PARAM_DATA, WLZ_GREY_BIT, WLZ_INDEXED_VALUES, WLZ_VALUE_ATTACH_ELM, WLZ_VALUE_ATTACH_NOD, WlzFreeIndexedValues(), and WlzGreySize().
Referenced by WlzBasisFnInvertMakeCMeshTr2D(), WlzBasisFnInvertMakeCMeshTr3D(), WlzBasisFnMakeCMeshTr2D(), WlzBasisFnMakeCMeshTr3D(), WlzCMeshCompSurfMapIdx(), WlzCMeshComputeCurvaturesFromNodNorm(), WlzCMeshComputeNormalsElm(), WlzCMeshComputeNormalsIxv2D5(), WlzCMeshComputeNormalsNod(), WlzCMeshDistance2D(), WlzCMeshDistance3D(), WlzCMeshMeshMeshProduct(), WlzCMeshTransformFromObj(), WlzCopyObject(), and WlzCopyScaleCMeshValue().
WlzTiledValues* WlzMakeTiledValues | ( | int | dim, |
WlzErrorNum * | dstErr | ||
) |
Allocates a new tiled value table, but without allocating any indices or tiles. int dim Dimension.
dstErr | Destination error pointer, may be NULL. |
References AlcCalloc(), AlcFree(), _WlzTiledValues::dim, _WlzTiledValues::fd, _WlzTiledValues::nIdx, _WlzTiledValues::type, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_PARAM_DATA, and WLZ_VALUETABLE_TILED_INT.
WlzErrorNum WlzFreeTiledValues | ( | WlzTiledValues * | tVal | ) |
Frees a tiled value table.
tVal | The tiled value table to free. |
References AlcFree(), _WlzTiledValues::fd, _WlzTiledValues::indices, _WlzTiledValues::linkcount, _WlzTiledValues::nIdx, _WlzTiledValues::numTiles, _WlzTiledValues::tiles, _WlzTiledValues::tileSz, _WlzTiledValues::type, _WlzGreyP::v, WLZ_ERR_NONE, WLZ_ERR_VALUES_NULL, WLZ_ERR_VALUES_TYPE, WlzGreySize(), WlzGreyTableIsTiled(), WlzGreyTableTypeToGreyType(), and WlzUnlink().
Referenced by WlzFreeObj().
WlzObject* WlzMakeTiledValuesFromObj | ( | WlzObject * | gObj, |
size_t | tileSz, | ||
int | copyValues, | ||
WlzGreyType | gType, | ||
WlzPixelV | bgdV, | ||
WlzErrorNum * | dstErr | ||
) |
Creates a tiled object from the given object.
The tile size specifies the number of values that the tiles will contain and must be an integral power of two. The actual size in bytes of the tiles will vary with grey type.
gObj | Given object which must have an appropriate type for a tiled object. The valid types are currently WLZ_2D_DOMAINOBJ and WLZ_3D_DOMAINOBJ objects with values. |
tileSz | The required tile size. |
copyValues | Non zero if the grey values should be copied to the tiled object. |
gType | Required grey type for values table. |
bgdV | required background value. |
dstErr | Destination error pointer, may be NULL. |
References _WlzObject::type, WLZ_2D_DOMAINOBJ, WLZ_3D_DOMAINOBJ, WLZ_ERR_NONE, WLZ_ERR_OBJECT_NULL, and WLZ_ERR_OBJECT_TYPE.
WlzErrorNum WlzMakeTiledValuesTiles | ( | WlzTiledValues * | tVal | ) |
Allocates tiles for the tiles values but does not set the values within the tiles.
tVal | Given tiled values. |
References AlcMalloc(), _WlzTiledValues::fd, _WlzTiledValues::numTiles, _WlzTiledValues::tiles, _WlzTiledValues::tileSz, _WlzTiledValues::type, _WlzGreyP::v, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WlzGreySize(), and WlzGreyTableTypeToGreyType().