Woolz Image Processing  Version 1.8.3
WlzMacro.h File Reference

Woolz C pre-processor directives, eg macros. More...

Go to the source code of this file.

Macros

#define WLZ_VERSION   PACKAGE_VERSION
 
#define WLZ_MAX(X, Y)   (((X)>=(Y))?(X):(Y))
 
#define WLZ_MIN(X, Y)   (((X)<=(Y))?(X):(Y))
 
#define WLZ_ABS(X)   (((X)>0)?(X):(-(X)))
 
#define WLZ_NINT(X)   ((int)(((X)<0)?((X)-(0.5)):((X)+(0.5))))
 
#define WLZ_SIGN(X)   (((X)<0)?-1:((X)>0)?1:0)
 
#define WLZ_SWAP(T, A, B)   {(T)=(A);(A)=(B);(B)=(T);}
 Swaps the values of the variables A and B using the temporary variable T. More...
 
#define WLZ_CLAMP(V, N, X)   (((V)<(N))?(N):((V)>(X))?(X):(V))
 Clamps the value of V such that V >= N and V <= X. More...
 
#define WLZ_CLAMP_DOUBLE_TO_GREYP(U, F, V, G)
 Clamps a single double value from V setting U offset by F such that U >= MIN and U <= MAX where MIN and MAX are the minimum and maximum values for the grey type G. The only valid types for G are: WLZ_GREY_UBYTE, WLZ_GREY_SHORT, WLZ_GREY_INT, WLZ_GREY_FLOAT, and WLZ_GREY_DOUBLE; there is no check that G is none of these types. More...
 
#define WLZ_M_E   (2.7182818284590452354)0
 
#define WLZ_M_LOG2E   (1.4426950408889634074)
 
#define WLZ_M_LOG2E   (1.4426950408889634074)
 
#define WLZ_M_LOG10E   (0.43429448190325182765)
 
#define WLZ_M_LN2   (0.69314718055994530942)
 
#define WLZ_M_LN10   (2.30258509299404568402)
 
#define WLZ_M_PI   (3.14159265358979323846)
 
#define WLZ_M_PI_2   (1.57079632679489661923)
 
#define WLZ_M_PI_4   (0.78539816339744830961)
 
#define WLZ_M_1_PI   (0.31830988618379067154)
 
#define WLZ_M_2_PI   (0.63661977236758134308)
 
#define WLZ_M_2_SQRTPI   (1.12837916709551257390)
 
#define WLZ_M_SQRT2   (1.41421356237309504880)
 
#define WLZ_M_SQRT1_2   (0.70710678118654752440)
 
#define WLZ_M_SQRT3   (1.73205080756887729352)
 
#define WLZ_M_SQRT3_2   (0.86602540378443864676)
 
#define WLZ_MESH_TOLERANCE   (1.0E-04)
 
#define WLZ_MESH_TOLERANCE_SQ   (WLZ_MESH_TOLERANCE * WLZ_MESH_TOLERANCE)
 
#define WLZ_MESH_ELEM_AREA_TOLERANCE   (WLZ_M_SQRT3_2 * WLZ_MESH_TOLERANCE_SQ)
 
#define WLZ_BIT_SET(A, B)   *((A)+((B)>>3))|=(1<<((B)&7))
 
#define WLZ_BIT_GET(A, B)   (*((A)+((B)>>3))&(1<<((B)&7)))
 
#define WLZ_RGBA_RED_GET(V)   ((((WlzUInt )V) & 0xff)>>0)
 
#define WLZ_RGBA_GREEN_GET(V)   ((((WlzUInt )V) & 0xff00)>>8)
 
#define WLZ_RGBA_BLUE_GET(V)   ((((WlzUInt )V) & 0xff0000)>>16)
 
#define WLZ_RGBA_ALPHA_GET(V)   ((((WlzUInt )V) & 0xff000000)>>24)
 
#define WLZ_RGBA_RED_SET(V, C)
 
#define WLZ_RGBA_GREEN_SET(V, C)
 
#define WLZ_RGBA_BLUE_SET(V, C)
 
#define WLZ_RGBA_ALPHA_SET(V, C)
 
#define WLZ_RGBA_RGBA_SET(V, R, G, B, A)
 
#define WLZ_RGBA_MEAN(V)
 
#define WLZ_RGBA_MODULUS_2(V)
 
