BonnMotionMobility

Package: inet.mobility.single

BonnMotionMobility

simple module

Uses the native file format of BonnMotion (http://www.cs.uni-bonn.de/IV/BonnMotion/).

The file is a plain text file, where every line describes the motion of one host. A line consists of one or more (t, x, y, [z]) tuples of real numbers, like:

t1 x1 y1 t2 x2 y2 t3 x3 y3 t4 x4 y4 ... or t1 x1 y1 z1 t2 x2 y2 z2 t3 x3 y3 z3 t4 x4 y4 z4...

The meaning is that the given node gets to (xk,yk) at tk. There's no separate notation for wait, so x and y coordinates will be repeated there.

Author: Andras Varga

BonnMotionMobility

Inheritance diagram

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

Extends

Name Type Description
MovingMobilityBase simple module

Abstract base module for mobility models.

Parameters

Name Type Default value Description
subjectModule string "^"

module path which determines the subject module, the motion of which this mobility model describes, the default value is the parent module

coordinateSystemModule string ""

module path of the geographic coordinate system module

displayStringTextFormat string "p: %p\nv: %v"

format string for the mobility module's display string text

updateDisplayString bool true

enables continuous update of the subject module's position via the display string

constraintAreaMinX double -inf m

min x position of the constraint area, unconstrained by default (negative infinity)

constraintAreaMinY double -inf m

min y position of the constraint area, unconstrained by default (negative infinity)

constraintAreaMinZ double -inf m

min z position of the constraint area, unconstrained by default (negative infinity)

constraintAreaMaxX double inf m

max x position of the constraint area, unconstrained by default (positive infinity)

constraintAreaMaxY double inf m

max y position of the constraint area, unconstrained by default (positive infinity)

constraintAreaMaxZ double inf m

max z position of the constraint area, unconstrained by default (positive infinity)

updateInterval double 0.1s

the simulation time interval used to regularly signal mobility state changes and update the display

faceForward bool true
is3D bool false

whether the trace file contains triplets or quadruples

traceFile string

the BonnMotion trace file

nodeId int

selects line in trace file; -1 gets substituted to parent module's index

Properties

Name Value Description
display i=block/cogwheel
class BonnMotionMobility

Signals

Name Type Unit
mobilityStateChanged inet::MobilityBase

Source code

//
// Uses the native file format of BonnMotion (http://www.cs.uni-bonn.de/IV/BonnMotion/).
//
// The file is a plain text file, where every line describes the motion
// of one host. A line consists of one or more (t, x, y, [z]) tuples of real
// numbers, like:
//
// t1 x1 y1 t2 x2 y2 t3 x3 y3 t4 x4 y4 ...
// or
// t1 x1 y1 z1 t2 x2 y2 z2 t3 x3 y3 z3 t4 x4 y4 z4...
//
// The meaning is that the given node gets to (xk,yk) at tk. There's no
// separate notation for wait, so x and y coordinates will be repeated there.
//
// @author Andras Varga
//
simple BonnMotionMobility extends MovingMobilityBase
{
    parameters:
        bool is3D = default(false); // whether the trace file contains triplets or quadruples
        string traceFile; // the BonnMotion trace file
        int nodeId; // selects line in trace file; -1 gets substituted to parent module's index
        @class(BonnMotionMobility);
}

File: src/inet/mobility/single/BonnMotionMobility.ned