Simple Module CircleMobility

Package: inet.mobility.single
File: src/inet/mobility/single/CircleMobility.ned

C++ definition

Moves the node around a circle.

Author: Andras Varga

CircleMobility

Usage diagram:

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

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.

Used in compound modules:

Name Type Description
ThroughputClient compound module (no description)
ThroughputClient compound module (no description)

Parameters:

Name Type Default value Description
coordinateSystemModule string ""

module path of the geographic coordinate system module

visualizeMobility bool true

false means this mobility module does no visualization

visualRepresentation string "^"

determines the module that is moved by this mobility

constraintAreaMinX double -1m/0

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

constraintAreaMinY double -1m/0

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

constraintAreaMinZ double -1m/0

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

constraintAreaMaxX double 1m/0

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

constraintAreaMaxY double 1m/0

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

constraintAreaMaxZ double 1m/0

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

cx double

x coord of the center of the circle

cy double

y coord of the center of the circle

cz double 0m

z coord of the center of the circle

r double

radius of the circle

speed double 0mps

speed of the host

startAngle double uniform(0deg, 360deg)

starting angle

Properties:

Name Value Description
display i=block/cogwheel
class CircleMobility

Signals:

Name Type Unit
mobilityStateChanged MobilityBase

Source code:

//
// Moves the node around a circle.
//
// @author Andras Varga
//
simple CircleMobility extends MovingMobilityBase
{
    parameters:
        double cx @unit(m); // x coord of the center of the circle
        double cy @unit(m); // y coord of the center of the circle
        double cz @unit(m) = default(0m); // z coord of the center of the circle
        double r @unit(m); // radius of the circle
        double speed @unit(mps) = default(0mps); // speed of the host
        double startAngle @unit(deg) = default(uniform(0deg, 360deg)); // starting angle
        @class(CircleMobility);
}