MIL-STD-2525 renderer

MIL-STD-2525 renderer adds a renderer for point layers to draw NATO APP-6D/DOD MIL-STD-2525D symbols based on Symbol Identification Codes (SIDC). It also includes as an editor widget to easily create and edit these codes.

Installation

Due to the ongoing war in my country, the plugin is available via a restricted repository. Access to the repository is granted on a case-by-case basis at the developer’s sole discretion, with priority given to armed forces personnel. If you are interested in this plugin, please get in touch. Please note, that sending a request does not guarantee access. I reserve the right to ask for verification of affiliation with the Ukrainian Armed Forces or other relevant defense organizations.

To install the plugin, please follow these steps (for more details, see the QGIS User Guide):

  1. Start QGIS.
  2. Go to PluginsManage and Install Plugins….
  3. Go to the Settings tab and click Add… to add a new repository.
  4. Enter repository name, e.g. “Alex Bruy’s plugins”.
  5. Enter the provided repository URL.
  6. Click the Create a new authentication configuration button (the green plus icon).
  7. Enter a name for the configuration, e.g. “Alex Bruy’s plugins”.
  8. Select “Basic authentication” as the authemtication method.
  9. Provide your username and password.
  10. Click Save to close the Add or Edit Authentication Configuration dialog.
  11. Click OK to close the Repository details dialog.
  12. Go to the All tab.
  13. Search for MIL-STD-2525 renderer, select the plugin in the list and click Install Plugin.

Usage

Once installed and enabled, the MIL-STD-2525 renderer plugin adds a vector layer renderer and an editor widget to QGIS.

Renderer

To use the renderer, select a point layer in the QGIS layer tree and open its properties. Go to the “Symbology” tab and change renderer to the “MIL-STD-2525” using the corresponding combobox. Alternatively, you can set renderer via the “Layer Styling Panel”.

The MIL-STD-2525 renderer has a few configuration options.

MIL-STD-2525 renderer settings
MIL-STD-2525 renderer settings

In the “SIDC Field” selector choose an existing attribute with SIDC associated with each feature. If you prefer alternate representation of operational condition amplifiers (OCA), check the “Alternate representation for operational condition amplifiers” checkbox right below the SIDC field selector.

The rest of the renderer options are pretty standard: symbol opacity, symbol size, and display units to use.

When the renderer is configured, apply the changes and close the layer properties window. If a feature has a valid SIDC value, it will be rendered accordingly. Features with an empty or invalid SIDC will be rendered using the default question mark symbol.

Points rendered with NATO APP-6D/MIL-STD-2525D symbols
Points rendered with NATO APP-6D/MIL-STD-2525D symbols

Editor widget

To make SIDC editing easier and less error-prone, the plugin provides a SIDC editor widget. The widget offers a real-time symbol preview and a user-friendly way to edit/build a SIDC by selecting required code components from comboboxes.

To use the widget open layer properties dialog and go to the “Attribute Form” tab. Select the field containing SIDC values in the “Available widgets” list and in the “Widget type” group on the right choose “SIDC” from a combobox.

The SIDC editor widget has a couple of options affecting its behaviour.

SIDC editor settings
SIDC editor settings

By default, to preserve screen space, the SIDC widget uses a compact mode when only a symbol preview and a SIDC value are shown. To show all SIDC components by default check the “Show editor UI by default” checkbox.

Similarly to the renderer, the “Alternate representation for operational condition amplifiers” checkbox in the editor widget settings allows to switch between default and alternate representation of operational condition amplifiers (OCA) for the symbol preview.

Here is a small demo of the SIDC editor in action

SIDC editor in action
SIDC editor in action

Reporting bugs

Please report bugs and submit feature requests by email.