| MIL 10 Reference
| Customize Help
| Save Settings

MmodInquire



See also
Availability
Not available in MIL-Lite
Available in MIL

Available on Windows
Available on Linux

Available on Non-Matrox computer
Available on Matrox 4Sight-X
Available on Matrox 4Sight GP
Available on Matrox Supersight
function map Function map
Examples
Synopsis
Inquire information about a specified Model Finder context, a specified model, or a specified result buffer.
Syntax
MIL_INT MmodInquire(
MIL_ID ContextOrResultId, //in
MIL_INT Index, //in
MIL_INT64 InquireType, //in
void *UserVarPtr //out
)
Description

This function inquires information about a specified Model Finder context, the models contained therein, or a specified Model Finder result buffer. Note that Model Finder result buffer values can be obtained with MmodGetResult().

If the inquired control value setting is set to M_DEFAULT, MmodInquire() will return M_DEFAULT. To inquire its default value, add M_DEFAULT to the inquire type.

Note that this function reference has not been updated for a MIL system added during a MIL update. Refer to the MIL system's release note to see if there is complementary information.
Parameters
This function is not supported on the selected boards.
Parameters
ContextOrResultId

Specifies the Model Finder context or Model Finder result buffer about which to inquire information. The Model Finder context or result buffer must have been previously allocated on the required system using MmodAlloc() or MmodAllocResult(), respectively.

Index

Specifies that information will be inquired about the Model Finder context, an individual model, or a Model Finder result buffer. This parameter should be set to one of the following values:

function map For specifying a context, model, or result buffer
CollapseValue Description
Collapse M_DEFAULT

Specifies the default.

If a Model Finder context is specified, this parameter inquires information about model index 0.

If a result buffer is specified, same as M_GENERAL.

(summarize)
Collapse M_CONTEXT

Inquires information about a Model Finder context, if one is specified.

Collapse M_GENERAL

Inquires general information about the Model Finder result buffer, if one is specified.

Collapse Value

Inquires information about a model, if a Model Finder context is specified. Set the Index parameter to the index of the required model.

To retrieve the index of a model from its user label, set this parameter to the user label and set the inquire type to M_INDEX_FROM_LABEL.

(summarize)
InquireType

Specifies the type of setting about which to inquire.

See the Parameter associations section for possible values that can be specified.

UserVarPtr
Accepts the address of one of the following (see the Parameter associations section for specifics on which is expected):
  • array of type MIL_DOUBLE
  • array of type MIL_ID
  • array of type MIL_INT
  • array of type MIL_INT32
  • array of type MIL_INT64
  • MIL_DOUBLE
  • MIL_ID
  • MIL_INT
  • MIL_INT32
  • MIL_INT64

Specifies the address in which to write the requested information. Since the MmodInquire() function also returns the requested information, you can set this parameter to M_NULL.

See the Parameter associations section for possible values that can be returned.

The tables below list possible values for the InquireType parameter and possible values returned to the UserVarPtr parameter.

For M_CONTEXT or individual model inquiries, the InquireType parameter can be set to one of the following:

Unless otherwise specified, the following values require that you pass the UserVarPtr parameter the address of a MIL_DOUBLE.

function map For returning the number of models to find
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_NUMBER +

Inquires the number of models for which to search.

For M_CONTEXT, this setting returns the maximum number of occurrences of all models to find in the target.

For a model, this setting returns the maximum number of occurrences of the specified model to find in the target. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value. INFO

Collapse M_ALL

Specifies to find all occurrences. INFO

Collapse Value > 0

Specifies the number of occurrences. INFO

To inquire about the system on which the Model Finder context or result buffer has been allocated, set the InquireType parameter to the value below.

Unless otherwise specified, the following values require that you pass the UserVarPtr parameter the address of a MIL_DOUBLE.

function map For inquiring about the system
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_OWNER_SYSTEM +

Inquires the identifier of the system on which the Model Finder context or result buffer was allocated. SET SET

(summarize)
Collapse M_DEFAULT_HOST

Specifies the default Host system of the current MIL application.

Collapse MIL system identifier

Specifies a valid system identifier, previously allocated using MsysAlloc().

For M_CONTEXT, the InquireType parameter can be set to one of the following:

Unless otherwise specified, the following values require that you pass the UserVarPtr parameter the address of a MIL_DOUBLE.

function map For M_CONTEXT
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_ACCURACY +

Inquires the search accuracy.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Same as M_MEDIUM.

Collapse M_HIGH

Specifies high accuracy.

Collapse M_LOW

Specifies low accuracy.

Collapse M_MEDIUM

Specifies medium accuracy.

Collapse M_ACTIVE_EDGELS +

Inquires the degree to which MIL processes active edgels in the target.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 100.0%.

Collapse 0.0 <= Value <= 100.0

Specifies the degree to which MIL processes target edgels, in percent. INFO

Collapse M_ASPECT_RATIO +

Inquires the nominal search aspect ratio.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 1.0.

Collapse 0.5 <= Value <= 2.0

Specifies the pixel width/pixel height of the target.

Collapse M_CONTEXT_TYPE +

Inquires the type of search context allocated. SET

(summarize)
Collapse M_GEOMETRIC

Specifies that the Model Finder context uses a general geometric search algorithm. INFO

Collapse M_GEOMETRIC_CONTROLLED

Specifies that the Model Finder context uses a controlled geometric search algorithm. INFO

Collapse M_SHAPE_CIRCLE

Specifies that the Model Finder context uses a circular model search algorithm. INFO

