赞
踩
对于ROS来说,如果不具备一定知识的人员来使用这些我们写的算法,如果说没有交互,这会让用户使用困难,所以我们需要使用GUI来完成友善的数据交互,传统的GUI方法一般有PYQT这类GUI方法,但是这类GUI工具上手门槛较高,也不太适合快速且敏捷的可视化界面开发。NiceGUI 是一个易于使用、基于Python的用户界面框架,它显示在Web浏览器里,可创建按钮,对话框,markdown,3D场景,绘图等。它非常适用于小型网页应用、仪表盘、机器人项目、智能家居解决方案和类似的场景。相关代码也已经全部在Github上开源了。
我们打开NICEGUI官网就可以看到NICEGUI支持一些写法了,具体支持
- 交互 - 按钮、滚动条、输入框 - 提醒、对话、菜单 - 键盘输入 - ... - 样式设计 - 自定义颜色主题 - 自定义CSS - 现代设计风格素材 - 内置Taiwind - 布局 - 导航栏、选项卡、面板、... - 用行、列和卡片分组 - HTML 和降价元素 - 默认Flex - 代码 - 实时 - 代码更改时隐式重新加载 - 直接的数据绑定 - 在 Python 内执行 javascript - 可视化 - 图表、图表和表格 - 3D场景 - 进度条 - 用于数据刷新的内置定时器 ...
对于nicegui来说安装很简单,即使用下面指令安装即可
python3 -m pip install nicegui
如果想要使用Docker,也可以使用multi-arch Docker image,在拉下docker后,就可以通过下面的指令运行含有NICEGUI的docker环境了
docker run --rm -p 8888:8080 -v $(pwd):/app/ -it zauberzeug/nicegui:latest
这将使用当前目录中的代码在http://localhost:8888上启动服务器。包含ui.run(port=8080,…)命令的文件必须命名为main.py。代码修改会触发自动重载。
NICEGUI中也有良好的API以供读者参考,我们可以在https://nicegui.io/reference中找到NICEGUI常用的API。代码简单易懂,很值得试一下
下面我们根据API可以完成最简单的与ros联合的代码,这里将/status
和/odometry
获取,并通过NICEGUI完成消息的显示整合以及发送
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。