#define WLZ_RGBA_MODULUS(V)   (sqrt((double) WLZ_RGBA_MODULUS_2(V)))
 
#define WLZ_VTX_2_ABS(A, X)
 
#define WLZ_VTX_3_ABS(A, X)
 
#define WLZ_VTX_2_SIGN(S, X)
 
#define WLZ_VTX_3_SIGN(S, X)
 
#define WLZ_VTX_2_COPY(D, S)
 
#define WLZ_VTX_3_COPY(D, S)
 
#define WLZ_VTX_2_SET(U, X, Y)
 
#define WLZ_VTX_3_SET(U, X, Y, Z)
 
#define WLZ_VTX_2_ADD(U, V, W)
 
#define WLZ_VTX_3_ADD(U, V, W)
 
#define WLZ_VTX_2_ADD3(U, V, W, X)
 
#define WLZ_VTX_3_ADD3(U, V, W, X)
 
#define WLZ_VTX_3_ADD4(U, V, W, X, Y)
 
#define WLZ_VTX_2_SUB(U, V, W)
 
#define WLZ_VTX_3_SUB(U, V, W)
 
#define WLZ_VTX_2_SCALE(U, V, C)
 
#define WLZ_VTX_3_SCALE(U, V, C)
 
#define WLZ_VTX_2_SCALE_ADD(U, V, C, W)
 
#define WLZ_VTX_3_SCALE_ADD(U, V, C, W)
 
#define WLZ_VTX_2_DOT(V, W)
 
#define WLZ_VTX_2_HAD(U, V, W)
 
#define WLZ_VTX_3_DOT(V, W)
 
#define WLZ_VTX_3_HAD(U, V, W)
 
#define WLZ_VTX_3_CROSS(U, V, W)
 
#define WLZ_VTX_2_SQRLEN(U)
 
#define WLZ_VTX_3_SQRLEN(U)
 
#define WLZ_VTX_2_LENGTH(U)   (sqrt(WLZ_VTX_2_SQRLEN(U)))
 
#define WLZ_VTX_3_LENGTH(U)   (sqrt(WLZ_VTX_3_SQRLEN(U)))
 
#define WLZ_VTX_2_ZERO(U)
 
#define WLZ_VTX_3_ZERO(U)
 
#define WLZ_VTX_2_NEGATE(U, V)
 
#define WLZ_VTX_3_NEGATE(U, V)
 
#define WLZ_VTX_2_EQUAL(U, V, T)
 
#define WLZ_VTX_3_EQUAL(U, V, T)
 
#define WLZ_VTX_2_FABS(U, V)
 
#define WLZ_VTX_3_FABS(U, V)
 
#define WLZ_VTX_2_NINT(U, P)
 
#define WLZ_VTX_3_NINT(U, P)
 
#define WLZ_CMESH_ELM2D_GET_NODE_0(e)   ((e)->edu[0].nod)
 
#define WLZ_CMESH_ELM2D_GET_NODE_1(e)   ((e)->edu[1].nod)
 
#define WLZ_CMESH_ELM2D_GET_NODE_2(e)   ((e)->edu[2].nod)
 
#define WLZ_CMESH_ELM2D5_GET_NODE_0(e)   ((e)->edu[0].nod)
 
#define WLZ_CMESH_ELM2D5_GET_NODE_1(e)   ((e)->edu[1].nod)
 
#define WLZ_CMESH_ELM2D5_GET_NODE_2(e)   ((e)->edu[2].nod)
 
#define WLZ_CMESH_ELM3D_GET_NODE_0(e)   ((e)->face[0].edu[0].nod)
 
#define WLZ_CMESH_ELM3D_GET_NODE_1(e)   ((e)->face[0].edu[1].nod)
 
#define WLZ_CMESH_ELM3D_GET_NODE_2(e)   ((e)->face[0].edu[2].nod)
 
#define WLZ_CMESH_ELM3D_GET_NODE_3(e)   ((e)->face[1].edu[1].nod)
 

Detailed Description

Woolz C pre-processor directives, eg macros.

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

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

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

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

Macro Definition Documentation

◆ WLZ_VERSION

#define WLZ_VERSION   PACKAGE_VERSION

◆ WLZ_MAX

◆ WLZ_MIN

◆ WLZ_ABS

#define WLZ_ABS (   X)    (((X)>0)?(X):(-(X)))