Collapse M_DETAIL_LEVEL +

Inquires the level of details to extract from the model source and target image. SET

(summarize)
Collapse M_DEFAULT

Same as M_MEDIUM.

Collapse M_HIGH

Specifies a high level of detail.

Collapse M_MEDIUM

Specifies a medium level of detail.

Collapse M_VERY_HIGH

Specifies a very high level of detail.

Collapse M_FIRST_LEVEL +

Inquires the resolution level for the initial stage of the search.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Same as M_AUTO.

Collapse M_AUTO

Specifies that the first resolution is determined automatically.

Collapse 0 <= Value <= 7

Specifies the resolution level. INFO

Collapse M_LAST_LEVEL +

Inquires the resolution level for the final stage of the search.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Same as M_AUTO.

Collapse M_AUTO

Specifies that the last resolution is determined automatically.

Collapse 0 <= Value <= 7

Specifies the resolution level. INFO

Collapse M_MODIFICATION_COUNT +

Inquires the current value of the modification counter. The modification counter is increased by one each time settings for the context are modified.

Although you cannot identify the modification counter's contents, you can compare them throughout your application to know if the context has been altered. If the modification counter has changed you can, for example, prompt the user to save before closing the application.

(summarize)
Collapse Value

Specifies the current value of the modification counter.

Collapse M_NUMBER_MODELS +

Inquires the number of models in the context.

(summarize)
Collapse Value

Specifies the number of models.

Collapse M_PREPROCESSED +

Inquires whether the Model Finder context is preprocessed. The context must be preprocessed (using MmodPreprocess()) before calling MmodFind(). After certain settings of the Model Finder context are changed with MmodControl(), or after a model is added or removed with MmodDefine(), this inquire type will indicate that the context is no longer in its preprocessed state.

(summarize)
Collapse 0

Specifies that the context is not preprocessed.

Collapse Value!= 0

Specifies that the context is preprocessed.

Collapse M_SAVE_TARGET_EDGES +

Inquires whether the target edges in the result will be saved. SET

(summarize)
Collapse M_DEFAULT

Same as M_DISABLE.

Collapse M_DISABLE

Specifies that target edges cannot be saved.

Collapse M_ENABLE

Specifies that target edges can be saved. INFO

Collapse M_SEARCH_ANGLE_RANGE +

Inquires whether to perform calculations specific to angular-range search strategies.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value. INFO

Collapse M_DISABLE

Specifies that calculations specific to angular-range search strategies are disabled.

Collapse M_ENABLE

Specifies that calculations specific to angular-range search strategies are enabled.

Collapse M_SEARCH_POSITION_RANGE +

Inquires whether to perform calculations specific to position-range search strategies.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Same as M_ENABLE.

Collapse M_DISABLE

Specifies that calculations specific to position-range search strategies are disabled.

Collapse M_ENABLE

Specifies that calculations specific to position-range search strategies are enabled.

Collapse M_SEARCH_SCALE_RANGE +

Inquires whether to perform calculations specific to scale-range search strategies. SET

(summarize)
Collapse M_DEFAULT

Same as M_DISABLE.

Collapse M_DISABLE

Specifies that calculations specific to scale-range search strategies are disabled.

Collapse M_ENABLE

Specifies that calculations specific to scale-range search strategies are enabled. INFO

Collapse M_SHARED_EDGES +

Inquires whether multiple occurrences can share edges.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Same as M_DISABLE.

Collapse M_DISABLE

Specifies to disable the sharing of edges. INFO

Collapse M_ENABLE

Specifies to enable the sharing of edges.

Collapse M_SMOOTHNESS +

Inquires the degree of smoothness (denoising) applied to the model images and the target images during edge extraction. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 50.0.

Collapse 0.0 <= Value <= 100.0

Specifies the smoothness value applied to the images. INFO

Collapse M_SPEED +

Inquires the search speed.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Same as M_MEDIUM.

Collapse M_HIGH

Specifies a high speed.

Collapse M_LOW

Specifies a low speed.

Collapse M_MEDIUM

Specifies a medium speed.

Collapse M_VERY_HIGH

Specifies a very high speed.

Collapse M_TARGET_CACHING +

Inquires whether target caching is enabled.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Same as M_DISABLE.

Collapse M_DISABLE

Specifies to disable target caching. INFO

Collapse M_ENABLE

Specifies to enable target caching in the result.

Collapse M_TIMEOUT +

Inquires the maximum search time for MmodFind(), in msec. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 2000.0msec.

Collapse M_DISABLE

Specifies an infinite amount of search time.

Collapse Value >= 0

Specifies the maximum search time, in msecs.

For individual model inquiries, the InquireType parameter can be set to one of the following:

Unless otherwise specified, the following values require that you pass the UserVarPtr parameter the address of a MIL_DOUBLE.

function map For models
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_ACCEPTANCE +

Inquires the acceptance level for the score. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 60.0%.

Collapse 0.0 <= Value <= 100.0

Specifies an acceptable score, in percent. INFO

Collapse M_ACCEPTANCE_TARGET +

Inquires the acceptance level for the target score.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 0.0%.

Collapse 0.0 <= Value <= 100.0

Specifies an acceptable target score, in percent. INFO

Collapse M_ALLOC_OFFSET_X +

Inquires the X-offset of the model in the model source image.

This is only supported for image-type or Edge Finder-type models. For a synthetic model, use M_BOX_OFFSET_X instead.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse Value

Specifies the X-offset of the model, in pixels.

Collapse M_ALLOC_OFFSET_Y +

Inquires the Y-offset of the model in the model source image.

