【发布时间】:2021-10-14 15:59:53
【问题描述】:
我正在使用静脉 5.1。我正在尝试使用 TraCIMobility 中的 getCurrentPosition() 函数。但它说没有这样的功能?如何获取节点的当前位置?
我的应用程序源代码:
bool VeinsInetSampleApplication::startApplication()
if (getParentModule()->getIndex() == 0) {
auto callback = [this]() {
veins::TraCICommandInterface::Junction traciJunction = traci->junction("node4");
veins::TraCICommandInterface::Junction traciJunction1 = traci->junction("node6");
veins::Coord nodes1 = traciJunction.getPosition();
veins::Coord nodes2 = traciJunction1.getPosition();
veins::Coord veh_pos = mobility_veins->getPositionAt(simTime());
};
timerManager.create(veins::TimerSpecification(callback).interval(SimTime(6, SIMTIME_S)));
}
return true;
我已经在头文件中定义了mobility_veins
class VEINS_INET_API VeinsInetApplicationBase : public inet::ApplicationBase, public inet::UdpSocket::ICallback {
protected:
veins::VeinsInetMobility* mobility;
TraCIMobility* mobility_veins;
veins::TraCICommandInterface* traci;
veins::TraCICommandInterface::Vehicle* traciVehicle;
veins::TimerManager timerManager{this};
inet::L3Address destAddress;
const int portNumber = 9001;
inet::UdpSocket socket;
【问题讨论】: