Multiline Object Definition
Multiline Object Definition
The APRS protocol defined support for reporting National Weather Service bulletins. This was fine for putting a text bulletin that would give a description of the warning, but APRS is about being able to map out things in a graphic fashion.

APRS has the ability to create area objects, but the area objects are limited to lines, boxes, circles, triangles, and ellipses.

NWS alert areas rarely nicely fit into the above defined shapes, thus the multiline definition was born.

The APRS multiline object definition is based on an APRS object, which is one of the basic building blocks of APRS. The multiline portion of the definition is encoded into the comment of the object.

Multiline Definition

The comment definition has a specific format that needs to be followed.

The definition starts with a <space> character.
The next character must be "}" which specifies that a multiline object definition follows.
The third character defines the type of line (solid, dashed, double dashed), and colour (red, blue, yellow, green).
The fourth character defines the object type (line or area).
The fifth character defines the scale of the object.
Next come pairs of characters that define the location of each vertex of the definition. There can be up to 23 pairs of location definitions in the comment.
The end of the location pairs is defined by "{".
The final portion of the definition is a 5 alphanumeric character identifier.

Sample Multiline Object

The image below shows a multiline object which is defining an area of concern for a severe thunderstorm in the Carolinas.


The following is the APRS object packet which defined the above watch area:


; object name _ time lat sym table long sym code comment multiline line type object type scale lat long pairs end & identifier
; SPCS1528z * 262100z 3500.00N S 07730.00W W Svr TStormWatch #174 _} e 0 ] FgcBS6:W {QFSAA

Multiline Definition Start

The multiline defintion starts with a <space> character followed by a right curly brace " }".

Multiline Line Types

The multiline definition includes 4 colours, and 3 line types for a total of 12 defined types.

Character Colour Line Type Use in NWS Mesages
a red solid Tornado Warning
b red dashed Tornado Watch
c red double dashed
d yellow solid Severe Thunderstorm Warning
e yellow dashed Severe Thunderstorm Watch
f yellow double dashed
g blue solid Test Warning
h blue dashed Test Watch
i blue double dashed
j green solid
k green dashed Mesoscale Discussion Areas
l green double dashed

Multiline Object Type

There are currently only 2 object types defined.

Character Object Type
0 Closed Polygon
1 Line Segment

Multiline Scale

The scale character is a single character that defines the overall scale of the grid. It defines the distance between each of the point in the grid. The math behind the scale is based upon 1/1000th of a degree multiplied by log base 10 of the scale factor multiplied by 20. This number is then added to 33 to get into a printable character. It sounds a lot more complicated than it is…

(20 * (0.0001 * log (scale))+33 = scale character

This allows for many variable scales, below are some decimal degree scale factors.

Scale Character Resolution (deg) Resolution (km) Area covered (deg) Area Covered (km)
! 0.0001 0.011 0.009 1.00
5 0.001 0.111 0.09 10.01
I 0.01 1.113 0.9 100.19
] 0.1 11.132 9 1001.92
q 1 111.325 90 10019.25
  • Be aware that the distance per (latitude) degree is accurate at the equator, as you move closer to the poles, the distance decreases, making your grid rectangular, not square.

To get the most resolution for defining your multiline object, you want to keep the scale as small as possible. Choose a scale factor that just encompasses the full extent of the area to be defined.

Multiline Grid

The offset character pairs are based on a grid as below. The first character defines the latitude offset, the second character defines the longitude offset from the base object defined. There are 45 points left or above, and 44 points right or below the reference point defined by the object. The image below can give you an idea of how the offset characters work towards defining where the vertices of your line/area exist.


End Character and Identifier

The end of the vertex definitions is denoted by the { character and is immediately followed by a 5 character identifier. The identifier can be used to confirm that the multiline definition is real, and not just random garbage from packet collisions or other sources.

Multiline Creation in APRSISCE/32

APRSISCE/32 now has a rudimentary multiline object creation capability built in. Follow the procedure below to create your own tracked objects and convert them to a MultiLine object.

  1. Right click at one end of your line or one point on your area. From the Coordinate cascade, select "Create Object HERE" and give it a name and comment. You'll need to keep it Enabled, but you do not need to check any of the Vias. The screen should center and lock on your new object.
  2. Drag and pan to the next point along your line or area. Again, right click, but this time select "Move <ObjName> HERE" from the coordinates cascade.
  3. Repeat step 2 as many times as necessary to build up the line or area boundary using the tracks you're making with the object. I don't enforce the 23 limit yet, so please don't say it's broken if it breaks.
  4. If you don't like the most recent point you added, you can left (normal) click on the object itself and select "Shrink Track" from the new "My Object" cascade. After confirming, the object track will have the most recent point removed.
  5. When you have all of the line segments tracked, or are one step from closing your area, left (normal) click on the object name itself. From the new "My Object" cascade, select "Track to Area" or "Track to MultiLine".

When APRSISCE/32 creates the Multiline object, it takes into account the distance to the most distant offset, and uses that to determine the scale required, and then attempts to find the best fit for each vertex defined.

Now you can compare your object's track with the line or area boundary that you got. Expect LOTS of error depending on the size of your
maximum offset. Also, since MultiLine objects are relative the object position, don't be surprised to see the line or shape move intact if you
decide to start over with the same object!