Referenced by WlzPrincipalAngle().

◆ WLZ_NINT

◆ WLZ_SIGN

#define WLZ_SIGN (   X)    (((X)<0)?-1:((X)>0)?1:0)

◆ WLZ_SWAP

#define WLZ_SWAP (   T,
  A,
 
)    {(T)=(A);(A)=(B);(B)=(T);}

Swaps the values of the variables A and B using the temporary variable T.

◆ WLZ_CLAMP

◆ WLZ_CLAMP_DOUBLE_TO_GREYP

#define WLZ_CLAMP_DOUBLE_TO_GREYP (   U,
  F,
  V,
 
)
Value:
{\
switch((G))\
{\
(U).inp[(F)]=WLZ_CLAMP((V),0,255);\
break;\
(U).shp[(F)]=WLZ_CLAMP((V),SHRT_MIN,SHRT_MAX);\
break;\
case WLZ_GREY_INT:\
(U).inp[(F)]=WLZ_CLAMP((V),-FLT_MAX,FLT_MAX);\
break;\
(U).flp[(F)]=WLZ_CLAMP((V),-FLT_MAX,FLT_MAX);\
break;\
(U).dbp[(F)]=(V);\
break;\
default:\
break;\
}\
}\
Definition: WlzType.h:96
#define WLZ_CLAMP(V, N, X)
Clamps the value of V such that V >= N and V <= X.
Definition: WlzMacro.h:75
Definition: WlzType.h:98
Definition: WlzType.h:99
Definition: WlzType.h:97
Definition: WlzType.h:101

Clamps a single double value from V setting U offset by F such that U >= MIN and U <= MAX where MIN and MAX are the minimum and maximum values for the grey type G. The only valid types for G are: WLZ_GREY_UBYTE, WLZ_GREY_SHORT, WLZ_GREY_INT, WLZ_GREY_FLOAT, and WLZ_GREY_DOUBLE; there is no check that G is none of these types.

◆ WLZ_M_E

#define WLZ_M_E   (2.7182818284590452354)0

◆ WLZ_M_LOG2E [1/2]

#define WLZ_M_LOG2E   (1.4426950408889634074)

◆ WLZ_M_LOG2E [2/2]

#define WLZ_M_LOG2E   (1.4426950408889634074)

◆ WLZ_M_LOG10E

#define WLZ_M_LOG10E   (0.43429448190325182765)

◆ WLZ_M_LN2

#define WLZ_M_LN2   (0.69314718055994530942)

◆ WLZ_M_LN10

#define WLZ_M_LN10   (2.30258509299404568402)

◆ WLZ_M_PI

◆ WLZ_M_PI_2

#define WLZ_M_PI_2   (1.57079632679489661923)

Referenced by WlzPrincipalAngle().

◆ WLZ_M_PI_4

#define WLZ_M_PI_4   (0.78539816339744830961)

◆ WLZ_M_1_PI

#define WLZ_M_1_PI   (0.31830988618379067154)

◆ WLZ_M_2_PI

#define WLZ_M_2_PI   (0.63661977236758134308)

◆ WLZ_M_2_SQRTPI

#define WLZ_M_2_SQRTPI   (1.12837916709551257390)

◆ WLZ_M_SQRT2

#define WLZ_M_SQRT2   (1.41421356237309504880)

◆ WLZ_M_SQRT1_2

#define WLZ_M_SQRT1_2   (0.70710678118654752440)

◆ WLZ_M_SQRT3

#define WLZ_M_SQRT3   (1.73205080756887729352)

◆ WLZ_M_SQRT3_2

#define WLZ_M_SQRT3_2   (0.86602540378443864676)

◆ WLZ_MESH_TOLERANCE

◆ WLZ_MESH_TOLERANCE_SQ

◆ WLZ_MESH_ELEM_AREA_TOLERANCE

#define WLZ_MESH_ELEM_AREA_TOLERANCE   (WLZ_M_SQRT3_2 * WLZ_MESH_TOLERANCE_SQ)

Referenced by WlzMeshEarPowerSet().

◆ WLZ_BIT_SET

#define WLZ_BIT_SET (   A,
 
)    *((A)+((B)>>3))|=(1<<((B)&7))

◆ WLZ_BIT_GET

#define WLZ_BIT_GET (   A,
 
)    (*((A)+((B)>>3))&(1<<((B)&7)))

