Package: inet.mobility.single
BonnMotionMobility
simple moduleUses the native file format of the BonnMotion tool.
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.
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 |
|---|---|---|---|
| displayStringTextFormat | string | "p: %p\nv: %v" |
Determines the text that is written on top of the submodule, supports displaying pars, watches, and module-specific information |
| subjectModule | string | "^" |
The module path that determines the subject module, the motion of which this mobility model describes. The default value is the parent module |
| coordinateSystemModule | string | "" |
The module path of the geographic coordinate system module |
| updateDisplayString | bool | true |
Enables continuous update of the subject module's position by modifying its display string |
| constraintAreaMinX | double | -inf m |
The minimum x position of the constraint area. It is unconstrained by default (negative infinity) |
| constraintAreaMinY | double | -inf m |
The minimum y position of the constraint area. It is unconstrained by default (negative infinity) |
| constraintAreaMinZ | double | -inf m |
The minimum z position of the constraint area. It is unconstrained by default (negative infinity) |
| constraintAreaMaxX | double | inf m |
The maximum x position of the constraint area. It is unconstrained by default (positive infinity) |
| constraintAreaMaxY | double | inf m |
The maximum y position of the constraint area. It is unconstrained by default (positive infinity) |
| constraintAreaMaxZ | double | inf m |
The maximum z position of the constraint area. It is 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 the trace file; -1 gets substituted with the parent module's index |
Properties
| Name | Value | Description |
|---|---|---|
| class | BonnMotionMobility | |
| display | i=block/cogwheel |
Signals
| Name | Type | Unit | Description |
|---|---|---|---|
| mobilityStateChanged | inet::MobilityBase |
It works in inet, but not in the extended module in another namespace |
Source code
// // Uses the native file format of the BonnMotion tool. // // 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. // 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 the trace file; -1 gets substituted with the parent module's index @class(BonnMotionMobility); }File: src/inet/mobility/single/BonnMotionMobility.ned