This guide contains general information about the Aeronautical Information System (AIS) functionality and concepts in LuciadLightspeed. Each AIS format (Dafif, AIXM, ARINC, …​) has more format-specific documentation available as well. |
This guide provides details on how to visualize the AIS domain objects in a GXY view. The visualization uses the standard LuciadLightspeed view, layer and painter concepts of GXY:
-
A view (
ILcdGXYView
) consists of a number of layers. -
One layer (
ILcdGXYLayer
) corresponds to a single model (ILcdModel
). -
Each layer has a painter provider that provides a painter for each of the objects in a model.
-
Each layer has a label painter provider that provides a label painter for each of the objects in a model.
The main visualization components for GXY views offered in AIS are painters, label painters and icon providers. There is no need to supply specific layers or views for AIS; the standard LuciadLightspeed components suffice.
Using standard painters and label painters
Most of the AIS domain objects are modeled in terms of
core LuciadLightspeed shapes, such as ILcdPoint
or ILcdPolyline
.
Such objects can be painted using the standard painters provided in
LuciadLightspeed (TLcdGXYIconPainter
, TLcdGXYPointListPainter
).
AIS, however, provides a number of specific painters and label painters that paint specific domain objects, that are just more convenient to use with AIS domain objects, or that implement specific ICAO symbology.
Specific AIS painters and label painters
The following specific painters are provided with AIS:
-
TLcdGXYAISIconProviderPainter
: This painter paints icons similar to aTLcdGXYIconPainter
. The difference is that anILcdObjectIconProvider
can be set on the painter. For each painted object, the icon provider is queried for a specific icon for this object. The painter has 3 different icon providers, one for normal icons, one for selection icons, one for snap icons. This painter is recommended for use with point based AIS objects. -
TLcdGXYProcedureTrajectoryPainter
: this is a painter for procedure trajectories. It supports several different styles for normal, decoration, and error geometry, and also supports a special style for missed approaches in an IAP. -
TLcdGXYILSPainter
: A painter that paints all the components in an ILS. -
TLcdGXYRefuelingTrackPainter
: A painter that can handle bothILcdRefuelingAirspace
instances andILcdRefuelingTrack
instances. -
TLcdGXYRoutePainter
: A painter forILcdRoute
objects. It paints each shape in the route as a polyline, and also has support for painting the individual route points using a settable point painter.
The following specific label painters are provided with AIS:
-
TLcdGXYOutlinePolylineLabelPainter
: this painter paints a label along the longest segment of a polyline. It is typically used for discretized geo-path based objects.
ICAO symbology
AIS supports ICAO symbology by supplying a number of icons,
painters and label painters that follow the guidelines of ICAO
for the display of aeronautical data. These classes are located
in the com.luciad.ais.symbology.icao
package.
Icons
ICAO icons are supported by TLcdICAODefaultSymbolProvider
. It is
an ILcdObjectIconProvider
that provides ICAO icons for
all kinds of AIS domain objects. The provider allows to set
the color of the supplied icon. This allows one to use one
instance of this provider for normal icons, and another
instance with the color set to red for example as a provider
for selection icons.
Program: Use of an ICAO icon provider in a painter. shows code that installs ICAO icon providers on a painter.
samples/ais/gxy/LayerFactory
)
// Initialize a painter with icon providers that use ICAO symbology.
TLcdICAODefaultSymbolProvider icon_provider = new TLcdICAODefaultSymbolProvider();
TLcdICAODefaultSymbolProvider selection_icon_provider = new TLcdICAODefaultSymbolProvider();
icon_provider.setColor(Color.white);
selection_icon_provider.setColor(SELECTION_OUTLINE);
TLcdGXYAISIconProviderPainter painter_provider = new TLcdGXYAISIconProviderPainter();
painter_provider.setIconProvider(icon_provider);
painter_provider.setSelectionIconProvider(selection_icon_provider);
// Set the painter on the layer.
gxy_layer.setGXYPainterProvider(painter_provider);
Painters
The following specific ICAO painters are supplied with AIS:
-
TLcdICAORunwayPainter
: this painter paints a runway as a filled polygon. This filling pattern depends on the surface type of the runway, as specified by ICAO. -
TLcdICAOAirspacePainter
: this painter paints air spaces with a line style dependent on the class of the air space. The class of an air space is normally modeled as a feature. This painter requires the feature index of the air space class feature to be set with the methodsetClassIndex
.