{"name": "Military Cartography Tools", "package_name": "MilitaryCartographyTools", "version": "1.1.0", "experimental": false, "qgis_min": "3.44.0", "qgis_max": "4.99.0", "downloads": 99, "uploaded_by": "kattapraveen", "upload_datetime": "2026-08-18T12:18:18.632528", "changelog": "1.1.0\n- Renamed in two Entity dropdowns: what the Land Installation and\nActivities layers called \"Law Enforcement Vessel\" is Coast Guard,\nwhich is what the standard prints for that code and what the\nplugin has always drawn. If you picked that entry before, your\nsymbol is unchanged and was always correct - only the name in the\nlist was wrong. The genuine Law Enforcement Vessel, on the Sea\nSurface layer, is untouched.\n- Land Equipment's law-enforcement entities were missing eight of\ntheir twelve: ATF, Department of Justice, FBI, Police, Secret\nService, TSA, Coast Guard and US Marshals Service have been\nadded alongside the Border Patrol, Customs and DEA entries that\nwere already there.\n- Land Installation gained the two it was missing, ATF and Police,\ncompleting that layer's law-enforcement list as well.\n- Corrected two names that read \"Agency\" where the standard reads\n\"Administration\" - Drug Enforcement Administration (DEA) and\nTransportation Security Administration (TSA). Symbols unchanged.\n- The test suite now runs against QGIS 4.2.1 alongside 3.44.12.\n- Added MIL-STD-2525E and APP-6E tactical graphics support, alongside\nthe existing MIL-STD-2525D/APP-6D symbology, via a new \"Symbology\nEdition\" toolbar menu. This picks which standard NEWLY added\nsymbology layers are built against; a layer already in a project\nis never changed by switching it, and a layer created before this\nexisted keeps working exactly as before (it is read as 2525D,\nwhich is what it always was). Adding the same layer type under\nboth editions now works side by side in one project - they get\ndistinct names, e.g. \"Air (2525D/6D)\" and \"Air (2525E/6E)\".\n- Land Unit's own Sector 1/Sector 2 modifier dropdowns are now\navailable on the Land Unit layer (133 codes), matching the\nexisting modifier dropdowns already on Land Civilian, Equipment\nand Installation.\n- Fixed a real, if narrow, correctness bug in a third-party library\nthis plugin bundles: 8 of Land Unit's own Sector 1 modifiers\n(Airmobile/Air Assault, Node Center, Sensor Control Module, Single\nShelter Switch, Accident, Other, Civilian, Antisubmarine Warfare)\nwere drawing the wrong icon under MIL-STD-2525D. Picking one of\nthese from the dropdown now draws the icon its own name describes.\n- Fixed the Boundary line's echelon marker (C2 Measures): choosing\nan echelon without also typing a unit designation used to leave\nit undrawn entirely, and choosing it alongside only one\ndesignation could draw it on the wrong side of the line. It now\nalways appears where the standard's own template puts it.\n- Two label corrections: the Activities layer's \"Law Enforcement\"\nentity now reads \"Law Enforcement Operation\", matching the\nstandard's own wording; several MIL-STD-2525E \"(Generic)\" entries\nthat rendered as an unhelpful blank circle with nothing to\ndistinguish them have been removed from the Entity dropdowns they\nappeared in.\n- Under MIL-STD-2525E, every Sector 1/Sector 2 Modifier dropdown\nthat already existed now also offers that standard's 93 \"common\"\nmodifiers (things like Robotic, Cargo or Command Post Node, which\napply across many symbol types rather than one) alongside the\nsymbol's own list. A symbol set with no MIL-STD-2525E modifiers of\nits own still has no dropdown, same as before.\n- Added an \"Insert Symbol\" button to every print layout window's own\ntoolbar: pick an Affiliation, Symbol Set and Entity and it places\nthat symbol directly on the layout page as a normal, draggable\npicture item - for a legend key or callout, without needing a\ngeoreferenced feature on the map.\n1.0.3\n- Correctness fix: the drawn UTM/GZD grid now honours the two\nexceptions the standard itself makes. Over south-west Norway\n(band V) zone 31V is 3 degrees wide and 32V is 9, not 6 each;\nover Svalbard (band X) zones 32X, 34X and 36X do not exist at\nall, with 31X, 33X, 35X and 37X widened to cover that ground.\nMGRS coordinate conversion already applied both, so the grid\nlayer and the plugin's own MGRS readings had disagreed with\neach other in those two regions.\n- Three fixes to the GZD labels: they no longer pile up on top of\none another at world scale and bury the grid lines; they no\nlonger disappear when you pan inside a zone larger than the\nmap view; and they no longer overhang into the neighbouring\nzone when only a narrow strip of a zone is on screen. Where a\nlabel switches placement is now decided from each cell's own\nsize rather than one global scale for the whole world.\n- The user guide's \"Getting a DEM\" section now covers GMRT for\nbathymetry, including what to expect from below-sea-level\nelevations once loaded.\n1.0.2\n- The Bandit suppression added in 1.0.1 for the mine-scatter random\nnumber generator was one line too high to take effect, so that\nfalse positive came back on upload. Moved onto the flagged line\nitself, and the whole set verified by running Bandit locally\nrather than by another upload round-trip.\n1.0.1\n- Fixed the findings from 1.0.0's automated Plugin Repository\nreview: the milsymbol.js bridge now imports QJSEngine through\nqgis.PyQt rather than PyQt5/PyQt6 directly, so it resolves to\nwhichever Qt binding the running QGIS was built against. The\nremaining scanner findings were false positives (a deterministic,\nseeded random generator used for mine-symbol scatter, and four\nMIL-STD-2525D entity names containing the word \"Secret\" - the US\nSecret Service - read as credentials by keyword heuristics); each\nis now annotated in place rather than silently left to re-flag.\n1.0.0\n- First stable release. The plugin is no longer marked experimental.\n- Complete MIL-STD-2525D / APP-6 tactical graphics (Phase 10): the\nfull control-measure set - manoeuvre, offensive, defensive,\nobstacle, fire support, target acquisition, airspace, maritime,\nCBRN defence, deception, intelligence, sustainment, command and\ncontrol, field fortification, and mission tasks - plus entity\nsymbols across the land, air, sea surface, subsurface, space,\ncyberspace, SIGINT and activities layers, all keyed to their own\nSIDC. Drawn as real QGIS symbology (geometry generators, data-\ndefined properties, rule-based labelling), not stamped images, so\nevery symbol scales, rotates and prints correctly at any map\nscale.\n- Viewshed gained a coverage colour picker and an outline-only\nrendering option, so several observers' coverage can be told\napart and laid over terrain without hiding it.\n- Tanaka Contours now carries a caution about generation time,\nwhich can be long on a large DEM at a fine contour interval.\n0.3.0\n- New navigation and production tools (Phase 9): a Bearing/Range tool,\nGPX/KML waypoint import/export, and Map Sheet Series - batch-generate\na numbered series of print sheets tiling a large area, each sheet\nnamed after the real UTM/MGRS grid square it falls in, not an\ninvented numbering scheme.\n- Every print layout now includes an automatic grid-position diagram\nshowing where the map sits in the UTM/MGRS grid hierarchy, with the\nmap's own footprint outlined to scale.\n- Line of Sight and Viewshed dialogs now show MGRS alongside latitude/\nlongitude.\n- Hypsometric Tint gained an optional stepped/discrete colour ramp\n(in addition to the existing smooth gradient), and the shared\ncolour ramp it uses with Tanaka Contours was warmed from a dusty\nrose toward a proper orange/brown hue in the mid-to-high elevation\nbands.\n0.2.1\n- Fixed Plugin Repository validator findings from the 0.2.0 upload:\n3 Qt6 forward-compatibility enum-scoping errors in the new\nLine of Sight/Viewshed marker code, and a security finding\n(insecure tempfile.mktemp() usage, 9 call sites across the new\nterrain analysis modules) - all Processing algorithm outputs now\nuse QgsProcessing.TEMPORARY_OUTPUT instead.\n0.2.0\n- New terrain analysis toolset (Phase 8), all fully offline/local:\nTanaka (illuminated) contours, Hypsometric Tint, Line of Sight,\nCombined Hillshade, and Viewshed (dead-ground analysis) - each\ndriven entirely by local GDAL/QGIS Processing against your own\nDEM, with no network access of any kind.\n0.1.2\n- Fixed MGRS 100km grid labels landing in the wrong square at some\nzoom levels, and the print-layout scale bar rendering too large\nat close-in scales (e.g. 1:1,000-1:2,000).\n0.1.1\n- Fixed Plugin Repository validator findings: fully-scoped QGIS enum\naccess (Qt6 forward-compatibility) and one Flake8 lambda-assignment\nfinding.\n0.1.0\n- Initial release: MGRS conversion, coordinate probe, military grid\ngeneration (UTM/GZD, MGRS 100km, 10/5/1km sub-grids), automated\nprint-layout production, grid convergence and magnetic declination\n(WMM2025) expression functions.", "external_deps": null, "download_url": "https://plugins.qgis.org/plugins/MilitaryCartographyTools/version/1.1.0/download/"}