Filters
Filter values by
Model Finder object type
  • Geometric Model Finder context
  • Controlled geometric Model Finder context
  • Circle shape Model Finder context
  • Elliptical shape Model Finder context
  • Rectangular shape Model Finder context
  • Segment shaped Model Finder context
| Customize Help
| Save Settings

MmodDefine



Function Map
Synopsis
Add a model to, or delete a model from, a Model Finder context.
Syntax
void MmodDefine(
MIL_ID ContextId, //in
MIL_INT64 ModelType, //in
MIL_DOUBLE Param1, //in
MIL_DOUBLE Param2, //in
MIL_DOUBLE Param3, //in
MIL_DOUBLE Param4, //in
MIL_DOUBLE Param5 //in
)
Description

This function allows you to add a model to, or delete a model from, a Model Finder context. To an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context, you can add a model from an image, from a result buffer, from two other models, or you can add a synthetic model. Image-type, result-type, merge-type, and synthetic models can be mixed in the same Model Finder context. To an M_SHAPE_... type of Model Finder context, you can only add a single synthetic model of the same type (for example, to an M_SHAPE_CIRCLE type of context, you can only add a single synthetic M_CIRCLE model).

There are two types of image-type models: models for which you manually define their location in the model source image (M_IMAGE), and models that MIL automatically defines from the model source image (M_AUTO_DEFINE). M_AUTO_DEFINE defines a unique model by searching the model source image for unique geometric features. MmodDefine() can define an automatic model based on default settings. To have specified settings taken into account during model definition, you must allocate an empty image-type model using M_AUTO_DEFINE, set the appropriate control types using MmodControl(), and then call MmodControl() with M_AUTO_DEFINE. It can take several seconds to find the best model (or more for large or small images). To be useful, the model source image should be a typical target image; otherwise, the selected area for the model might never be present in the target image. For more information on defining a model automatically, see the Image-type models subsection of the Defining and adding models to your Model Finder context section of Chapter 8: Geometric Model Finder.

There are two types of result-type models: models defined from an Edge Finder result buffer (Edge Finder-type models), and models defined from a Model Finder result buffer (Model Finder-type model).

Merge-type models are composed of the edges of two different models. When you define a merge-type model, the two models from which it is merged are not affected.

There are two types of synthetic models: models of a predefined shape (predefined-shape models) and models defined from a CAD DXF file (CAD-file models). Use MmodDefineFromFile() to define a CAD-file model.

By default, synthetic models are defined to have a 10% margin around the bounding box of their active edges. For a model in an M_SHAPE_... type of Model Finder context, this margin is used for drawing. For a model in an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED context, any extra edges found in this area, when finding an occurrence, will reduce the target score. Regardless of the context, you can change the size of the margins with the MmodControl() M_BOX_MARGIN_... control types.

How you specify the dimensions of synthetic models depends on the type of context:

  • For an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context, specify the dimensions of synthetic models in user-defined units. Then, specify the ratio between model units and pixel units using MmodControl() with M_PIXEL_SCALE. If the target is not calibrated, then M_PIXEL_SCALE is used for the match. If the target is calibrated, the model units should be the same as the calibrated units. If the target is calibrated, M_PIXEL_SCALE will be used for draw operations, but not for the match nor the returned results. If you are searching for a synthetic model in a calibrated target, you must also associate the camera calibration context of the target with the model, using M_ASSOCIATED_CALIBRATION. MIL needs the camera calibration context for internal purposes at preprocessing time. MIL will not use the camera calibration context to compensate for incongruencies between the model and the target, nor will MIL map the model's coordinate system to that of the target.

    After you have specified your pixel scale and scale settings, you can verify if your synthetic models are valid, using MmodInquire() with M_VALID. Synthetic models can be invalid if their global size in X or Y (size of the model box * M_PIXEL_SCALE * M_SCALE) is greater than 1024.

  • For an M_SHAPE_... type of Model Finder context, specify the dimensions of the synthetic models in the units of the target; M_PIXEL_SCALE and M_ASSOCIATED_CALIBRATION are not used.

If the image or the result buffer used to define the model is calibrated, then that camera calibration context is automatically associated with the model. Models can use different camera calibration contexts within the same Model Finder context, provided all camera calibrations map to the same world. All image-type or result-type models must be either calibrated or not.