Referenced by WlzContourGrdObj2D().

◆ WLZ_RGBA_RED_GET

◆ WLZ_RGBA_GREEN_GET

◆ WLZ_RGBA_BLUE_GET

◆ WLZ_RGBA_ALPHA_GET

#define WLZ_RGBA_ALPHA_GET (   V)    ((((WlzUInt )V) & 0xff000000)>>24)

◆ WLZ_RGBA_RED_SET

#define WLZ_RGBA_RED_SET (   V,
 
)
Value:
(V = (((WlzUInt )V)&0xffffff00) | \
(((WlzUInt) C)&0xff))
unsigned int WlzUInt
A 32 bit unsigned integer.
Definition: WlzType.h:63

Referenced by WlzGreySetRangeLut(), and WlzRGBABoxThreshold().

◆ WLZ_RGBA_GREEN_SET

#define WLZ_RGBA_GREEN_SET (   V,
 
)
Value:
(V = (((WlzUInt )V)&0xffff00ff) | \
((((WlzUInt) C)&0xff)<<8))
unsigned int WlzUInt
A 32 bit unsigned integer.
Definition: WlzType.h:63

Referenced by WlzGreySetRangeLut(), and WlzRGBABoxThreshold().

◆ WLZ_RGBA_BLUE_SET

#define WLZ_RGBA_BLUE_SET (   V,
 
)
Value:
(V = (((WlzUInt )V)&0xff00ffff) | \
((((WlzUInt) C)&0xff)<<16))
unsigned int WlzUInt
A 32 bit unsigned integer.
Definition: WlzType.h:63

Referenced by WlzGreySetRangeLut(), and WlzRGBABoxThreshold().

◆ WLZ_RGBA_ALPHA_SET

#define WLZ_RGBA_ALPHA_SET (   V,
 
)
Value:
(V = (((WlzUInt )V)&0x00ffffff) | \
((((WlzUInt) C)&0xff)<<24))
unsigned int WlzUInt
A 32 bit unsigned integer.
Definition: WlzType.h:63

Referenced by WlzGreySetRangeLut().

◆ WLZ_RGBA_RGBA_SET

#define WLZ_RGBA_RGBA_SET (   V,
  R,
  G,
  B,
 
)

◆ WLZ_RGBA_MEAN

#define WLZ_RGBA_MEAN (   V)
Value:
WLZ_RGBA_GREEN_GET(V) + \
WLZ_RGBA_BLUE_GET(V))/3.0)
#define WLZ_RGBA_RED_GET(V)
Definition: WlzMacro.h:147

◆ WLZ_RGBA_MODULUS_2

#define WLZ_RGBA_MODULUS_2 (   V)
Value:
WLZ_RGBA_GREEN_GET(V)*WLZ_RGBA_GREEN_GET(V) + \
WLZ_RGBA_BLUE_GET(V)*WLZ_RGBA_BLUE_GET(V))
#define WLZ_RGBA_GREEN_GET(V)
Definition: WlzMacro.h:148
#define WLZ_RGBA_BLUE_GET(V)
Definition: WlzMacro.h:149
#define WLZ_RGBA_RED_GET(V)
Definition: WlzMacro.h:147

◆ WLZ_RGBA_MODULUS

◆ WLZ_VTX_2_ABS

#define WLZ_VTX_2_ABS (   A,
 
)
Value:
(A).vtX = WLZ_ABS((X).vtX), \
(A).vtY = WLZ_ABS((X).vtY)
#define WLZ_ABS(X)
Definition: WlzMacro.h:57

◆ WLZ_VTX_3_ABS

#define WLZ_VTX_3_ABS (   A,
 
)
Value:
(A).vtX = WLZ_ABS((X).vtX), \
(A).vtY = WLZ_ABS((X).vtY), \
(A).vtZ = WLZ_ABS((X).vtZ)
#define WLZ_ABS(X)
Definition: WlzMacro.h:57

◆ WLZ_VTX_2_SIGN

#define WLZ_VTX_2_SIGN (   S,
 
)
Value:
(S).vtX = WLZ_SIGN((X).vtX), \
(S).vtY = WLZ_SIGN((X).vtY)
#define WLZ_SIGN(X)
Definition: WlzMacro.h:59

◆ WLZ_VTX_3_SIGN

