0. 简介

对于ROS来说,如果不具备一定知识的人员来使用这些我们写的算法,如果说没有交互,这会让用户使用困难,所以我们需要使用GUI来完成友善的数据交互,传统的GUI方法一般有PYQT这类GUI方法,但是这类GUI工具上手门槛较高,也不太适合快速且敏捷的可视化界面开发。NiceGUI 是一个易于使用、基于Python的用户界面框架,它显示在Web浏览器里,可创建按钮,对话框,markdown,3D场景,绘图等。它非常适用于小型网页应用、仪表盘、机器人项目、智能家居解决方案和类似的场景。相关代码也已经全部在Github上开源了。

1. 具体功能

我们打开NICEGUI官网就可以看到NICEGUI支持一些写法了,具体支持

- 交互- 按钮、滚动条、输入框- 提醒、对话、菜单- 键盘输入- ...- 样式设计- 自定义颜色主题- 自定义CSS- 现代设计风格素材- 内置Taiwind- 布局- 导航栏、选项卡、面板、...- 用行、列和卡片分组- HTML 和降价元素- 默认Flex- 代码- 实时- 代码更改时隐式重新加载- 直接的数据绑定- 在 Python 内执行 javascript- 可视化- 图表、图表和表格- 3D场景- 进度条- 用于数据刷新的内置定时器
...

2. 环境安装

对于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。代码修改会触发自动重载。

3. 常见api以及在ROS中的使用

NICEGUI中也有良好的API以供读者参考,我们可以在https://nicegui.io/reference中找到NICEGUI常用的API。代码简单易懂,很值得试一下

下面我们根据API可以完成最简单的与ros联合的代码,这里将/status/odometry获取,并通过NICEGUI完成消息的显示整合以及发送

…详情请参照古月居

NICEGUI---ROS开发之中常用的GUI工具相关推荐

  1. iOS 开发设计常用软件及工具整理

    1, xCode 2, AppCode 3, Skech 原型设计软件 4, Hype 动画设计工具 5, fontawsome 免费图表 6, Prepo icon, images.catlog 生 ...

  2. iOS开发中常用的那些工具

    工欲善其事,必先利其器. 列表 XCode 无须多说 Instruments 性能分析工具:卡顿,内存,网络,数据存储等等 xcodebuild and xcrun 命令行工具用来脚本打包和测试 sy ...

  3. NO.4 Android开发中常用框架及工具

    android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新ListView.ViewPager.WevView.ExpandableListView.GridView ...

  4. java中将数字颠倒的工具类,java开发中常用的数字工具类

    import java.math.BigDecimal; import org.apache.commons.lang.RandomStringUtils; public class NumberUt ...

  5. 分享一个ubuntu14.04和16.04下的用于ROS开发的IDE开发工具吧

    官网已经打不开了,可以来我这下载https://download.csdn.net/download/qq_23670601/11610974,有deb安装包和使用手册,CSDN没办法设置0积分资源, ...

  6. ROS开发之如何使用常用可视化工具?

    文章目录 0.引言 1.rqt工具 2.RViz工具 3.Gazebo工具 0.引言   笔者因研究课题涉及ROS开发,学习了古月居出品的ROS入门21讲,为巩固可视化工具的知识,本文将ROS的常用可 ...

  7. java开发之图形界面GUI初步-Swing几种常用组件及其应用

    package test; import java.awt.*; import java.awt.event.KeyEvent; import javax.swing.*; /* * 作者:钟志钢 * ...

  8. [转]cocos2d游戏开发,常用工具集合

    cocos2d游戏开发,常用工具集合 原文地址:http://www.cocoachina.com/bbs/read.php?tid-68951.html 位图字体工具Bitmap Font Tool ...

  9. Python开发GUI工具介绍,实战:将图片转化为素描画!

    欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...

最新文章

  1. 2021年大数据常用语言Scala(二十八):scala面向对象 MAVEN依赖和类
  2. bool类型返回值_Python 到底是强类型语言,还是弱类型语言?
  3. Unicode与UTF-8互转(C语言实现)
  4. android- 9patch
  5. 如何使用ROS查找rgbdslam代码包框架的输入
  6. springmvc学习笔记(19)-RESTful支持
  7. SAP UI5应用点了search按钮后的实现调试
  8. 案例:使用BeautifuSoup4的爬虫
  9. CentOS英文版下安装中文语言包
  10. 用三国杀讲分布式算法,太舒适了吧?
  11. GCC O1 O2 O3
  12. 我亦云云——也谈云计算(3)
  13. Python基础篇:Python的数据结构
  14. LayUI树形表格treetable使用详解
  15. Linux fstab文件详解
  16. C# 获取鼠标屏幕坐标有误差,鼠标定位误差问题,Windows10 C#获取鼠标坐标不准 的解决方法
  17. 从企业版BOSS直聘,看求职简历技巧
  18. 使用虚拟鼠标驱动解决Surface go以及寨板win10 win11 win8平台 甚至win arm手机 在运行某些GalGame 当不插入鼠标或者连接蓝牙鼠标时候出现的错误
  19. 网页三维地图技术初探
  20. # 免费短信测试服务-容联云使用

热门文章

  1. Python学习手札01——二分法求值问题
  2. 计算机专业哪门课程最难,@大学生,最难的大学课程是哪一门?
  3. 1024程序员节,让996见鬼去吧!
  4. 垂直同步、绘制效率、显示器刷新频率与帧率(转)
  5. python脚本之将mysql数据转发给第三方udp网络端口
  6. 酷狗音乐鸿蒙os,酷狗音乐鸿蒙OS
  7. 芒果数据库 四天学习笔记分享
  8. 美语音标 连音的念法
  9. Notes: 赖世雄-美语音标
  10. 1. Matplotlib简介,画余弦和正弦函数图像