When a call to MmodFind() is made, all models that are part of the specified context are searched for simultaneously in the target.

Note, when a model is added or deleted, the Model Finder context must be preprocessed again, using MmodPreprocess().

The search is performed according to the general search settings specified in the Model Finder context (M_CONTEXT), as well as the individual model search settings. Both the context and individual model search settings can be specified using MmodControl().

The model index starts at 0, and each subsequent model added to the Model Finder context is given a sequential index number, in the order that the model was added. If a model is deleted, all entries with higher indices are shifted down one.

For more information on defining models, see the Guidelines for choosing models section of Chapter 8: Geometric Model Finder.

Note that when using a C compiler (not a C++ or other compiler) in 64-bit mode, MmodDefine() internally calls the MIL_DOUBLE version of this function (MmodDefineDouble()). If you need to pass integer values, call the MIL_INT64 version of this function (MmodDefineInt64()).
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 which MIL system’s documentation you should use in its place and any possible differences.
Parameters
This function is not supported on the selected boards.
This function reference has not been updated for the selected MIL system. To show the content of this page, choose a second MIL system; refer to the MIL system's release note to see which MIL system’s documentation to choose and any possible differences.
Parameters
ContextId

Specifies the Model Finder context to which to add, or from which to delete, the model. The Model Finder context must have been previously allocated on the required system using MmodAlloc().

ModelType INQ

Specifies the type of model to define when adding models to the context, or specifies to delete a model from the Model Finder context.

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

Param1

Specifies an attribute of the model to add. Its definition is dependent on the model type chosen.

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

Param2

Specifies an attribute of the model to add. Its definition is dependent on the model type chosen.

Set this parameter to M_DEFAULT if not used.

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

Param3

Specifies an attribute of the model to add. Its definition is dependent on the model type chosen.

Set this parameter to M_DEFAULT if not used.

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

Param4

Specifies an attribute of the model to add. Its definition is dependent on the model type chosen.

Set this parameter to M_DEFAULT if not used.

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

Param5

Specifies an attribute of the model to add. Its definition is dependent on the model type chosen.

Set this parameter to M_DEFAULT if not used.

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

The tables below list possible values for the ModelType, Param1, Param2, Param3, Param4, and Param5 parameters.

To add a model to the context, the ModelType, Param1, Param2, Param3, Param4, and Param5 parameters can be set to the following values. Note that any unused parameters should be set to M_DEFAULT.

function map For adding a model to the context
Click to summarize
ModelType
Description
Param1
Param2
Param3
Param4
Param5
Click to summarize M_AUTO_DEFINE

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

To define a model automatically based on specified control settings, call this function with Param1 set to M_NULL. Then, specify control settings using MmodControl(). Once the controls are set, define the model using MmodControl() with M_AUTO_DEFINE.

To define a model automatically based on default control settings, call this function with Param1 set to the identifier of the model source image.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the identifier of the image buffer or specifies to define an empty model.

(summarize)
Click to summarize M_NULL

Specifies that an empty model should be defined.

Click to summarize Source image identifier

Sets the identifier of the image buffer (model source image) from which to extract a unique model. The image buffer must be a 1-band 8-bit unsigned buffer. This image buffer must not have a region of interest (ROI) associated with it. Using an image buffer with an ROI will cause an error.

(summarize)
Click to summarize Param2

Sets the maximum displacement (shift), in the horizontal direction, expected between the position of the model in the source image and the position of the model when found in the target image. This information is used to select a model that is far enough from the image borders to be present in the target images.

(summarize)
Click to summarize M_DEFAULT

Selects a model from anywhere in the whole width of the image.

Click to summarize Value

Specifies the maximum expected pixel displacement in the horizontal direction.

Click to summarize Param3

Sets the maximum displacement (shift), in the vertical direction, expected between the position of the model in the source image and the position of the model when found in the target image. This information is used to select a model that is far enough from the image borders to be present in the target images.

(summarize)
Click to summarize M_DEFAULT

Selects a model from anywhere in the whole height of the image.

Click to summarize Value

Specifies the maximum expected pixel displacement in the verical direction.

Click to summarize M_CIRCLE

Specifies a predefined circle as the model.

This type of model is only supported for an M_SHAPE_CIRCLE, M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context.

(summarize)
Click to summarize Param1

Sets the foreground color of the circle. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies the default value.

