zoukankan      html  css  js  c++  java
  • Veins(车载通信仿真框架)入门教程(四)——调试及记录结果

    Veins(车载通信仿真框架)入门教程(四)——调试及记录结果

    在Veins入门教程(三)最后的动图中(如下图)可以看到大大小小的光圈,这个怎么实现的呢?

    很简单,以收到RTS消息为例,通过finHost()->getDisplayString().updateWith()设置光圈的半径和颜色即可在收到RTS消息时令节点周围显示指定颜色和半径的光圈。

    这样一方面增强了展示效果,另一方面也有助于调试程序的时候直观地发现哪里出现问题,比如多跳数据传输传着传着就中断了,我们可以根据光圈确定沿路的中转节点,接着通过点击控制台右上角的第三个按钮(如下图)

    在这里插入图片描述

    调出Filter Window Contents界面如下,选择特定节点的特定层(Layer)在控制台展示其输出打印出来的语句,根据自己设置的输出语句判断程序进行到哪一步,有没有按自己的设想运行?
    在这里插入图片描述这个打印语句的操作是怎么实现的呢?
    还看第二幅图,接收到RTS后,通过语句DBG_APP << "APP:handleLowerMsg()->receive RTS from node " << wsm->getSenderAddress() << endl即可实现。
    或者点击控制台右上角第二个按钮调出如下界面,搜索控制台所有输出语句的特定内容,找到自己需要的打印内容进行分析。
    在这里插入图片描述最后怎么记录仿真结果呢?
    通过finish()函数内的recordScalar(“名称”,变量)即可记录特定变量,这个变量应当是用于记录结果的类成员变量,最后仿真完在仿真文件的文件夹内会有一个名为results的文件夹产生,点进去就能找到结果记录文件,双击直接在OMNeT++里面打开即可找到自己记录的那些变量结果,基本上就这些,自己试试吧~
    在这里插入图片描述

  • 相关阅读:
    IOS异常日志记录与展现功能
    关于仿网易新闻中详细页图文混排功能的实现
    IOS开发基础知识--碎片22
    利用UIScrollView实现几个页面的切换
    IOS开发基础知识--碎片21
    IOS开发基础知识--碎片20
    左右侧滑菜单功能的实现
    空页面的背景提示原理
    等待时动画效果的实现
    解析虚拟VMware三种网络模式的根本区别
  • 原文地址:https://www.cnblogs.com/zhengkunxian/p/11760521.html
Copyright © 2011-2022 走看看