This is only supported for image-type or Edge Finder-type models. For a synthetic model, use M_BOX_OFFSET_Y instead.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse Value

Specifies the Y-offset of the model, in pixels.

Collapse M_ALLOC_SIGN +

Inquires whether the data range of the model image is signed or unsigned.

(summarize)
Collapse M_SIGNED

Specifies that the data is signed.

Collapse M_UNSIGNED

Specifies that the data is unsigned. Synthetic, Model Finder-type and merge-type models will always return M_UNSIGNED.

(summarize)
Collapse M_ALLOC_SIZE_BAND +

Inquires the number of bands of the model image. When drawing the model image, use M_ALLOC_SIZE_BAND to establish the required number of bands for the destination buffer.

(summarize)
Collapse 1

Specifies a 1-band buffer.

Collapse 3

Specifies a 3-band buffer.

Collapse M_ALLOC_SIZE_BIT +

Inquires the depth per band, in bits, of the model image.

(summarize)
Collapse 1

Specifies that the data depth is 1 bit per band.

Collapse 8

Specifies that the data depth is 8 bits per band.

Collapse 16

Specifies that the data depth is 16 bits per band.

Collapse 32

Specifies that the data depth is 32 bits per band.

Collapse M_ALLOC_SIZE_X +

Inquires the width of the model box.

For a synthetic model, use M_BOX_SIZE_X to get this value in user-defined units. SET

(summarize)
Collapse 16.0 <= Value <= 1024.0

Specifies the width of the model (in X), in pixels.

Collapse M_ALLOC_SIZE_Y +

Inquires the height of the model box.

For a synthetic model, use M_BOX_SIZE_Y to get this value in user-defined units. SET

(summarize)
Collapse 16.0 <= Value <= 1024.0

Specifies the height of the model (in Y), in pixels.

Collapse M_ALLOC_TYPE +

Inquires the data type and depth of the model image.

(summarize)
Collapse M_FLOAT + 32

Specifies 32-bit floating-point data.

Collapse M_SIGNED + 8

Specifies 8-bit signed data.

Collapse M_SIGNED + 16

Specifies 16-bit signed data.

Collapse M_SIGNED + 32

Specifies 32-bit signed data.

Collapse M_UNSIGNED + 1

Specifies 1-bit unsigned data.

Collapse M_UNSIGNED + 8

Specifies 8-bit unsigned data.

Collapse M_UNSIGNED + 16

Specifies 16-bit unsigned data.

Collapse M_UNSIGNED + 32

Specifies 32-bit unsigned data.

Collapse M_ANGLE +

Inquires the nominal search angle, relative to the model reference axis angle.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 0.0°.

Collapse 0.0 <= Value <= 360.0

Specifies the nominal search angle, in degrees. INFO

Collapse M_ANGLE_DELTA_NEG +

Inquires the lower limit of the angular range, relative to the nominal search angle.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 180.0°.

Collapse 0.0 <= Value <= 180.0

Specifies the lower limit of the angular range, in degrees. INFO

Collapse M_ANGLE_DELTA_POS +

Inquires the upper limit of the angular range, relative to the nominal search angle.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 180.0°.

Collapse 0.0 <= Value <= 180.0

Specifies the upper limit of the angular range, in degrees. INFO

Collapse M_ASSOCIATED_CALIBRATION +

Inquires the calibration context associated with the specified model.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_NULL

Specifies that there is no calibration context associated with the model.

Collapse MIL Calibration context identifier

Specifies the calibration context that is associated with the model.

Collapse M_BOX_MARGIN_BOTTOM +

Inquires the margin at the bottom of the bounding box of the model's active edges, in the user-defined units for the model.

This inquire type is only valid for synthetic models. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 10.0% of the height of the bounding box of the model's active edges.

Collapse Value >= 0.0

Specifies the margin, in the user-defined units for the model.

Collapse M_BOX_MARGIN_LEFT +

Inquires the margin at the left of the bounding box of the model's active edges, in the user-defined units for the model.

This inquire type is only valid for synthetic models. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 10.0% of the width of the bounding box of the model's active edges.

Collapse Value >= 0.0

Specifies the margin, in the user-defined units for the model.

Collapse M_BOX_MARGIN_RIGHT +

Inquires the margin at the right of the bounding box of the model's active edges, in the user-defined units for the model.

This inquire type is only valid for synthetic models. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 10.0% of the width of the bounding box of the model's active edges.

Collapse Value >= 0.0

Specifies the margin, in the user-defined units for the model.

Collapse M_BOX_MARGIN_TOP +

Inquires the margin at the top of the bounding box of the model's active edges, in the user-defined units for the model.

This inquire type is only valid for synthetic models. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 10.0% of the height of the bounding box of the model's active edges.

Collapse Value >= 0.0

Specifies the margin, in the user-defined units for the model.

Collapse M_BOX_OFFSET_X +

Inquires the X-offset of the top-left corner of the model box from the model origin.

For predefined shape models, the origin of the model is the center of the shape. For CAD-file models, the origin is the same as the one defined in the CAD file.

The model box is defined by the bounding box of the model's active edges plus the specified margins. You can inquire the margins using M_BOX_MARGIN_....

M_BOX_OFFSET_X is updated when the margins that define the model box are changed.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse Value

Specifies the X-offset, in the user-defined units for the model.

Collapse M_BOX_OFFSET_Y +

Inquires the Y-offset of the top-left corner of the model box from the model origin.

For predefined shape models, the origin of the model is the center of the shape. For CAD-file models, the origin is the same as the one defined in the CAD file.

