SceneCanvasVisualizer

Package: inet.visualizer.scene

SceneCanvasVisualizer

simple module

This module visualizes the scene on a 2D canvas. It provides the 3D coordinate system's 2D projection for other visualizers. This is used to get a consistent visualization accross all visualizers. It also displays the coordinate system axes.

See also: SceneOsgVisualizer, SceneVisualizer, SceneVisualizerBase, ISceneVisualizer

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends

Name Type Description
SceneVisualizerBase simple module

This is a base module for scene visualizer simple modules. It determines the bounds of the playground, that is the minimum area where the whole simulation fits in. The playground encloses all physical objects and the constraint area of all mobile nodes. The visualizer also provides a timer which can be used to periodically update the user interface independently of the underlying simulation. The actual visualization of the scene is done in derived modules.

Parameters

Name Type Default value Description
visualizerTargetModule string ""

module path relative to the visualizer where the visualization should appear in the user interface, root module by default

tags string ""

tag added to each visualization for disambiguation in the runtime environment

physicalEnvironmentModule string "physicalEnvironment"

the physical environment module, refers to a top level submodule by default

networkNodeVisualizerModule string "^.networkNodeVisualizer"

the network node visualizer, refers to a sibling submodule by default

axisLength double 0m/0

length of x, y, and z axes, no axis by default

animationSpeed double 0

always active animation speed independent of any visualization, value must be in the range (0, +inf)

zIndex double 0

determines the drawing order of figures relative to other visualizers

viewAngle string "z"

view angle is either x, y, z, isometric, isometricN (where 0 <= N < 48) or three rotation angles separated by spaces (it uses orthographic projection that is the projection is parallel to the normal of the viewing surface)

viewScale string "1 1"

the 2D scale is applied after the view projection

viewTranslation string "0 0"

the 2D translation is applied after the view projection

descriptionFigure string ""

if not empty, it should be the name of a text figure; it will display the active configuration's description

Properties

Name Value Description
class SceneCanvasVisualizer
display i=block/app_s

Source code

//
// This module visualizes the scene on a 2D canvas. It provides the 3D coordinate
// system's 2D projection for other visualizers. This is used to get a consistent
// visualization accross all visualizers. It also displays the coordinate system
// axes.
//
// @see ~SceneOsgVisualizer, ~SceneVisualizer, ~SceneVisualizerBase, ~ISceneVisualizer
//
simple SceneCanvasVisualizer extends SceneVisualizerBase like ISceneVisualizer
{
    parameters:
        double zIndex = default(0); // determines the drawing order of figures relative to other visualizers
        string viewAngle @mutable = default("z"); // view angle is either x, y, z, isometric, isometricN (where 0 <= N < 48) or three rotation angles separated by spaces (it uses orthographic projection that is the projection is parallel to the normal of the viewing surface)
        string viewScale @mutable = default("1 1"); // the 2D scale is applied after the view projection
        string viewTranslation @mutable = default("0 0"); // the 2D translation is applied after the view projection
        string descriptionFigure = default(""); // if not empty, it should be the name of a text figure; it will display the active configuration's description 
        @class(SceneCanvasVisualizer);
}
File: src/inet/visualizer/scene/SceneCanvasVisualizer.ned