Можно ли установить положение узла в файле .ini или программно? - PullRequest
0 голосов
/ 28 ноября 2018

Хотя я могу установить положение узла в файле .ned

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

, можно ли указать положение в файле .ini, например *.hostA.**.setPosition(posX, posY)

или в приложении?исходный файл?

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

использую omnetpp-5.4.1 и inet-4.0.0

1 Ответ

0 голосов
/ 28 ноября 2018

Используя строку @display, вы определяете рендеринг модуля в графической среде.Это не связано с физической позицией узла в случае по умолчанию.

Вам нравится иметь модуль, который реализует интерфейс IMobility.Это означает, что соответствующий экземпляр должен быть существующим интерфейсом модуля, который должен реализовывать конкретный тип модуля.Пример этого можно найти в примере INET mobility.Модуль, на который вы должны взглянуть, называется MobileHost.Используя такую ​​реализацию, вы можете установить положение модуля в файле omnetpp.ini:

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

Однако в этом случае вы также можете использовать строку @display, установив:

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