For an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context, the default value is M_ANY.

For an M_SHAPE_CIRCLE type of Model Finder context, the default value is M_FOREGROUND_BLACK.

(summarize)
Click to summarize M_ANY

Specifies that the model has no specific polarity.

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

(summarize)
Click to summarize M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Click to summarize M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Click to summarize Param2

Sets the radius of the circle. INQ

(summarize)
Click to summarize M_CROSS

Specifies a predefined cross as the model.

You can round the corners of this model using MmodControl() with M_CORNER_RADIUS.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the foreground color of the cross. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ANY.

Click to summarize M_ANY

Specifies that the model has no specific polarity.

Click to summarize M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Click to summarize M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Click to summarize Param2

Sets the width of the cross. INQ

(summarize)
Click to summarize Param3

Sets the height of the cross. INQ

(summarize)
Click to summarize Param4

Sets the horizontal thickness of the cross. INQ

(summarize)
Click to summarize Param5

Sets the vertical thickness of the cross. INQ

(summarize)
Click to summarize M_DIAMOND

Specifies a predefined diamond as the model.

You can round the corners of this model using MmodControl() with M_CORNER_RADIUS.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the foreground color of the diamond. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ANY.

Click to summarize M_ANY

Specifies that the model has no specific polarity.

Click to summarize M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Click to summarize M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Click to summarize Param2

Sets the width of the diamond. INQ

(summarize)
Click to summarize Param3

Sets the height of the diamond. INQ

(summarize)
Click to summarize M_EDGE_RESULT

Defines a model from the results of an edge extraction performed using Edge Finder.

To define a model from an Edge Finder result buffer, the buffer must have been previously allocated using MedgeAllocResult(). MedgeCalculate() must have been already called. In addition, the Edge Finder result buffer must be compatible with the Model Finder context. Enable compatibility using MedgeControl() with M_MODEL_FINDER_COMPATIBLE prior to calling MedgeCalculate().

The model is defined to have all currently included edges in the result buffer.

In the case of an Edge Finder-type model, the model source image is the image from which the Edge Finder results were obtained.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the identifier of the Edge Finder result buffer. The Edge Finder result buffer (Param1) must be allocated on the same system as the Model Finder context (ContextId). If it is not, an error will occur.

(summarize)
Click to summarize Param2

Sets the X-offset of the model origin from the model source image.

(summarize)
Click to summarize M_DEFAULT

Specifies that the X-offset of the model origin is the origin of the model source image. The X-offset is 0.

(summarize)
Click to summarize Value

Specifies the X-offset of the model origin in the model source image, in pixels.

Click to summarize Param3

Sets the Y-offset of the model origin from the model source image.

(summarize)
Click to summarize M_DEFAULT

Specifies that the Y-offset of the model origin is the origin of the model source image. The Y-offset is 0.

(summarize)
Click to summarize Value

Specifies the Y-offset of the model origin in the model source image, in pixels.

Click to summarize Param4

Sets the width of the model.

(summarize)
Click to summarize M_DEFAULT

Specifies that the width of the model is the width of the model source image.

Click to summarize 16.0 <= Value <= 1024.0

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

Click to summarize Param5

Sets the height of the model.

(summarize)
Click to summarize M_DEFAULT

Specifies that the height of the model is the height of the model source image.

Click to summarize 16.0 <= Value <= 1024.0

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

Click to summarize M_ELLIPSE

Specifies a predefined ellipse as the model.

Note that when specifying this type of model using an M_SHAPE_ELLIPSE type of Model Finder context, the width of the model must be larger than or equal to the height.

This type of model is only supported for an M_SHAPE_ELLIPSE, M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context.

(summarize)
Click to summarize Param1

Sets the foreground color of the ellipse. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies the default value.

For an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context, the default value is M_ANY.

For an M_SHAPE_ELLIPSE type of Model Finder context, the default value is M_FOREGROUND_BLACK.

(summarize)
Click to summarize M_ANY

Specifies that the model has no specific polarity.

This setting is not supported for an M_SHAPE_ELLIPSE type of Model Finder context.

(summarize)
Click to summarize M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Click to summarize M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Click to summarize Param2

Sets the width of the ellipse. For an M_SHAPE_ELLIPSE type of Model finder context, the width must be greater or equal to the height. INQ