The model box is defined by the bounding box of the model's active edges plus the specified margins. You can inquire the margins using M_BOX_MARGIN_....

M_BOX_OFFSET_Y is updated when the margins that define the model box are changed.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse Value

Specifies the Y-offset, in the user-defined units for the model.

Collapse M_BOX_SIZE_X +

Inquires the size along the X-axis of the model box.

The model box is defined by the bounding box of the model's active edges plus the specified margins. You can inquire the margins using M_BOX_MARGIN_....

You cannot set the size of the model box; however, you can set the size of the model's bounding box when defining the model using MmodDefine(). You can also set the size of the margins using MmodControl() with M_BOX_MARGIN_....

This inquire type is only valid for synthetic models.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse Value

Specifies the X-size, in the user-defined units for the model.

Collapse M_BOX_SIZE_Y +

Inquires the size along the Y-axis of the model box.

The model box is defined by the bounding box of the model's active edges plus the specified margins. You can inquire the margins using M_BOX_MARGIN_....

You cannot set the size of the model box; however, you can set the size of the model's bounding box when defining the model using MmodDefine(). You can also set the size of the margins using MmodControl() with M_BOX_MARGIN_....

This inquire type is only valid for synthetic models.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse Value

Specifies the Y-size, in the user-defined units for the model.

Collapse M_CAD_Y_AXIS +

Inquires the direction of the Y-axis for a CAD-type model.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value. INFO

Collapse M_FLIP

Specifies to flip the Y-axis for the model so that the Y-axis is positive going down.

Collapse M_NO_FLIP

Specifies not to flip the Y-axis for the model.

Collapse M_CERTAINTY +

Inquires the certainty level for the score. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 90.0%.

Collapse 0.0 <= Value <= 100.0

Specifies the certainty level for the score, in percent. INFO

Collapse M_CERTAINTY_TARGET +

Inquires the certainty level for the target score.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 0.0%.

Collapse 0.0 <= Value <= 100.0

Specifies the certainty level for the target score, in percent. INFO

Collapse M_CHAIN_ANGLE +

Inquires the angle value of each edgel in the chains composing the model's active edges.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse UserVarPtr data type info

Data type: array of type MIL_DOUBLE
Array size: Use M_NUMBER_OF_CHAINED_EDGELS to determine the size of the array necessary to hold the chained edgel information.

Collapse Value

Specifies the angle value of the edgel.

Collapse M_CHAIN_INDEX +

Inquires the indices which differentiate each active edge's chain of edgels, for each edgel within the model. The first chain is identified as index 1, with each subsequent chain's index incremented by 1.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse UserVarPtr data type info

Data type: array of type MIL_INT
Array size: Use M_NUMBER_OF_CHAINED_EDGELS to determine the size of the array necessary to hold the chained edgel information.

Collapse Value

Specifies the index of the chain.

Collapse M_CHAIN_X +

Inquires the X-coordinates, in pixels (with subpixel accuracy), of each edgel in the chains composing the model's active edges. Coordinates are returned for all the active edge chains contained within the model and are relative to the model origin.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse UserVarPtr data type info

Data type: array of type MIL_DOUBLE
Array size: Use M_NUMBER_OF_CHAINED_EDGELS to determine the size of the array necessary to hold the chained edgel information.

Collapse Value

Specifies the X-coordinate of the edgel.

Collapse M_CHAIN_Y +

Inquires the Y-coordinates, in pixels (with subpixel accuracy), of each edgel in the chains composing the model's active edges. Coordinates are returned for all the active edge chains contained within the model and are relative to the model origin.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse UserVarPtr data type info

Data type: array of type MIL_DOUBLE
Array size: Use M_NUMBER_OF_CHAINED_EDGELS to determine the size of the array necessary to hold the chained edgel information.

Collapse Value

Specifies the Y-coordinate of the edgel.

Collapse M_CORNER_RADIUS +

Inquires the radius used to round corners of the model.

This is only valid for models of type M_RECTANGLE, M_SQUARE, M_DIAMOND, M_TRIANGLE, and M_CROSS. Attempting to call this value for any other model type will generate an error. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 0.0.

Collapse Value >= 0.0

Specifies the radius, in the user-defined units for the model. INFO

Collapse M_FIT_ERROR_WEIGHTING_FACTOR +

Inquires the contribution of the fit error in the score and target score calculation. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value. INFO

Collapse 0.0 <= Value <= 100.0

Specifies the fit error weighting factor, in percent. INFO

Collapse M_FOREGROUND_VALUE +

Inquires the foreground value of the model. The foreground is the interior of the shape.

This is only valid for predefined shape models. CAD-type models do not have a polarity. For these model types, M_ANY will be returned. SET SET SET SET SET SET SET SET

(summarize)
Collapse M_DEFAULT

Specifies the default value. INFO

Collapse M_ANY

Specifies that the model has no specific polarity. INFO

Collapse M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Collapse M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Collapse M_HEIGHT +

Inquires the height of the shape in the model.

This is only valid for a model of type M_CROSS, M_DIAMOND, M_ELLIPSE, M_RECTANGLE, and M_TRIANGLE. SET SET SET SET SET

(summarize)
Collapse Value

Specifies the height of the shape, in the user-defined units for the model.

Collapse M_HORIZONTAL_THICKNESS +

Inquires the horizontal thickness of the cross in the model.

This is only valid for a model of type M_CROSS. SET

(summarize)
Collapse Value

Specifies the horizontal thickness of the cross, in the user-defined units for the model.