#define WLZ_VTX_3_SIGN (   S,
 
)
Value:
(S).vtX = WLZ_SIGN((X).vtX), \
(S).vtY = WLZ_SIGN((X).vtY), \
(S).vtZ = WLZ_SIGN((X).vtZ)
#define WLZ_SIGN(X)
Definition: WlzMacro.h:59

◆ WLZ_VTX_2_COPY

#define WLZ_VTX_2_COPY (   D,
 
)
Value:
(D).vtX = (S).vtX, \
(D).vtY = (S).vtY

Referenced by WlzPointsDither().

◆ WLZ_VTX_3_COPY

#define WLZ_VTX_3_COPY (   D,
 
)
Value:
(D).vtX = (S).vtX, \
(D).vtY = (S).vtY, \
(D).vtZ = (S).vtZ

Referenced by WlzPointsDither().

◆ WLZ_VTX_2_SET

#define WLZ_VTX_2_SET (   U,
  X,
 
)
Value:
(U).vtX = (X), \
(U).vtY = (Y)

Referenced by WlzBSplineLength(), and WlzCMeshClosePointDom2D5().

◆ WLZ_VTX_3_SET

#define WLZ_VTX_3_SET (   U,
  X,
  Y,
 
)

◆ WLZ_VTX_2_ADD

◆ WLZ_VTX_3_ADD

#define WLZ_VTX_3_ADD (   U,
  V,
 
)

◆ WLZ_VTX_2_ADD3

#define WLZ_VTX_2_ADD3 (   U,
  V,
  W,
 
)
Value:
(U).vtX = (V).vtX + (W).vtX + (X).vtX, \
(U).vtY = (V).vtY + (W).vtY + (X).vtY

Referenced by WlzGeomTriangleCen2D().

◆ WLZ_VTX_3_ADD3

#define WLZ_VTX_3_ADD3 (   U,
  V,
  W,
 
)
Value:
(U).vtX = (V).vtX + (W).vtX + (X).vtX, \
(U).vtY = (V).vtY + (W).vtY + (X).vtY, \
(U).vtZ = (V).vtZ + (W).vtZ + (X).vtZ

Referenced by WlzGeomTriangleCen3D().

◆ WLZ_VTX_3_ADD4

#define WLZ_VTX_3_ADD4 (   U,
  V,
  W,
  X,
 
)
Value:
(U).vtX = (V).vtX + (W).vtX + (X).vtX + (Y).vtX, \
(U).vtY = (V).vtY + (W).vtY + (X).vtY + (Y).vtY, \
(U).vtZ = (V).vtZ + (W).vtZ + (X).vtZ + (Y).vtZ

Referenced by WlzGeomTetrahedronCen3D().

◆ WLZ_VTX_2_SUB

◆ WLZ_VTX_3_SUB

◆ WLZ_VTX_2_SCALE

◆ WLZ_VTX_3_SCALE

◆ WLZ_VTX_2_SCALE_ADD

#define WLZ_VTX_2_SCALE_ADD (   U,
  V,
  C,
 
)
Value:
(U).vtX = (V).vtX * (C) + (W.vtX), \
(U).vtY = (V).vtY * (C) + (W.vtY)

Referenced by WlzGeomTriangleVtxDistSq2D().

◆ WLZ_VTX_3_SCALE_ADD

#define WLZ_VTX_3_SCALE_ADD (   U,
  V,
  C,
 
)
Value:
(U).vtX = (V).vtX * (C) + (W.vtX), \
(U).vtY = (V).vtY * (C) + (W.vtY), \
(U).vtZ = (V).vtZ * (C) + (W.vtZ)

Referenced by WlzGeomLineLineSegmentIntersect3D(), and WlzGeomVtxOnLineSegment3D().

◆ WLZ_VTX_2_DOT

#define WLZ_VTX_2_DOT (   V,
 
)
Value:
(((V).vtX * (W).vtX) + \
((V).vtY * (W).vtY))

Referenced by WlzAffineTransformLSqReg2D(), WlzGeomTriangleVtxDistSq2D(), and WlzGeomVertexInDiamCircle().

◆ WLZ_VTX_2_HAD

#define WLZ_VTX_2_HAD (   U,
  V,
 
)
Value:
(U).vtX = (V).vtX * (W).vtX, \
(U).vtY = (V).vtY * (W).vtY

Referenced by WlzBSplineLength().

◆ WLZ_VTX_3_DOT

