是否可以在.ini文件中或以编程方式设置节点位置?

时间:2018-11-28 14:45:48

标签: omnet++ inet

虽然我可以在.ned文件中设置节点位置

hostA: <default("WirelessHost")> like INetworkNode {
        @display("p=300,400");
    }

是否可以在.ini文件中指定位置,例如*.hostA.**.setPosition(posX, posY)

还是在App源文件中?

*.hostA.numApps = 1
*.hostA.app[0].typename = "MyApp"

am使用 omnetpp-5.4.1 inet-4.0.0

1 个答案:

答案 0 :(得分:0)

通过使用@display字符串,您可以在图形环境中定义模块的呈现方式。在默认情况下,这与节点的物理位置无关。

您希望拥有一个实现IMobility接口的模块。这意味着相应实例必须是现有模块接口,具体模块类型必须实现该接口。一个示例可以在INET示例mobility中找到。您应该查看的模块称为MobileHost。通过使用这样的实现,您可以在omnetpp.ini文件中设置模块的位置:

**.host[0].mobility.initialX = 50m
**.host[0].mobility.initialY = 200m

但是,在这种情况下,您还可以通过设置以下内容来使用@display字符串:

**.host[0].mobility.initFromDisplayString = true