GeoSkyViewCanvasVisualizer

Package: inet.visualizer.canvas.scene

simple module GeoSkyViewCanvasVisualizer

Draws an azimuth/elevation “sky view” polar plot next to each observer node (typically a ground station using a StationaryMobility), showing where the target nodes (typically satellites) currently are in the observer’s sky. The center is the zenith (90 deg elevation), the outer rim is the horizon (0 deg); North is up and East is to the right (azimuth clockwise). Concentric rings mark elevations, the cardinal points (N/E/S/W) are drawn, and the band below elevationMask is masked translucently. Each visible target is a colored dot (optionally named, with a fading sky trail); targets below the horizon are hidden.

Look angles are computed from the geographic positions of the observer and the targets via the IGeographicCoordinateSystem given by coordinateSystemModule.

See also: GeoMapCanvasVisualizer, IGeoSkyViewVisualizer

inet.visualizer.canvas.scene.GeoSkyViewCanvasVisualizerGeoSkyViewCanvasVisualizersimple

Usage diagram

Inheritance diagram

Used in compound modules

Name

Type

Description

IntegratedMultiCanvasVisualizer

compound module

Integrates all canvas visualizers into a single module. It supports disabling any submodule visualizer by providing an empty string as its type.

Extends

Name

Type

Description

VisualizerBase

simple module

Base module for visualizer simple modules. It simply provides the visualization target module for derived modules.

Parameters

Name

Type

Default value

Description

displayStringTextFormat

string

“”

Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information

visualizationTargetModule

string

“^”

Module path relative to the visualizer which determines where the visualization should appear in the user interface, parent module by default

visualizationSubjectModule

string

“^”

Module path relative to the visualizer which determines what part of the simulation model the visualizer displays in the user interface, parent module by default

tags

string

“”

Tag added to each visualization for disambiguation in the runtime environment

displaySkyView

bool

true

Display the sky view plots, enabled by default

animationSpeed

double

1

Animation speed while targets move, value must be in the range (0, +inf)

zIndex

double

-10

Determines the drawing order of figures relative to other visualizers

coordinateSystemModule

string

Module path of the geographic coordinate system used to compute look angles

observerFilter

string

“*”

Which mobilities are observers (get a sky plot)

targetFilter

string

“*”

Which mobilities are targets (drawn in each plot)

plotRadius

double

70

Radius of the sky plot in pixels (elevation 0 at the rim, 90 at the center)

plotOffsetX

double

inf

Horizontal offset (pixels) of the plot’s upper-left corner from the observer icon; infinite (the default) detaches the plots from the icons and tiles them in a grid below the module’s viewport

plotOffsetY

double

inf

Vertical offset (pixels) of the plot’s upper-left corner from the observer icon; infinite (the default) detaches the plots from the icons and tiles them in a grid below the module’s viewport

elevationMask

double

0deg

Minimum usable elevation; the band between it and the horizon is masked

backgroundColor

string

“#1a2a40”

Sky disc fill color

backgroundOpacity

double

0.15

Sky disc fill opacity

ringColor

string

“#888888”

Elevation ring and graticule color

ringLineWidth

double

1

Elevation ring line width

maskColor

string

“#808080”

Fill color of the below-minimum-elevation mask

maskOpacity

double

0.25

Opacity of the below-minimum-elevation mask

cardinalColor

string

“#888888”

Color of the N-S/W-E lines and the N/E/S/W labels

labelColor

string

“black”

Color of the title and elevation labels

targetColor

string

“dark”

Target dot color, a list of colors or a color group name (e.g. dark, light)

targetRadius

double

3

Radius of a target dot in pixels

lowElevationOpacity

double

0.35

Opacity of target dots between the horizon and elevationMask

displayLabels

bool

true

Display the target name next to its dot, enabled by default

displayTrails

bool

true

Display a fading sky trail of each target’s recent path, enabled by default

