| Member name | Value | Description |
---|
| mccsf3dNone | 0 | Nothing special, Bounds and Area are computed. |
| mccsf3dAllFlags | -1 | Status Flags |
| mccsf3dInitialized | 1 | IMcBitMask3D.InitializeLabeling has been called. The settable
ControlStatusFlags cannot be assigned until InitializeLabeling has been
called. This flag is not settable by the user. |
| mccsf3dReadyForLabeling | 2 | One or more frames have beenadded via the AppendBitMaskForLabeling method. This flag is not settable
by the user. |
| mccsf3dResultsAvailable | 4 | IMcBitMask3d.DoLabeling hasbeen called. This flag is not settable by the user. |
| mccsf3dUserCanceledLabeling | 16 | During anIMcBitMask3D.Create3DLabeledImage call or access to the IMcBitMap3D.Holes3D
property, the user escaped from the labeling loop, so that some number of
trailing frames were not labeled or the Holes3D is not properly initialized.
This flag is not settable by the user, but this status state can only happen
if the mccsf3dAllowUserEscape ControlStatusFlags bit is set. |
| mccsf3dThisIsHoles3D | 32 | Control Flags |
| mccsf3dSettableFlagsMask | 65280 | Mask for the settableControlStatusFlags bits. |
| mccsf3dKeepScanLists | 256 | If set, then a referenceis kept on bit masks as they are added to the stack of frames with the
AppendBitMaskForLabeling method. In this case, at a later time, even after
DoLabeling is called (but not after ReleaseLabeling) then
ReplaceBitMaskForLabeling may be called one or more times to replace the bit
mask for one or more given frames; DoLabeling can then be called to generate
a labeling using the replaced frames. If clear, then
ReplaceBitMaskForLabeling cannot be called, and a reference is only kept on
bit mask passed to the last AppendBitMaskForLabeling call; and in this case,
once DoLabeling is called, all bit masks are released. If this bit is not
set, then the IMcBitMask3D.Create3DLabeledImage cannot be called. The
initial state of this flag is set by the IMcBitMask3D.InitializeLabeling
KeepScanLists parameter, but it can be changed only until the first call to
AppendBitMaskForLabeling is made. |
| mccsf3dExcludeSingleFrameLabels | 512 | If set, then the labeledregions which exist in only a single frame (that is, are not connected to a
region in the frame ahead or behind) are excluded from the labeling. Only if
this bit is set may the GetTagCountsForOneFrame return a different count via
the AllTags argument than its return value. This bit can be set or cleared only
afterIMcBitMask3D.InitializeLabeling has been called, but before the first
call to AppendBitMaskForLabeling. |
| mccsf3dGetBoundsAndAreas | 1024 | If set, then theaccumulated X,Y bounding rectangle and the total pixel counts of each 3D
label is computed as AppendBitMaskForLabeling and/or
ReplaceBitMaskForLabeling is called. These results are available after a
DoLabeling call via the XYBoundsForEachLabel and PixelCountsForEachLabel
properties. whether this bit is set or not, the range of frames over which
each 3D label appears is exposed by the FrameRangeForEachLabel. This bit
can be set or cleared only afterIMcBitMask3D.InitializeLabeling has been
called, but before the first call to AppendBitMaskForLabeling. |
| mccsf3dTrimCreatedFrames | 2048 | If set whenIMcBitMask3D.Create3DLabeledImage is called, the number of frames in the
created image will only encompass the frame range necessary to label all
selected 3D labels. With this bit set, the first frame in the created
sequence and the last frame are guaranteed to have at least one labeled
object in them. The actual range of frames taken from the stack of bit
masks is returned via the RangeOfFrames parameter. This flag can be changed
at any time before Create3DLabeledImage is called |
| mccsf3dTrimCreatedImageSizeXY | 4096 | If set whenIMcBitMask3D.Create3DLabeledImage is called, the created image Width and
Height will be make as small as necessary to just encompass all of the
selected 3D labels.. The actual range of frames taken from the stack of bit
masks is returned via the RangeOfFrames parameter. |
| mccsf3dAllowUserEscape | 8192 | If set whenIMcBitMask3D.Create3DLabeledImage is called, the user may press escape to
break out of the image labeling loop early. If escape happens, the
mccsf3dUserCanceledLabeling ControlStatusFlags bit will be set and some
number of trailing frames of the created image will be unlabeled (all
black). If the mccsf3dAllowUserEscape flag is clear, then the user cannot
escape from the Create3DLabeledImage operation; they must wait until it is
complete. |
| mccsf3dLabelImageWithSelectorIndex | 16384 | If set whenIMcBitMask3D.Create3DLabeledImage is called, the value placed in a pixel to
label any 3D labeled region is the index into the squeezed
LabelMinusOneSelector selector argument. For example, assume
IMcBitMask3D.CountOfLabels is 10 and LabelMinusOneSelector is
{-1,1,2,-1,-1,-1,7,-1,9} or the equivalent {1,2,7,9}, then 4 3D objects will
be labeled, those with 3D label IDs of 2,3,8 and 10; if this flag is clear
then those are pixel values used to label the relevant tagged blobs, but if
the flag is set, then 3D blobs with ID 2 are labeled 1, 3D ID 3 are labeled
2, 3D ID 8 are labeled 3 and 3D ID 10 are labeled 4. In either case, on
return the LabelMinusOneSelector parameter will be set to the squeezed
selector (negative values removed); in the example, this would be {1,2,7,9}
with the length of this array giving the number of 3D labeled objects
labeled in the image.
This option also preserves the order in the array, so if the
LabelMinusOneSelector parameter is given as {9,7,2,1} then then 3D blobs
with ID 2 are labeled 4, 3D ID 3 are labeled 3, 3D ID 8 are labeled 2 and 3D
ID 10 are labeled 1. On return the array would be the same as the given
one: {9,7,2,1}, so that the returned array allows you to look up the 3D
label ID minus 1 associated with any pixel's labeled value. It is an error
to have both this flag and the mccsf3dLabelImageWithSelectorValue set,
though both may be clear. |
| mccsf3dLabelImageWithSelectorValue | 32768 | If set whenIMcBitMask3D.Create3DLabeledImage is called, then the LabelMinusOneSelector
must be an Integer array of length IMcBitMask3D.CountOfLabels where each
element of the array gives the value-1 to be used to label the 3D label
ID-1 used as an index array. Negative values in this array mean that the
indexed 3D object should be ignored. For example, assume
IMcBitMask3D.CountOfLabels is 10 and LabelMinusOneSelector is
{-1,2,2,-1,-1,-1,1,-1,0}, then 4 3D objects will be labeled, those with 3D
label IDs of 2,3,8 and 10. 3D blobs with ID 2 are labeled 3, 3D ID 3 are
labeled 3, 3D ID 8 are labeled2 and 3D ID 10 are labeled 1. The highest
pixel value in the created image will be 3. On return, the
LabelMinusOneSelector parameter will be unchanged. It is an error to have
both this flag and the mccsf3dLabelImageWithSelectorIndex set, though both
may be clear. |