Omnet++ 如何获取静脉中的RSU节点坐标?

Omnet++ 如何获取静脉中的RSU节点坐标?,omnet++,veins,Omnet++,Veins,我在我的模拟环境中使用了Velse5.0 目前有4个RSU节点在使用中。omnetpp.ini代码如下: omnetpp.ini *.fRSU[0].mobility.x = 125 *.fRSU[0].mobility.y = 125 *.fRSU[0].mobility.z = 3 ... 这里是RSU:的C++代码 fRSUBehavior.cc posX = check_and_cast<BaseMobility*>(getSimulation() -> getMod

我在我的模拟环境中使用了
Velse5.0

目前有4个RSU节点在使用中。
omnetpp.ini
代码如下:

omnetpp.ini

*.fRSU[0].mobility.x = 125
*.fRSU[0].mobility.y = 125
*.fRSU[0].mobility.z = 3
...

这里是RSU:

的C++代码 fRSUBehavior.cc

posX = check_and_cast<BaseMobility*>(getSimulation() -> getModuleByPath("fRSU[0].mobility.x")) -> getPositionAt(simTime()).x;
posY = check_and_cast<BaseMobility*>(getSimulation() -> getModuleByPath("fRSU[0].mobility.y")) -> getPositionAt(simTime()).y;
EV << "X: " << posX << " Y: " << posY << std::endl;
posX=check_和_cast(getSimulation()->getModuleByPath(“fRSU[0].mobility.x”)->getPositionAt(simTime()).x;
posY=check_和_cast(getSimulation()->getModuleByPath(“fRSU[0].mobility.y”)->getPositionAt(simTime()).y;

EVgetModuleByPath(“fRSU[0].mobility.x”)
不太可能工作。模块名称很可能是
fRSU[0]。mobility
,也就是说,它不包括参数名称。很有可能,
getModuleByPath
返回一个空指针,并且您的程序没有崩溃,但您正在读取一些合理的值。

谢谢您的建议。你说得对。因此,我通过在与
stage==1
对应的代码中替换
fRSU[0].mobility
参数解决了这个问题。