Qt之基于Graphics View实现Mesh网络拓扑图

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

Mesh是一种多节点、无中心、自组织的无线多跳通信网络,也就是网状结构网络。网络中所有的节点都互相连接,每个节点拥有多条连接通道,所有的节点之间形成一个整体的网络。

一.效果


Mesh网络拓扑形态并不固定,完全依据各节点之间的信道质量自适应变化。这里演示了四个节点四个节点时的拓扑图,当然任意多个节点都是可以的。

 二.原理

1.Graphics View视图、场景、图形项的关系

Graphics View是一种基于图形项的模型/视图模式,并且每个图形元件是可选择、可拖放和修改的,由3个部分组成,场景、视图、图形项。这三者的关系如下图所示


①QGraphicsScene类提供绘图场景,场景是不可见的,是一个抽象的管理图形项的容器,可以向场景添加图形项
②QGraphicsView提供绘图的视图组件,用于显示场景中的内容,可以为一个场景设置几个视图
③QGraphicsItem类是图形项的基类,提供了一些基本的图形项,如绘制矩形QGraphicsRectItem、绘制文字QGraphicsTextItem等

2.Graphics View坐标系统

Graphics View系统有3个坐标系,图形项坐标、场景坐标、视图坐标,如下图所示

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6