NED File src/inet/mobility/single/LinearMobility.ned¶
Name |
Type |
Description |
|---|---|---|
simple module |
This is a linear mobility model with speed and angle parameters. Angle only changes when the mobile node hits a wall: then it reflects off the wall at the same angle. |
Source code¶
//
// Copyright (C) 2005 Emin Ilker Cetinbas
//
// SPDX-License-Identifier: LGPL-3.0-or-later
//
//
// Author: Emin Ilker Cetinbas (niw3_at_yahoo_d0t_com)
//
package inet.mobility.single;
import inet.mobility.base.MovingMobilityBase;
//
// This is a linear mobility model with speed and angle parameters.
// Angle only changes when the mobile node hits a wall: then it reflects
// off the wall at the same angle.
//
// @author Emin Ilker Cetinbas
//
simple LinearMobility extends MovingMobilityBase
{
parameters:
double initialX @unit(m) = default(uniform(this.constraintAreaMinX, this.constraintAreaMaxX));
double initialY @unit(m) = default(uniform(this.constraintAreaMinY, this.constraintAreaMaxY));
double initialZ @unit(m) = default(nanToZero(uniform(this.constraintAreaMinZ, this.constraintAreaMaxZ)));
bool initFromDisplayString = default(true); // Enables one-time initialization from the subject module's display string
double speed @unit(mps) = default(0mps); // Speed of the host
double initialMovementHeading @unit(deg) = default(uniform(0deg, 360deg));
double initialMovementElevation @unit(deg) = default(0deg);
@class(LinearMobility);
}