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):
- Start QGIS.
- Go to Plugins → Manage and Install Plugins….
- Go to the Settings tab and click Add… to add a new repository.
- Enter repository name, e.g. “Alex Bruy’s plugins”.
- Enter the provided repository URL.
- Click the Create a new authentication configuration button (the green plus icon).
- Enter a name for the configuration, e.g. “Alex Bruy’s plugins”.
- Select “Basic authentication” as the authemtication method.
- Provide your username and password.
- Click Save to close the Add or Edit Authentication Configuration dialog.
- Click OK to close the Repository details dialog.
- Go to the All tab.
- 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.

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.

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.

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.
Note
You can easily switch between compact and full mode of the SIDC editor by using a small toggler on the right side of the SIDC field.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.
Note
Please keep in mind that OCA setting here only affects the symbol preview within the editor widget. Behavior of the renderer must be configured separately as described in the “Renderer” section above.Here is a small demo of the SIDC editor in action

Reporting bugs
Please report bugs and submit feature requests by email.