Skip to content
This repository was archived by the owner on Feb 28, 2025. It is now read-only.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

交通规划原理期末项目

项目组人员

  • 小组人员:王森,刘治学,田景颢,刘杰
  • 指导老师:熊耀华

具体分工

  • 王森
    • 完成工具算法库AstarCurvaaGraphs的编写
    • 完成图形绘制和数据请求整合文件Gpp.py的编写
  • 刘治学
    • 完成PyQt5的界面编写,包括draw.pydraw.ui
    • 完成主程序入口main.py的编写
    • 完成项目整体架构的设计和代码的汇总,以及文档的编写
  • 田景颢
    • 完成data.json数据格式的设计和数据的生成
    • 完成get请求服务端的配置,能通过浏览器获取到数据的页面以及通过代码发送get请求获得数据
  • 刘杰
    • 完成颜色工具库hoverJson数据处理工具库JsonParser的编写
    • 完成演示视频的录制和剪辑

注意事项

  • 项目在Github上开源,地址:https://github.com/DavidingPlus/transportation-planning

  • 项目依赖python3环境,依赖PyQt5包,windows系统和Linux系统均兼容,本测试在windows上运行

    • 安装PyQT5:在终端使用如下命令

      pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyqt5 pyqt5-tools
  • 项目根目录中的项目文档是本README.mdpdf版本

  • 项目根目录中的演示视频是该项目的测试视频

代码分析

整体框架

  • 代码的框架如下:

    image-20231229204237018

res目录

  • res目录:存放交通网络结点和边的数据,是一个json文件

    image-20231229204758402

src目录

  • src目录:存放代码执行需要的依赖文件,类似于库或者包

    • Astar.py

      • Astars是一个用于进行路径计算的算法库,在该算法中,我们可以进行Astars作为算法的起始,我们选用曼哈顿距离作为启发函数
      image-20231229204443744
    • Curvva.py

      • Curvaa是一个用于进行路径计算、绘制的库,在该算法中,我们可以进行计算绘制,画出参数方程形式的路径
      image-20231229204817590
    • Gpp.py

      • Gpp.py是用来进行图形的基础绘制的文件,里面通过拿取data.json的数据,将数据转化为图展示出来,在其中还包括了发送get请求从远端服务器获得数据的操作
      image-20231229205120224
    • Graphs.py

      • Graphs是基于pltnetWorkX的简单的计算规划展示交通流的类
      • Graphs主要使用了Astar算法进行计算,并通过该算法得到所需的结果进一步获取
      image-20231229204853443
    • hover.py

      • 是一个颜色的工具库,最后的成品有三种不同的颜色主题进行展示,相关在这里进行定义
      image-20231229205228796
    • JsonPraser.py

      • JsonParser本项目的工具类,存放json解析的东西
      image-20231229204909300

ui目录

  • ui目录:存放成品展示的界面的python文件和ui文件

    • draw.py

      • 运用pythonQt库,在画出一个主界面加上三个按钮并且对应不同的事件
      image-20231229205538583
    • draw.ui

      • 界面的ui文件
      image-20231229205604683

主程序

  • main.py:程序的主入口,创建MainWindow对象,并且运行之后展示出来,然后进行后续发送get请求,并处理数据画图的逻辑

    image-20231229205752120

About

交通规划原理(transportation planning)的期末项目。

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages