Skip to content

missioncommand/mil-sym-android

Repository files navigation

mil-sym-android

About

mil-sym-android is an Android port of the Java-based MIL-STD rendering libraries that have been used in US Army Mission Command software for years. In November 2013 Mission Command was given the approval to release and maintain these libraries as public open source. Eventually work on the 2525C SEC Renderer ended and the project was retired. The Library is still available here: mil-sym-android-renderer

This is a continuation of that effort and this library aims to support 2525D, 2525E and potentially more future versions.

Wiki
JavaDocs

The old 2525C renderer has been retired but the libraries and usage information are still available here:
2525C Renderer Overview

Ports

Java
Android
TypeScript

MIL-STD-2525

The MIL-STD-2525 standard defines how to visualize military symbology. This project provides support for the entire MIL-STD-2525D Change 1 and 2525E Change 1. APP6D support has been added as well. Note that this implementation included the latest change proposals so things may not line up if you're just looking at the base APP6D document.

Features

  • Support for MilStd 2525 Dch1 (11), Ech1(15), NATO APP6D(10) and partial support for APP6Ev2 (16)(icons only)
  • Rendering icons as a BufferedImage (Java), Bitmap (Android), and SVG.
  • Rendering of multipoints as GeoJSON, GeoSVG or as a MilStdSymbol Object with all the information needed to draw on your map.
  • MSLookup class to get information on any symbol such as point count, draw rule, applicable modifier, etc...
  • The ability to add custom icons to an existing symbol set.

Project Structure

mil-sym-android has a namespace structure that resembles the java layout although differs where we needed to implement java functionality that wasn't available in the Dalvik VM.

Tech

Eclipse with Android plugins or Android Studio or Gradle based build system.

Building


Prerequisites:

  • Android SDK is installed
  • ANDROID_HOME environment variable pointing to location of the Android SDK
  • Android build-tools v35.0.0

External Libraries in use:
AndroidSVG 1.4 using Apache v2.0 License
Geodesy 1.1.3 using Apache 2.0 License

Build:

./gradlew build

Pixel

Packages

 
 
 

Contributors

Languages