Collapse M_INNER_RADIUS +

Inquires the inner radius of the ring in the model.

This is only valid for a model of type M_RING. SET

(summarize)
Collapse Value

Specifies the inner radius of the ring, in the user-defined units for the model.

Collapse M_MIN_SEPARATION_ANGLE +

Inquires the minimum angular separation required for two occurrences to be considered distinct matches. This value is an absolute angle value.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 10.0degrees.

Collapse M_DISABLE

Disables the minimum angle separation criteria. INFO

Collapse 0.0 < Value <= 180.0

Specifies the minimum angular separation required, in degrees. INFO

Collapse M_MIN_SEPARATION_SCALE +

Inquires the minimum separation required in scale for two occurrences to be considered distinct matches. This value is a scale factor. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 1.1.

Collapse M_DISABLE

Specifies to disable the minimum scale separation criteria. INFO

Collapse 1.0 < Value <= 4.0

Specifies the criteria for minimum separation in scale.

Collapse M_MIN_SEPARATION_X +

Inquires the minimum separation required along the X-axis for two occurrences to be considered distinct matches. This value is a percentage of the model's width at M_SCALE. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 10.0%.

Collapse M_DISABLE

Specifies to disable the minimum separation in X criteria. INFO

Collapse Value

Specifies the minimum separation as a percentage of the model's width at M_SCALE. INFO

Collapse M_MIN_SEPARATION_Y +

Inquires the minimum separation required along the Y-axis for two occurrences to be considered distinct matches. This value is a percentage of the model's height at M_SCALE. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 10.0%.

Collapse M_DISABLE

Specifies to disable the minimum separation in Y criteria. INFO

Collapse Value

Specifies the minimum separation as a percentage of the model's height at M_SCALE. INFO

Collapse M_MODEL_TYPE +

Inquires the type of model. SET

(summarize)
Collapse M_AUTO_DEFINE

Specifies a unique model whose features are extracted from an automatically selected region of the model source image. INFO

Collapse M_CIRCLE

Specifies a predefined circle as the model. INFO

Collapse M_CROSS

Specifies a predefined cross as the model. INFO

Collapse M_DIAMOND

Specifies a predefined diamond as the model. INFO

Collapse M_DXF_FILE

Specifies a model defined from the entities in the specified CAD DXF file. INFO

Collapse M_EDGE_RESULT

Specifies a model defined from the results of an edge extraction performed using Edge Finder. INFO

Collapse M_ELLIPSE

Specifies a predefined ellipse as the model. INFO

Collapse M_IMAGE

Specifies a model defined from the specified model source image. INFO

Collapse M_MERGE_MODEL

Specifies a model defined from two other models. INFO

Collapse M_MOD_RESULT

Specifies a model defined from a Model Finder result buffer. INFO

Collapse M_RECTANGLE

Specifies a predefined rectangle as the model. INFO

Collapse M_RING

Specifies a predefined ring as the model. INFO

Collapse M_SQUARE

Specifies a predefined square as the model. INFO

Collapse M_TRIANGLE

Specifies a predefined triangle as the model. INFO

Collapse M_NUMBER_OF_CHAINED_EDGELS +

Inquires the total number of chained edgels in the active edges of the model.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse Value

Specifies the number of chained edgels.

Collapse M_ORIGINAL_X +

Inquires the X-coordinate of the model's reference axis origin, relative to the top-left corner of the model source image. This is only valid for image-type and Edge Finder-type models.

To inquire the X-coordinate of the reference axis origin relative to the model origin, use M_REFERENCE_X.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse Value

Specifies the X-coordinate of the model's reference axis origin.

Collapse M_ORIGINAL_Y +

Inquires the Y-coordinate of the model's reference axis origin, relative to the top-left corner of the model source image This is only valid for image-type and Edge Finder-type models.

To inquire the Y-coordinate of the reference axis origin relative to the model origin, use M_REFERENCE_Y.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse Value

Specifies the Y-coordinate of the model's reference axis origin.

Collapse M_OUTER_RADIUS +

Inquires the outer radius of the ring in the model.

This is only valid for a model of type M_RING. SET

(summarize)
Collapse Value

Specifies the outer radius of the ring, in the user-defined units for the model.

Collapse M_PIXEL_SCALE +

Inquires the pixel scale of the model.

This is only valid for synthetic models.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value of the pixel scale. INFO

Collapse Value > 0.0

Specifies the pixel scale. INFO

Collapse M_POLARITY +

Inquires the expected polarity of occurrences relative to the model. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value. INFO

Collapse M_ANY

Specifies that the occurrences can be a mixture of polarities.

Collapse M_REVERSE

Specifies that the polarity of occurrences is the reverse of that of the model.

Collapse M_SAME

Specifies that the polarity of occurrences is the same as that of the model.

Collapse M_SAME_OR_REVERSE

Specifies that the polarity of occurrences can be either the same or the reverse of that of the model.

Collapse M_POSITION_DELTA_NEG_X +

Inquires the position range, in the negative X-direction relative to the nominal search position. SET SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 0.0.

Collapse M_INFINITE

Specifies the position range as the entire image plane in the negative X-direction. INFO

Collapse Value >= 0.0

Specifies the position range's negative X-offset, in pixels, and can be specified with subpixel accuracy; for an M_SHAPE_CIRCLE type of Model Finder context, the value is specified relative to the target's coordinate system.

Collapse M_POSITION_DELTA_NEG_Y +

Inquires the position range, in the negative Y-direction relative to the nominal search position. SET SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 0.0.

