Veloview阅读笔记2
2015-12-08 17:23
357 查看
Veloview阅读笔记2
源码组织结构
VeloView的源代码主要是VTK类和Qt类的混合。在源代码的文件中VTK类(具有前缀vtk)中不包含任何Qt的依赖。Qt类(具有前缀vv或者pq)依赖于VTK、Qt和ParaView的Qt库。在VeloView中,VTK类的核心被编译程一个插件库,名字叫做libVelodyneHDLPlugin,它可以被加载到ParaView中。VeloView app是用过C++ Qt类和Python代码实现的。Python代码主要功能主要在applogic.py中实现。ParaView插件
libVelodyneHDLPlugin库依赖于VTK, ParaView, Qt, PythonQt, Boost和 libpcap。通过使用ParaView 4.0,这个插件可以被加载到ParaView应用中。构建可以指定特定Boost库的静态版,所以该插件的依赖是libpcap和PythonQt库,这一点ParaView好。在Windows下,只要libpcap和PythonQt在同一目录下,这个插件便可被加载。在Mac下,你应该使用install_name_tool来解决这些依赖库的位置,它是相对与@loader_path(加载位置),然后只要将libpcap和PythonQt库文件相对放到libVelodyneHDLPlugin库中即可。
在ParaView中,Velodyne pcap阅读和Velodyne 网络源插件都在Sources菜单中被使能。the Velodyne pcap reader and Velodyne network source plugin are available in the Sources
menu.
VTK readers
VeloView和ParaView的插件VelodyneHDL包含了阅读器/来源。Velodyne pcap阅读器是在vtkVelodyneHDLReader.{cxx,h}中用C++来实现的。当读取pcap文件时,阅读器先扫描整个文件,寻找帧分割(当方位角从360溢出到0度)。该位置会被记录,以便于以后跳到对应帧来寻找相应数据。网络来源阅读器接受来自Velodyne传感器的UDP数据包。Velodyne传感器使用了Boost的asio库。网络来源在vtkVelodyneHDLSource.{cxx,h}.中被实现。源以生产者/消费者模型管理多个线程,并使用vtkVelodyneHDLReader的一个实例来将数据包转换为VTK点云数据。
VeloView应用程序
VeloView应用程序通过C++的Qt和Python来实现。PythonQt库用于Python来访问C++层。应用的主要逻辑在applogic.py实现。python代码在运行时,通过使用Qt的uitools库来加载使用者的接口(.ui files)。Qt编辑器可以用来编辑.ui文件。该VeloView应用程序可以使用Python和.UI文件进行扩展。
相关文章推荐
- Xcode设置项之Architectures和Valid Architectures
- poj 3122(二分查找)
- Java GC 概念摘要
- Http协议介绍
- 【Android自定义View 一】第一个自定义的控件
- 高斯模糊的算法
- 构建模式、视图控制器、项目说明(Xcode使用说明2)
- XStream使用总结
- C语言strcat()函数:连接字符串
- Standard C 语言标准函数库速查 (Cheat Sheet)
- React Native androd 错误`View` has no propType for native prop
- mysql登录方式
- OpenGL 基础第三方包配置
- 第15周项目2-用哈希法组织关键字
- pull解析器解析xml
- MTK平台如何定位显示花屏和界面错乱等绘制异常的问题?
- 为下拉列表框添加一个自定义验证规则
- swift实际使用中遇到的问题及解决(2)
- Android相机启动加速
- laravel无法正确路由,开启Apache mod_rewrite模块