Model a Tactical Graphic
A tactical graphic is an Object with control-measure semantics, source geometry, and optional MIL-STD-2525 symbology. The Object is the authoritative operational record; a compatible client uses the SIDC, geometry, and modifiers to render the graphic.
What makes a tactical graphic
A tactical graphic uses these fields together:
-
Set
ontology.categorytoONTOLOGY_CATEGORY_CONTROL_MEASUREand useontology.typefor a useful semantic name. -
Put the points or parameters authored by the source in
shape. -
Put the revision-specific symbol code in
symbology.sidcand setsymbology.versionto the revision that defines that encoding. -
Put display values such as designation, distance, azimuth, altitude, and effective time in the modifier fields that the current
Symbologycontract supports for that revision.
The points in shape do not change just because you use a different 2525 revision.
Charlie, Delta, and Echo encode the symbol differently, but shape still holds the original points or parameters.
Because the available graphics and modifier fields can change between revisions, keep the SIDC, version, and modifiers from the same revision.
Check the public WDM module to see which revisions and fields your WDM version supports.
Store only the points supplied by the authoring system.
Do not add points that a renderer generates to draw arrowheads, curves, outlines, or corridor edges.
Different renderers may draw those details differently.
Keeping them out of shape lets every client start from the same source geometry.
Choose the construction geometry
These examples show common ways to represent tactical graphics in WDM.
| MIL-STD-2525 defines many other graphics, each with its own construction rules. This table is not exhaustive. |
For another graphic, follow the selected revision’s construction-point rules and choose the shape variant that preserves the authored points or parameters.
| Graphic | Shape | Modeling rule |
|---|---|---|
Ambush. |
|
Store the ordered control points defined by the symbol’s 2525 construction rule. |
Axis of advance, including airborne variants. |
|
Store the authored path or control points. The SIDC determines the arrow and other rendered decoration. |
Air corridor. |
|
Store the corridor centerline as ordered positions and encode its width using the selected revision’s modifier representation. The 2525C example below uses |
Assembly area or another authored closed boundary. |
|
Store the exterior ring and any holes. Close each ring and follow the winding rules in |
Circular or rectangular control measure. |
|
Use the parametric geometry when the source defines the measure by center, radius, centerline, or width. |
Some tactical graphics render as filled areas even though their source construction is an open sequence of control points.
Use shape.polyline for those graphics unless the source actually supplied a closed boundary.
Example 2525C air corridor
This example intentionally uses MIL-STD-2525C.
Its symbology.sidc value is a 15-character Charlie code, so the matching version is SIDC_VERSION_2525C.
The Object also carries the corridor centerline and a 2,000-meter width in the Charlie distance modifier.
For a later revision, keep the same Object and shape pattern but supply that revision’s SIDC, version value, and supported display data.
{
"id": "air-corridor-blue",
"security": {
"raw": "U"
},
"name": "Air Corridor Blue",
"ontology": {
"category": "ONTOLOGY_CATEGORY_CONTROL_MEASURE",
"type": "air_corridor"
},
"shape": {
"polyline": {
"positions": [
{
"latitudeDegrees": 34.9472,
"longitudeDegrees": 36.7124
},
{
"latitudeDegrees": 35.0821,
"longitudeDegrees": 36.9315
},
{
"latitudeDegrees": 35.2194,
"longitudeDegrees": 37.1842
}
]
}
},
"assessment": {
"affiliation": "AFFILIATION_FRIEND"
},
"symbology": {
"sidc": "GFGPALC---****X",
"version": "SIDC_VERSION_2525C",
"modifiers": {
"uniqueDesignation": "AC BLUE",
"distance": [
2000.0
]
}
},
"provenance": {
"name": "Airspace Control Plan",
"producer": "mission-planning-adapter",
"updatedAt": "2026-09-14T18:33:36Z"
}
}
WDM transports the information needed to render this graphic, but it does not prescribe a rendering library. A client that does not implement multi-point 2525 graphics can still display or reason over the stored centerline and metadata.
The full contracts are in the public WDM module, primarily raft/wdm/v1/object.proto, spatial.proto, symbology.proto, and ontology.proto.