(summarize)
Click to summarize Param3

Sets the height of the ellipse. INQ

(summarize)
Click to summarize M_IMAGE

Defines a model from the specified model source image. The default settings use the entire image as the model. For image-type models, the minimum and maximum model sizes are 16.0 x 16.0 and 4096.0 x 4096.0 pixels, respectively.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the identifier of the image buffer (model source image) from which to extract the model. The image buffer must be a 1-band 8-bit unsigned buffer.

You can specify an image buffer (model source image) that is associated to an ROI that was set using a rotated rectangle in a 2D graphics list. To add a rotated rectangle to a 2D graphics list, you can call MgraRectAngle(); to set (associate) that rectangle as the ROI of an image buffer, you can call MbufSetRegion() with M_RASTERIZE or M_NO_RASTERIZE and M_FILL_REGION. If the region is a non-rectangular shape, you will get an error. When specifying an image buffer (model source image) that is associated to an ROI, you must set Param2, Param3, Param4, and Param5 to M_DEFAULT.

(summarize)
Click to summarize Param2

Sets the X-offset of the model origin from the model source image. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies that the X-offset of the model origin is the origin of the model source image. The X-offset is 0.

(summarize)
Click to summarize Value

Specifies the X-offset of the model origin in the source image, in pixels.

Click to summarize Param3

Sets the Y-offset of the model origin. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies that the Y-offset of the model origin is the origin of the model source image. The Y-offset is 0.

(summarize)
Click to summarize Value

Specifies the Y-offset of the model origin in the source image, in pixels.

Click to summarize Param4

Sets the width of the model. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies that the width of the model is the distance from the origin of the model to the edge of the image in the X-direction.

Click to summarize 16.0 <= Value <= 4096.0

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

Click to summarize Param5

Sets the height of the model. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies that the height of the model is the distance from the origin of the model to the edge of the image in the Y-direction.

Click to summarize 16.0 <= Value <= 4096.0

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

Click to summarize M_MERGE_MODEL

Defines a model from two other models. These models have to be in the same Model Finder context.

The model is defined with the edges of the first model and the edges of the second model that are not equal to the edges of the first model.

The size of the merge-type model is the size of the first model. To include all of the edges of both models in the new model, set the first parameter to the index of the larger model.

If the models being merged are calibrated, the new merge-type model will be associated with the camera calibration context of the first model.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the index of the first model. User labels cannot be used as indices; to retrieve the index of a model from its user label, use MmodInquire() with M_INDEX_FROM_LABEL.

(summarize)
Click to summarize Param2

Sets the index of the second model. User labels cannot be used as indices; to retrieve the index of a model from its user label, use MmodInquire() with M_INDEX_FROM_LABEL.

(summarize)
Click to summarize M_MOD_RESULT

Defines a model from a Model Finder result buffer.

The model is defined with the edges of the target at the position of the specified occurrence.

To define a model from a Model Finder result buffer, enable MmodControl() with M_MOD_DEFINE_COMPATIBLE. In the case of a Model Finder-type model, the model source image is the target from which the results were obtained.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the identifier of the Model Finder result buffer. The Model Finder result buffer must be allocated on the same system as the Model Finder context (ContextId). If it is not, an error will occur.

(summarize)
Click to summarize Param2

Sets the index of the occurrence.

(summarize)
Click to summarize M_RECTANGLE

Specifies a predefined rectangle as the model.

If adding the model to an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED context, you can round the corners of this model using MmodControl() with M_CORNER_RADIUS.

This type of model is only supported for an M_SHAPE_RECTANGLE, M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context.

(summarize)
Click to summarize Param1

Sets the foreground color of the rectangle. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies the default value.

For an M_GEOMETRIC or M_GEOMETRIC_CONTROLLED type of Model Finder context, the default value is M_ANY.

For an M_SHAPE_RECTANGLE type of Model Finder context, the default value is M_FOREGROUND_BLACK.

(summarize)
Click to summarize M_ANY

Specifies that the model has no specific polarity.

This setting is not supported for an M_SHAPE_RECTANGLE type of Model Finder context.

(summarize)
Click to summarize M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Click to summarize M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Click to summarize Param2

Sets the width of the rectangle. For an M_SHAPE_RECTANGLE type of Model finder context, the width must be greater or equal to the height. INQ

(summarize)
Click to summarize Param3