Collapse M_INFINITE

Specifies the position range as the entire image plane in the negative Y-direction. INFO

Collapse Value >= 0.0

Specifies the position range's negative Y-offset, in pixels, and can be specified with subpixel accuracy; for an M_SHAPE_CIRCLE type of Model Finder context, the value is specified relative to the target's coordinate system.

Collapse M_POSITION_DELTA_POS_X +

Inquires the position range, in the positive X-direction relative to the nominal search position. SET SET

(summarize)
Collapse M_DEFAULT

Same as M_INFINITE.

Collapse M_INFINITE

Specifies the position range as the entire image plane in the positive X-direction. INFO

Collapse Value >= 0.0

Specifies the position range's positive X-offset, in pixels, and can be specified with subpixel accuracy; for an M_SHAPE_CIRCLE type of Model Finder context, the value is specified relative to the target's coordinate system.

Collapse M_POSITION_DELTA_POS_Y +

Inquires the position range, in the positive Y-direction relative to the nominal search position. SET SET

(summarize)
Collapse M_DEFAULT

Same as M_INFINITE.

Collapse M_INFINITE

Specifies the position range as the entire image plane in the positive Y-direction. INFO

Collapse Value >= 0.0

Specifies the position range's positive Y-offset, in pixels, and can be specified with subpixel accuracy; for an M_SHAPE_CIRCLE type of Model Finder context, the value is specified relative to the target's coordinate system.

Collapse M_POSITION_X +

Inquires the nominal search position for the X-coordinate. SET SET

(summarize)
Collapse M_DEFAULT

Same as M_ALL.

Collapse M_ALL

Specifies all X-coordinates.

Collapse Value

Specifies the nominal search position, in pixels, and can be specified with subpixel accuracy; for an M_SHAPE_CIRCLE type of Model Finder context, the value is specified relative to the target's coordinate system.

Collapse M_POSITION_Y +

Inquires the nominal search position for the Y-coordinate. SET SET

(summarize)
Collapse M_DEFAULT

Same as M_ALL.

Collapse M_ALL

Specifies all Y-coordinates.

Collapse Value

Specifies the nominal search position, in pixels, and can be specified with subpixel accuracy; for an M_SHAPE_CIRCLE type of Model Finder context, the value is specified relative to the target's coordinate system.

Collapse M_RADIUS +

Inquires the radius of the circle in the model.

This is only valid for a model of type M_CIRCLE. SET

(summarize)
Collapse Value

Specifies the radius of the circle, in the user-defined units for the model.

Collapse M_REFERENCE_ANGLE +

Inquires the reference axis angle of the model. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 0.0degrees.

Collapse 0.0 <= Value <= 360.0

Specifies the angle, in degrees. INFO

Collapse M_REFERENCE_X +

Inquires the X-coordinate, in pixels, of the reference axis origin of the model, relative to the model origin. SET

(summarize)
Collapse M_DEFAULT

Specifies that the default X-offset will be used. INFO

Collapse Value

Specifies the X-offset value. INFO

Collapse M_REFERENCE_Y +

Inquires the Y-coordinate, in pixels, of the reference axis origin of the model, relative to the model origin. SET

(summarize)
Collapse M_DEFAULT

Specifies that the default Y-offset will be used. INFO

Collapse Value

Specifies the Y-offset value. INFO

Collapse M_SAGITTA_TOLERANCE +

Inquires the tolerance for finding deformed circles (allowable radii variation) for an M_CIRCLE type model.

This inquire type is only supported for an M_CIRCLE type model in an M_SHAPE_CIRCLE type of Model Finder context. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 25.0%.

Collapse 0.0 <= Value <= 100.0

Specifies the tolerance as a percentage of the allowable radii variation given the other Model Finder constraints. INFO

Collapse M_SCALE +

Inquires the nominal search scale. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 1.0.

Collapse Value

Specifies the value of the nominal search scale. INFO

Collapse M_SCALE_MAX_FACTOR +

Inquires the factor used to determine the upper limit (maximum permitted scale) of the scale range. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 2.0.

Collapse M_INFINITE

Specifies that the upper limit of the scale range is infinite. INFO

Collapse 1.0 <= Value <= 2.0

Specifies the factor that determines the maximum scale of the occurrence for a model in an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context.

Collapse Value >= 1.0

Specifies the factor that determines the maximum scale of the occurrence for a model in an M_SHAPE_CIRCLE type of Model Finder context.

Collapse M_SCALE_MIN_FACTOR +

Inquires the factor used to determine the lower limit (minimum permitted scale) of the scale range. SET

(summarize)
Collapse M_DEFAULT

Specifies the default value; the default value is 0.5.

Collapse 0.0 < Value <= 1.0

Specifies the factor that determines the minimum scale of the occurrence for a model in an M_SHAPE_CIRCLE type of Model Finder context.

Collapse 0.5 <= Value <= 1.0

Specifies the factor that determines the minimum scale of the occurrence for a model in an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context.

Collapse M_USER_LABEL +

Inquires the user-defined label. SET

(summarize)
Collapse M_DEFAULT

Same as M_NO_LABEL.

Collapse M_NO_LABEL

Specifies that no user label is associated with the model.

Collapse Value

Specifies the user label of the model. INFO

Collapse M_VALID +

Inquires whether the model is valid or not.

Note that a synthetic model is invalid if size of the model box * M_PIXEL_SCALE * M_SCALE is greater than 1024 pixels in the X-direction or the Y-direction.

This inquire type is not supported for a model defined in an M_SHAPE_CIRCLE type of Model Finder context.