trailLength

int

100

Number of sections in a sky trail

trailLineStyle

string

“solid”

Sky trail line style (solid, dashed, dotted)

trailLineWidth

double

1

Sky trail line width

Properties

Name

Value

Description

class

GeoSkyViewCanvasVisualizer

display

i=block/app

Source code

//
// Draws an azimuth/elevation "sky view" polar plot next to each observer node
// (typically a ground station using a `StationaryMobility`), showing
// where the target nodes (typically satellites) currently are in the observer's
// sky. The center is the zenith (90 deg elevation), the outer rim is the horizon
// (0 deg); North is up and East is to the right (azimuth clockwise). Concentric
// rings mark elevations, the cardinal points (N/E/S/W) are drawn, and the band
// below `elevationMask` is masked translucently. Each visible target is a
// colored dot (optionally named, with a fading sky trail); targets below the
// horizon are hidden.
//
// Look angles are computed from the geographic positions of the observer and the
// targets via the `IGeographicCoordinateSystem` given by `coordinateSystemModule`.
//
// @see ~GeoMapCanvasVisualizer, ~IGeoSkyViewVisualizer
//
simple GeoSkyViewCanvasVisualizer extends VisualizerBase like IGeoSkyViewVisualizer
{
    parameters:
        bool displaySkyView = default(true); // Display the sky view plots, enabled by default
        double animationSpeed = default(1); // Animation speed while targets move, value must be in the range (0, +inf)
        double zIndex = default(-10); // Determines the drawing order of figures relative to other visualizers

        string coordinateSystemModule; // Module path of the geographic coordinate system used to compute look angles
        string observerFilter @mutable = default("*"); // Which mobilities are observers (get a sky plot)
        string targetFilter @mutable = default("*"); // Which mobilities are targets (drawn in each plot)

        double plotRadius = default(70); // Radius of the sky plot in pixels (elevation 0 at the rim, 90 at the center)
        double plotOffsetX = default(inf); // Horizontal offset (pixels) of the plot's upper-left corner from the observer icon; infinite (the default) detaches the plots from the icons and tiles them in a grid below the module's viewport
        double plotOffsetY = default(inf); // Vertical offset (pixels) of the plot's upper-left corner from the observer icon; infinite (the default) detaches the plots from the icons and tiles them in a grid below the module's viewport
        double elevationMask @unit(deg) = default(0deg); // Minimum usable elevation; the band between it and the horizon is masked

        string backgroundColor = default("#1a2a40"); // Sky disc fill color
        double backgroundOpacity = default(0.15); // Sky disc fill opacity
        string ringColor = default("#888888"); // Elevation ring and graticule color
        double ringLineWidth = default(1); // Elevation ring line width
        string maskColor = default("#808080"); // Fill color of the below-minimum-elevation mask
        double maskOpacity = default(0.25); // Opacity of the below-minimum-elevation mask
        string cardinalColor = default("#888888"); // Color of the N-S/W-E lines and the N/E/S/W labels
        string labelColor = default("black"); // Color of the title and elevation labels

        string targetColor = default("dark"); // Target dot color, a list of colors or a color group name (e.g. dark, light)
        double targetRadius = default(3); // Radius of a target dot in pixels
        double lowElevationOpacity = default(0.35); // Opacity of target dots between the horizon and elevationMask
        bool displayLabels = default(true); // Display the target name next to its dot, enabled by default
        bool displayTrails = default(true); // Display a fading sky trail of each target's recent path, enabled by default
        int trailLength = default(100); // Number of sections in a sky trail
        string trailLineStyle = default("solid"); // Sky trail line style (solid, dashed, dotted)
        double trailLineWidth = default(1); // Sky trail line width

        @class(GeoSkyViewCanvasVisualizer);
        @display("i=block/app");
}

File: src/inet/visualizer/canvas/scene/GeoSkyViewCanvasVisualizer.ned