Customizing the Annotation Editor - Intergraph Smart 3D - Reference Data

Intergraph Smart 3D Structural Manufacturing Reference Data

Language
English
Product
Intergraph Smart 3D
Subproduct
Structural Manufacturing
Search by Category
Reference Data
Smart 3D Version
12 (2018)

Annotation Editor Configuration File

The Annotation Editor configuration file is named SMS_ANNOTATION.xml. All of the property definitions are referenced through the SMS_PROPERTIES.xml file using the keyword node names <INCLUDE_PROPERTY> or <INCLUDE_GROUP>.

The configuration files are created and stored in the [Product Folder]\SharedContent\StructManufacturing\SMS_SCHEMA folder.

If the Annotation Editor is unable to locate the configuration file, it runs in Read-only mode.

Basic XML Structure

The root node of the configuration file is <SMS_OUTPUT_ANNOTATION>. At the highest level, the configuration file is divided into categories for each type of annotation output.

<OUTPUT_ANNOTATION> contains the settings for the text arguments and geometry arguments used to construct the annotation object.

Each annotation type XML node looks similar to the following figure:

(VB6)

(.NET)|

  • The first node in <SMS_OUTPUT_ANNOTATION> is <SMS_PLACEMENT>. This node acts as a container for the <CONDITION> nodes. These nodes are referenced through the <INCLUDE_CONDITION> node.

  • The definitions of <CONDITION> are defined in <ANNOTATION_ATTRIBUTE_CONTROL>/<PLACEMENTENT_CONDITIONS>/<CONDITION>. The following example shows several <CONDITION> definitions for the local and global axis control, at 45 degree increments.

    CONDITION Example

  • AXIS="Local" - Uses the coordinate system defined by the object against which the annotation is being placed to define the orientation and rotation of the annotation object. Each annotation is rotated according to the specified angle in relation to the curve.

    Annotation Rotation Example

  • AXIS="Global" - Uses the drawings coordinate system to define the orientation and rotation of the annotation object. Each annotation is always rotated according to the specified angle regardless of the geometry it is placed on or where it is placed in the drawing.

    Annotation Rotation Example - Global

SMS_INPUT_ARGS

This group contains two sets of nodes that are important to the annotation functionality: <SMS_TEXT_ARGS> and <SMS_GEOM_ARGS>.

  • <SMS_TEXT_ARGS> defines the text properties of the annotation and system-level properties that are unavailable to the user, such as GEOM2D_GUID.

    These are all system-level properties. They reference the SMS_PROPERTIES.xml file through a reference key-word of either <INCLUDE_PROPERTY> or <INCLUDE_GROUP>. In the case of <INCLUDE_GROUP>, it is referencing a node collection <ANNOTATION_ATTRIBUTE_CONTROL>/<ATTRIBUTE_GROUPS>/<ATTRIBUTE_GROUP> where the purpose is specified by the system depending on the type of part. In this way, <INCLUDE_PROPERTY> can be added conditionally for profiles but not for plates.

    If you want to provide different default values for a given annotations type, you can specify a new value and the software uses it as the default and over-writes any defaults that are defined in the SMS_PROPERTIES.xml file. In the following example, several attributes of the property are over-ridden. (VALUE, READONLY, UNIT, UNIT_TYPE):

    SMS_TEXT_ARGS Example

    Additional optional attributes that you can use are:

SOURCE

Defines how an annotation property is inherited from the currently selected object. If you create a new annotation, and the property that annotation should inherit from is ambiguous, this attribute is used.

DISPLAY_UNIT

An alternative display unit override. Normally the system displays units defined by the Units of Measure service which you set by using the S3D Options dialog box from the 3D View menu. However, if you specify DISPLAY_UNIT, the unit is converted into this unit for display in the various grid views.

DISPLAY_PRECISION

An alternative display precision. Normally, the system displays two digits past the decimal point for a given numerical value. The value that is stored on the object is rounded to fit this requirement for display purposes. The values on the objects are stored with full precision; they are only rounded for display. However, if you specify DISPLAY_PRECISION, then the value is rounded with this many significant figures past the decimal point.

SHEET_UNIT

An alternative display unit override that overrides DISPLAY_UNIT when the values are converted for display in the Part Monitor sheet header. If DISPLAY_UNIT is not specified, then SHEET_UNIT overrides the display units for the sheet header to the specified unit. All other grid views still display the system defined units.

SHEET_PRECISION

An alternative display precision that overrides DISPLAY_PRECISION when the values are for display in the Part Monitor sheet header. If DISPLAY_PRECISION is not specified, then SHEET_PRECISION overrides the precision for the sheet header of the values. All other grid views still display the default two units of precision.

DISPLAY_UNIT, DISPLY_PRECISION, SHEET_UNIT, and SHEET_PRECISION can also be specified in the SMS_PROPERTIES.xml file so that that they apply to all instances where the property definition is used.

  • <SMS_GEOM_ARGS> defines the geometry properties of the annotation, such as text offset and linear and angular dimensions and relationships. This determines how the annotation is drawn.

  • The TextSize parameter determines the default size and scale of the annotation. You can change this value in the Annotation Editor by increasing or decreasing the text size for a given annotation entity, but this is where the default value is determined for a given annotation type.

  • Both of the SMS_INPUT_ARG Property node groups are used by, and highly integrated with, the Annotation Symbols rules.