(summarize)
Collapse M_FALSE

Specifies that the model is not valid.

Collapse M_TRUE

Specifies that the model is valid.

Collapse M_VERTICAL_THICKNESS +

Inquires the vertical thickness of the cross in the model.

This is only valid for a model of type M_CROSS. SET

(summarize)
Collapse Value

Specifies the vertical thickness of the cross, in the user-defined units for the model.

Collapse M_WIDTH +

Inquires the width of the shape in the model.

This is only valid for a model of type M_CROSS, M_DIAMOND, M_ELLIPSE, M_RECTANGLE, M_SQUARE, and M_TRIANGLE. SET SET SET SET SET SET

(summarize)
Collapse Value

Specifies the width of the shape, in the user-defined units for the model.

Combination constant for the values listed in all the parameter association tables except For inquiring about the system, For a result buffer, For user label inquires.

You can add the following value to the above-mentioned values to determine the default value of an inquire type, regardless of the current value of the inquire type.

function map For inquiring the default value of an inquire type
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_DEFAULT

Inquires the default value of the specified inquire type.

(summarize)
Collapse UserVarPtr data type info

Data type: MIL_DOUBLE

For result buffer inquiries, the InquireType parameter can be set to one of the following:

Unless otherwise specified, the following values require that you pass the UserVarPtr parameter the address of a MIL_DOUBLE.

function map For a result buffer
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_MOD_DEFINE_COMPATIBLE +

Inquires whether the information necessary to define a model from an occurrence will be saved in the result buffer.

This inquire type is not supported for an M_SHAPE_CIRCLE type of Model Finder result buffer. SET

(summarize)
Collapse M_DEFAULT

Same as M_DISABLE.

Collapse M_DISABLE

Specifies not to save any information.

Collapse M_ENABLE

Specifies to save all the necessary information.

Collapse M_RESULT_OUTPUT_UNITS +

Inquires whether results are returned in pixel or world units. SET

(summarize)
Collapse M_DEFAULT

Same as M_ACCORDING_TO_CALIBRATION.

Collapse M_ACCORDING_TO_CALIBRATION

Specifies that results are returned in world units if the result was calculated on an image associated with a calibration context; otherwise, specifies that results are returned in pixel units.

Collapse M_PIXEL

Specifies that results are returned in pixel units, with respect to the pixel coordinate system.

Collapse M_WORLD

Specifies that results are returned in world units, with respect to the relative coordinate system. INFO

For user label inquiries (that is, when the Index parameter is set to the user label of a model), the InquireType parameter can be set to the following:

Unless otherwise specified, the following values require that you pass the UserVarPtr parameter the address of a MIL_DOUBLE.

function map For user label inquires
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_INDEX_FROM_LABEL +

Inquires the model index associated with a model user label if the user label is used. Pass the user label as the Index parameter.

(summarize)
Collapse M_INVALID

Specifies that the user label is invalid. This is returned if the specified model label is not associated with a model.

(summarize)
Collapse Value

Specifies the model index that is associated with the specified user label.

You can add the following value to the above-mentioned values to determine whether an inquire type is supported.

function map For inquiring whether an inquire type is supported
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_SUPPORTED

Inquires whether the specified inquire type is supported.

(summarize)
Collapse UserVarPtr data type info

Data type: MIL_DOUBLE

Collapse 0

Specifies that the inquire type is not supported.

Collapse Value != 0

Specifies that the inquire type is supported. If the index value is different from M_ALL, the inquire type is supported for the model with the specified index value. If the index value is M_ALL, the inquire type is supported for all models. If the index value is M_CONTEXT, the inquire type is supported for the context.

(summarize)

You can add one of the following values to the above-mentioned values to cast the requested information to the required data type.

function map For specifying the data type
CollapseInquireType Description
UserVarPtr
- Possible values returned
Collapse M_TYPE_MIL_DOUBLE

Casts the requested information to a MIL_DOUBLE.

(summarize)
Collapse UserVarPtr data type info
  • Data type: array of type MIL_DOUBLE
    Array size: Depends on the inquire type.
    Note: When multiple inquires.

  • Data type: MIL_DOUBLE
    Note: When a single inquire.

Collapse M_TYPE_MIL_ID

Casts the requested information to a MIL_ID.

(summarize)
Collapse UserVarPtr data type info
  • Data type: array of type MIL_ID
    Array size: Depends on the inquire type.
    Note: When multiple inquires.

  • Data type: MIL_ID
    Note: When a single inquire.

Collapse M_TYPE_MIL_INT

Casts the requested information to a MIL_INT.

(summarize)
Collapse UserVarPtr data type info
  • Data type: array of type MIL_INT
    Array size: Depends on the inquire type.
    Note: When multiple inquires.

  • Data type: MIL_INT
    Note: When a single inquire.

Collapse M_TYPE_MIL_INT32

Casts the requested information to a MIL_INT32.

(summarize)
Collapse UserVarPtr data type info
  • Data type: array of type MIL_INT32
    Array size: Depends on the inquire type.
    Note: When multiple inquires.

  • Data type: MIL_INT32
    Note: When a single inquire.

Collapse M_TYPE_MIL_INT64

Casts the requested information to a MIL_INT64.

(summarize)
Collapse UserVarPtr data type info
  • Data type: array of type MIL_INT64
    Array size: Depends on the inquire type.
    Note: When multiple inquires.

  • Data type: MIL_INT64
    Note: When a single inquire.