Sets the height of the rectangle. INQ

(summarize)
Click to summarize M_RING

Specifies a predefined ring as the model.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the foreground color of the ring. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ANY.

Click to summarize M_ANY

Specifies that the model has no specific polarity.

Click to summarize M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Click to summarize M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Click to summarize Param2

Sets the radius of the inner ring. INQ

(summarize)
Click to summarize Param3

Sets the radius of the outer ring. INQ

(summarize)
Click to summarize M_SEGMENT

Specifies a predefined segment as the model.

This type of model is only supported for an M_SHAPE_SEGMENT type of Model Finder context.

(summarize)
Click to summarize Param1

Sets the length of the segment. INQ

(summarize)
Click to summarize M_SQUARE

Specifies a predefined square as the model.

You can round the corners of this model using MmodControl() with M_CORNER_RADIUS.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the foreground color of the square. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ANY.

Click to summarize M_ANY

Specifies that the model has no specific polarity.

Click to summarize M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Click to summarize M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Click to summarize Param2

Sets the width and height of the square. INQ

(summarize)
Click to summarize M_TRIANGLE

Specifies a predefined triangle as the model.

You can round the corners of this model using MmodControl() with M_CORNER_RADIUS.

This type of model is not supported for M_SHAPE_... type of Model Finder contexts.

(summarize)
Click to summarize Param1

Sets the foreground color of the triangle. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ANY.

Click to summarize M_ANY

Specifies that the model has no specific polarity.

Click to summarize M_FOREGROUND_BLACK

Specifies that black is the foreground color of the model.

Click to summarize M_FOREGROUND_WHITE

Specifies that white is the foreground color of the model.

Click to summarize Param2

Sets the width of the triangle. INQ

(summarize)
Click to summarize Param3

Sets the height of the triangle. INQ

(summarize)

The following ModelType parameter setting can be used to remove a model from the context.

Note that any unused parameters should be set to M_DEFAULT.

function map For removing a model from the context
Click to summarize
ModelType
Description
Param1
Param2
Param3
Param4
Param5
Click to summarize M_DELETE

Deletes the specified model from the context.

(summarize)
Click to summarize Param1

Sets the model index. User labels cannot be used as indices; to retrieve the index of a model from its user label, use MmodInquire() with M_INDEX_FROM_LABEL.

(summarize)
Type-specific versions of the function when using a C compiler under 64-bit
void MmodDefineInt64 (MIL_ID ContextId, MIL_INT64 ModelType, MIL_INT64 Param1, MIL_DOUBLE Param2, MIL_DOUBLE Param3, MIL_DOUBLE Param4, MIL_DOUBLE Param5)
Parameters

ContextId

See ContextId of the main function for a description.

ModelType

See ModelType of the main function for a description.

Param1

See Param1 of the main function for a description.

Param2

See Param2 of the main function for a description.

Param3

See Param3 of the main function for a description.

Param4

See Param4 of the main function for a description.

Param5

See Param5 of the main function for a description.

void MmodDefineDouble (MIL_ID ContextId, MIL_INT64 ModelType, MIL_DOUBLE Param1, MIL_DOUBLE Param2, MIL_DOUBLE Param3, MIL_DOUBLE Param4, MIL_DOUBLE Param5)
Parameters

ContextId

See ContextId of the main function for a description.

ModelType

See ModelType of the main function for a description.

Param1

See Param1 of the main function for a description.

Param2

See Param2 of the main function for a description.

Param3

See Param3 of the main function for a description.

Param4

See Param4 of the main function for a description.

Param5

See Param5 of the main function for a description.

Compilation information
Header Include mil.h.
Library Use mil.lib; milmod.lib.
DLL Requires mil.dll; milmod.dll.
AUTO DEFINE NULL UNSIGNED PROC NONE DEFAULT DEFAULT CIRCLE DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE CROSS DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE DIAMOND DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE EDGE RESULT ENABLE DEFAULT DEFAULT DEFAULT DEFAULT ELLIPSE DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE IMAGE NONE DEFAULT DEFAULT DEFAULT DEFAULT MERGE MODEL MOD RESULT ENABLE RECTANGLE DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE RING DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE SEGMENT SQUARE DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE TRIANGLE DEFAULT ANY FOREGROUND BLACK FOREGROUND WHITE DELETE