◆ WLZ_VTX_3_HAD

#define WLZ_VTX_3_HAD (   U,
  V,
 
)
Value:
(U).vtX = (V).vtX * (W).vtX, \
(U).vtY = (V).vtY * (W).vtY, \
(U).vtZ = (V).vtZ * (W).vtZ

Referenced by WlzBSplineLength().

◆ WLZ_VTX_3_CROSS

◆ WLZ_VTX_2_SQRLEN

◆ WLZ_VTX_3_SQRLEN

◆ WLZ_VTX_2_LENGTH

◆ WLZ_VTX_3_LENGTH

◆ WLZ_VTX_2_ZERO

#define WLZ_VTX_2_ZERO (   U)

◆ WLZ_VTX_3_ZERO

#define WLZ_VTX_3_ZERO (   U)

◆ WLZ_VTX_2_NEGATE

#define WLZ_VTX_2_NEGATE (   U,
 
)
Value:
(U).vtX = -((V).vtX), \
(U).vtY = -((V).vtY)

◆ WLZ_VTX_3_NEGATE

#define WLZ_VTX_3_NEGATE (   U,
 
)
Value:
(U).vtX = -((V).vtX), \
(U).vtY = -((V).vtY), \
(U).vtZ = -((V).vtZ)

◆ WLZ_VTX_2_EQUAL

#define WLZ_VTX_2_EQUAL (   U,
  V,
 
)
Value:
((fabs((U).vtX - (V).vtX) < (T)) && \
(fabs((U).vtY - (V).vtY) < (T)))

Referenced by WlzConvexHullFromVtx2().

◆ WLZ_VTX_3_EQUAL

#define WLZ_VTX_3_EQUAL (   U,
  V,
 
)
Value:
((fabs((U).vtX - (V).vtX) < (T)) && \
(fabs((U).vtY - (V).vtY) < (T)) && \
(fabs((U).vtZ - (V).vtZ) < (T)))

Referenced by WlzCMeshTrRegSM3D().

◆ WLZ_VTX_2_FABS

#define WLZ_VTX_2_FABS (   U,
 
)
Value:
((U).vtX = fabs((V).vtX), \
(U).vtY = fabs((V).vtY))

◆ WLZ_VTX_3_FABS

#define WLZ_VTX_3_FABS (   U,
 
)
Value:
((U).vtX = fabs((V).vtX), \
(U).vtY = fabs((V).vtY), \
(U).vtZ = fabs((V).vtZ))

◆ WLZ_VTX_2_NINT

#define WLZ_VTX_2_NINT (   U,
 
)
Value:
((U).vtX = WLZ_NINT((P).vtX), \
(U).vtY = WLZ_NINT((P).vtY))
#define WLZ_NINT(X)
Definition: WlzMacro.h:58

Referenced by WlzConvexHullFromVtx2(), WlzDomainNearby(), and WlzProjectObjToPlane().

◆ WLZ_VTX_3_NINT

#define WLZ_VTX_3_NINT (   U,
 
)
Value:
((U).vtX = WLZ_NINT((P).vtX), \
(U).vtY = WLZ_NINT((P).vtY), \
(U).vtZ = WLZ_NINT((P).vtZ))
#define WLZ_NINT(X)
Definition: WlzMacro.h:58

Referenced by WlzDomainNearby().

◆ WLZ_CMESH_ELM2D_GET_NODE_0

◆ WLZ_CMESH_ELM2D_GET_NODE_1

◆ WLZ_CMESH_ELM2D_GET_NODE_2

◆ WLZ_CMESH_ELM2D5_GET_NODE_0

#define WLZ_CMESH_ELM2D5_GET_NODE_0 (   e)    ((e)->edu[0].nod)

◆ WLZ_CMESH_ELM2D5_GET_NODE_1

#define WLZ_CMESH_ELM2D5_GET_NODE_1 (   e)    ((e)->edu[1].nod)

◆ WLZ_CMESH_ELM2D5_GET_NODE_2

#define WLZ_CMESH_ELM2D5_GET_NODE_2 (   e)    ((e)->edu[2].nod)

◆ WLZ_CMESH_ELM3D_GET_NODE_0

◆ WLZ_CMESH_ELM3D_GET_NODE_1

◆ WLZ_CMESH_ELM3D_GET_NODE_2

◆ WLZ_CMESH_ELM3D_GET_NODE_3