Return value
The returned value is the requested information, cast to a MIL_INT. If the requested information is not a single value, this function will return M_NULL.
Compilation information
Header Include mil.h.
Library Use mil.lib; milmod.lib.
DLL Requires mil.dll; milmod.dll.
DEFAULT CONTEXT GENERAL NUMBER DEFAULT ALL OWNER SYSTEM DEFAULT HOST ACCURACY DEFAULT HIGH LOW MEDIUM ACTIVE EDGELS DEFAULT ASPECT RATIO DEFAULT CONTEXT TYPE GEOMETRIC GEOMETRIC CONTROLLED SHAPE CIRCLE DETAIL LEVEL DEFAULT HIGH MEDIUM VERY HIGH FIRST LEVEL DEFAULT AUTO LAST LEVEL DEFAULT AUTO MODIFICATION COUNT NUMBER MODELS PREPROCESSED SAVE TARGET EDGES DEFAULT DISABLE ENABLE SEARCH ANGLE RANGE DEFAULT DISABLE ENABLE SEARCH POSITION RANGE DEFAULT DISABLE ENABLE SEARCH SCALE RANGE DEFAULT DISABLE ENABLE SHARED EDGES DEFAULT DISABLE ENABLE SMOOTHNESS DEFAULT SPEED DEFAULT HIGH LOW MEDIUM VERY HIGH TARGET CACHING DEFAULT DISABLE ENABLE TIMEOUT DEFAULT DISABLE ACCEPTANCE DEFAULT ACCEPTANCE TARGET DEFAULT ALLOC OFFSET X ALLOC OFFSET Y ALLOC SIGN SIGNED UNSIGNED ALLOC SIZE BAND ALLOC SIZE BIT ALLOC SIZE X ALLOC SIZE Y ALLOC TYPE FLOAT 32 SIGNED 8 SIGNED 16 SIGNED 32 UNSIGNED 1 UNSIGNED 8 UNSIGNED 16 UNSIGNED 32 ANGLE DEFAULT ANGLE DELTA NEG DEFAULT ANGLE DELTA POS DEFAULT ASSOCIATED CALIBRATION NULL BOX MARGIN BOTTOM DEFAULT BOX MARGIN LEFT DEFAULT BOX MARGIN RIGHT DEFAULT BOX MARGIN TOP DEFAULT BOX OFFSET X BOX OFFSET Y BOX SIZE X BOX SIZE Y CAD Y AXIS DEFAULT FLIP NO FLIP CERTAINTY DEFAULT CERTAINTY TARGET DEFAULT CHAIN ANGLE CHAIN INDEX CHAIN X CHAIN Y CORNER RADIUS DEFAULT FIT ERROR WEIGHTING FACTOR DEFAULT FOREGROUND VALUE DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE HEIGHT HORIZONTAL THICKNESS INNER RADIUS MIN SEPARATION ANGLE DEFAULT DISABLE MIN SEPARATION SCALE DEFAULT DISABLE MIN SEPARATION X DEFAULT DISABLE MIN SEPARATION Y DEFAULT DISABLE MODEL TYPE AUTO DEFINE CIRCLE CROSS DIAMOND DXF FILE EDGE RESULT ELLIPSE IMAGE MERGE MODEL MOD RESULT RECTANGLE RING SQUARE TRIANGLE NUMBER OF CHAINED EDGELS ORIGINAL X ORIGINAL Y OUTER RADIUS PIXEL SCALE DEFAULT POLARITY DEFAULT ANY REVERSE SAME SAME OR REVERSE POSITION DELTA NEG X DEFAULT INFINITE POSITION DELTA NEG Y DEFAULT INFINITE POSITION DELTA POS X DEFAULT INFINITE POSITION DELTA POS Y DEFAULT INFINITE POSITION X DEFAULT ALL POSITION Y DEFAULT ALL RADIUS REFERENCE ANGLE DEFAULT REFERENCE X DEFAULT REFERENCE Y DEFAULT SAGITTA TOLERANCE DEFAULT SCALE DEFAULT SCALE MAX FACTOR DEFAULT INFINITE SCALE MIN FACTOR DEFAULT USER LABEL DEFAULT NO LABEL VALID FALSE TRUE VERTICAL THICKNESS WIDTH DEFAULT MOD DEFINE COMPATIBLE DEFAULT DISABLE ENABLE RESULT OUTPUT UNITS DEFAULT ACCORDING TO CALIBRATION PIXEL WORLD INDEX FROM LABEL INVALID SUPPORTED TYPE MIL DOUBLE TYPE MIL ID TYPE MIL INT TYPE MIL INT32 TYPE MIL INT64 AUTO DEFINE EDGE RESULT IMAGE MERGE MODEL MOD RESULT DXF FILE AUTO DEFINE EDGE RESULT IMAGE MERGE MODEL MOD RESULT DXF FILE AUTO DEFINE EDGE RESULT IMAGE MERGE MODEL MOD RESULT DXF FILE AUTO DEFINE EDGE RESULT IMAGE MERGE MODEL MOD RESULT DXF FILE RECTANGLE SQUARE DIAMOND TRIANGLE CROSS RECTANGLE SQUARE DIAMOND TRIANGLE CROSS IMAGE EDGE RESULT IMAGE EDGE RESULT DXF FILE DXF FILE CROSS CROSS RING RING CIRCLE CIRCLE RECTANGLE ELLIPSE DIAMOND TRIANGLE CROSS RECTANGLE ELLIPSE DIAMOND TRIANGLE CROSS CONTEXT GENERAL DEFAULT CONTEXT GENERAL DEFAULT